Annoying download problem

Andy Bircumshaw andy at networkned.co.uk
Fri Jan 7 12:19:22 EST 2011


On 7/1/2011, at 10:51am, Robin Bowes wrote:
> ...
> I'm trying to grab Jools Holland's Hottenany in HD. So, I do this:
> 
> $ get_iplayer --modes flashhd --get hooten
> get_iplayer v2.78, Copyright (C) 2008-2010 Phil Lewis
>  This program comes with ABSOLUTELY NO WARRANTY; for details use
> --warranty.
>  This is free software, and you are welcome to redistribute it under
> certain
>  conditions; use --conditions for details.
> 
> Matches:
> 346:	Jools' Annual Hootenanny - 2010, BBC Two, Classic Pop &
> Rock,HD,Music,Rock & Indie,TV, default,
> ...
> 
> Now, this seems to download just fine for quite a while, then it will
> suddenly hang.

This happens sometimes.

> If I then refresh the catalogue I see that the program ID
> has changed, ie. it is not 346 any more.

346 is *not* the program ID ("PID").

The PID may be found with `get_iplayer --info` ("-i" for short). EG:

$ get_iplayer hoot -i | grep pid:
pid:            b00wvjdq
$

You can then download the show using "--pid" if you want to, but you usually don't. Use of "--pid" implies "--get" - i.e. combining `get_iplayer --info --pid b00wvjdq` will cause the programme to download, rather than just provide the full information. Phil once indicated to me this was his intended behaviour, but to me it's a bug.

Anyway, this a clupea rubra - the "Matches: " number you're referring to (346 in this case) might best be termed the "local index number", and it's prone to change any time the BBC add a programme to iPlayer (and you refresh get_iplayer's cache). This local index number won't change halfway through a download, but it wouldn't affect the download even if it did (I guess some exceptions may apply to this statement, but if you encounter them then you're probably "using get_iplayer wrong").

FWIW the PID is properly unique; I don't think it should ever be repeated or reused. If you google a PID you'll almost always find the show to be the top hit (often with no others, or few).

> So, I restart the download using the same command as above. The first
> time this happens it will usually resume OK and continues the download.
> 
> Then it hangs again and will not restart when I try. I just get loads of
> these msgs:
> 
> WARNING: Stream does not start with requested frame, ignoring data...
> WARNING: Stream does not start with requested frame, ignoring data...
> [snip]
> WARNING: Stream does not start with requested FLV frame, ignoring data...
> WARNING: Stream does not start with requested FLV frame, ignoring data...
> [snip]
> 
> Any idea what's going wrong here?

I have no idea whether or not resuming is supposed to be supported or not. `rm -i *partial*` (or just rename it) and try again. Very occasionally I will find a programme to be "stubborn" and require 4 attempts or so; most times if you just delete the *partial* and retry it'll work fine first time.

aB.




More information about the get_iplayer mailing list