[Re: Mp3 from Radio]

Andy Bircumshaw andy at networkned.co.uk
Tue Jan 4 12:16:52 EST 2011


On 4/1/2011, at 2:41pm, Steve Anderson wrote:
> On 4 January 2011 13:53, David Woodhouse <dwmw2 at infradead.org> wrote:
> 
>> There are plenty of tools out there which will convert files from one
>> format to another, transcode them to DVD-compatible MPEG format, let you
>> add your own subtitles, or do whatever else you can think of.
>> 
>> I believe that get_iplayer should do *one* thing, and do it well.
> 
> At one point I would have disagreed with you; however since joining my
> current employer and seeing some of the awful Swiss Army Knife code
> that my predecessors have created to attempt to do everything (and,
> like a Swiss Army Knife, every tool is inferior to a proper single-use
> tool), I'd now agree wholeheartedly. Having been through the code for
> get_iplayer myself to hack in rtmpdump support back when it wasn't
> present, I know it's already on the verge of trying to do too much.
> 
> Given that there's already ffmpeg et al being used, I'd be more in
> favour of a companion script that works with the files downloaded;
> maybe scanning the downloads directory when invoked and transcoding
> the files that match criteria.

I really value get_iplayer's remuxing. AIUI .flv is a container designed for streaming (??), and if it contains h264, AAC &/or MP3, then this is much better remuxed into an .mp4 or .mp3 container. It seems like these containers are much more widely understood by general players, and they also seem a little smaller, too. I don't really have anything against .mkv.

I kinda imagine some kind of "suite" which is maintained together, perhaps 3 or 4 complementary scripts. However a problem with this would seems to be tagging, which get_iplayer seems to do quite well. Do any of us want to be double-clicking on a .flv file on our living-room media players? If not then it's preferable to provide the remuxing or transcoding (yeuch!) script with appropriate info tags and thumbnail photo.

I wrote the "--email" functionality for exactly this reason. I didn't originally intend to add to get_iplayer - I intended only a dumb wrapper script to extract information about new programs and which could be piped to sendmail - but I was unable to extract the information I needed using `get_iplayer --listformat`.

I suspect that a deal of get_iplayer's complexity and fragility is related to its evolution. It was (surely) originally a relatively simple script of Phil's that he just kept adding features to. get_iplayer was surely never intended to be maintained by anyone else, nor to encompass so many functions.

I agree that get_iplayer has too many command-line options and that things could be simplified. But I kinda feel that, if we were starting again from scratch, as we may well have to do come Project Canvas / YouView [1], the replacement could encompass a reasonable subset of get_iplayer's features in a much more maintainable package. We now have some advantage  on Phil - we know all the features we (as a wide cross-section of users) want, and we can plan for them from the start.

I guess what worries me about minimal single-use tools is that my end-user experience may degrade to the point where I'm having to enter huge long command-lines and maintain half a dozen annoying little wrapper scripts. That get_iplayer remembers what programmes it's downloaded is *hugely* useful, for instance, as are "--prefs-add" / "--prefs-show".

In short: if we're going to migrate to `mondeo` which does nothing but download BBC programmes by PID, can we also collaboratively share and maintain `mondeo_schedule` and `mondeo_search` please? And can we do so with a shared goal and philosophy in mind - which of the three programmes stores and caches URLs and programme names? Please don't let us have 4 different .mondeo* preferences sub-directories littering ~/ (or even worse, confusingly and differently-named options and cache directories, such as ~/.bbc_search, ~/.tv_schedule, ~/.modeo_prefs and ~/.iplayer_cache).

> I should also mention at this point
> that I have absolutely no spare time to develop this - it's just an
> idea!

Unfortunately I imagine we're all in the same boat. If only get_iplayer were a paying job, I'm sure we'd all be all over it.

aB. 


[1] http://en.wikipedia.org/wiki/YouView




More information about the get_iplayer mailing list