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