Strange mismatch of pid and radio program

Vangelis forthnet northmedia1 at the.forthnet.gr
Mon Dec 16 22:01:56 EST 2013


On Mon Dec 16 16:08:04 GMT 2013, general wrote:

>the program (Composer of the week) can be streamed correctly in web
>browser
>http://www.bbc.co.uk/programmes/b03kp831
>but when I use the pid "b03kp831" to download, get_iplayer
>always downloads the next program of that day (Radio 3 Live Concert)
>....
>Any help please?

Hello general,
the (new) iPlayerRadio page

http://www.bbc.co.uk/programmes/b03kp831

uses what is known as "mediaselector5" parser to fetch
the rtmp audio streams for your radio show (which I believe is
"Composer of the Week - Iceland - 2. The Geyser Erupts") and
does so correctly - for pid=b03kp831, the playlist URL

http://www.bbc.co.uk/iplayer/playlist/b03kp831

yields:
item kind="radioProgramme" duration="3600" identifier="b03kp7xl"

b03kp7xl is the (mediator) identifier, also known as vPID.
The "mediaselector5" parser produces different results depending
on the originating IP address, e.g. for my Greek IP

http://open.live.bbc.co.uk/mediaselector/5/select/version/2.0/mediaset/pc/vpid/b03kp7xl

gives me the following rtmp stream details:

<media bitrate="48" encoding="aac" expires="2013-12-17T13:02:00+00:00" 
kind="audio" service="iplayer_intl_stream_aac_rtmp_concrete" 
type="audio/mp4"><connection application="a5999/e1" 
authExpires="2013-12-17T02:29:22+00:00" authExpiresOffset="5841" 
authString="as=adobe-hmac-sha256&av=1&te=connect&mp=radio3/secure_auth/international/RBN2_radio_3_-_tuesday_1200_b03kp7xl_2013_12_15_10_41_50.mp4&et=1387248721&fmta-token=539b24fe1ce3b715a52114ba0b767576fbc1199be0d3d0b666c9ece04a9066e1" 
identifier="mp4:radio3/secure_auth/international/RBN2_radio_3_-_tuesday_1200_b03kp7xl_2013_12_15_10_41_50.mp4" 
priority="9" protocol="rtmp" server="bbcodspdns.fcod.llnwd.net" 
supplier="limelight"/>

Notice that the playpath (filename) 
"RBN2_radio_3_-_tuesday_1200_b03kp7xl_2013_12_15_10_41_50.mp4" points to the 
correct 1h show.

On the other hand, the (old) iplayer page

http://www.bbc.co.uk/iplayer/episode/b03kp831/Composer_of_the_Week_Iceland_The_Geyser_Erupts/

uses the old "mediaselector4" parser to fetch the audio stream inside
the Flash Player in your browser, but in this case there appears to be a
mismatch, as you rightly call it, and in turn streams the wrong audio file;

for the same vPID=b03kp7xl (and for my non-UK IP),

http://www.bbc.co.uk/mediaselector/4/mtis/stream/b03kp7xl

produces the following rtmp stream details:

<media bitrate="48" encoding="aac" expires="2013-12-17T19:32:00+00:00" 
kind="audio" service="iplayer_intl_stream_aac_rtmp_concrete" 
type="audio/mp4"><connection application="a5999/e1" 
authExpires="2013-12-17T02:47:06+00:00" 
authString="as=adobe-hmac-sha256&av=1&te=connect&mp=radio3/secure_auth/international/RBN2_radio_3_-_tuesday_1830_b03kp7xl_2013_12_11_10_50_20.mp4&et=1387249561&fmta-token=61a1c09ba8f7a5ac97cac8bbac03f94e5ac950d85d709aa7debd52b49806e6a3" 
identifier="mp4:radio3/secure_auth/international/RBN2_radio_3_-_tuesday_1830_b03kp7xl_2013_12_11_10_50_20.mp4" 
kind="limelight" priority="9" protocol="rtmp" 
server="bbcodspdns.fcod.llnwd.net" supplier="limelight"/>

The playpath (filename) 
"RBN2_radio_3_-_tuesday_1830_b03kp7xl_2013_12_11_10_50_20.mp4" here points 
to a different recording, which is 2h29min long!

Unfortunately for you, get_iplayer in its guts uses the same 
"mediaselector4" URL to accomplish the downloads,
so without even trying it myself, I can tell that for pid=b03kp831 you'll 
end up with the 150min show you are not after!
Your predicament is in fact akin to the problem reported back in Aug 2013 by 
Mable Syrup
and solved by me in this reply:

http://lists.infradead.org/pipermail/get_iplayer/2013-August/004901.html

So far, I have presented you with the long/tech-ish explanation why you are 
facing this issue,
caused - once again - by a glitch on the beeb's side...
As for the remedy, it really depends on your set-up (OS) and your level of 
expertise...,
both of which you have not indicated... you may find the answers inside my 
linked reply
just above, but sadly time is not on your side; the show is due to expire 
today (Tue, 17 Dec 2013)
at 19:30 GMT.
 If on Windows, you can use one of the (mostly) payware GUI RTMP downloaders 
to download
it (as an .flv file) from the working new iPlayerRadio page

http://www.bbc.co.uk/programmes/b03kp831

Unfortunately, the Java based FRD (=free)

http://wordrider.net/freerapid/

also downloads the wrong file...

You can still try a nice free tool called rtmpdumphelper

http://www.nirsoft.net/utils/rtmp_dump_helper.html

which is based on rtmpsrv/rtmpdump to grab the file,
or just use simply rtmpdump on its own, if you have the
skills to conjure up a working rtmpdump command for a
limelight CDN from the details generated by the ms5 URL
posted earlier in this reply (if in the UK, choose the
higher quality data under media bitrate="128" encoding="aac";
this in fact is 320kbps for Radio 3 shows...). I could post a
working command, but the timestamp (et=) & auth token
(fmta-token=) are good to go for an hour or so, perhaps a bit more...
I would also need to find a working UK proxy, too...

If you are comfortable with a code editor, you can temporarily
patch your local copy of the get_iplayer script to use the ms5
URL just for this specific problematic radio show, details are
within my Aug 2013 reply. IF YOU ARE TO GO DOWN THIS ROUTE,
BACK UP PRIOR TO ANY MODIFICATION AND RESTORE
AFTERWARDS! - I have found out that the ms5 URL messes up
TV downloads but I was unable to further investigate, as I am
perl illiterate :-(

I have briefly run the UK VPN just to test this, and it seems that
running

get_iplayer --type=radio -i --pid=b03kp831 --modes=flashaac --force --tag-podcast-radio

(from a UK IP) with a ms5 patched script begins to download the correct 
file:

INFO: 1 Matching Programmes
INFO: Checking existence of default version
INFO: flashaacstd1,flashaaclow1 modes will be tried for version default
INFO: Trying flashaacstd1 mode to record radio: Composer of the Week - 
Iceland:
2. The Geyser Erupts
INFO: File name prefix = 
Composer_of_the_Week_-_Iceland_2._The_Geyser_Erupts_b03
kp831_default
RTMPDump v2.4-81-g2872601
(c) 2010 Andrej Stepanchuk, Howard Chu, The Flvstreamer Team; license: GPL
Connecting ...
INFO: Connected...
Starting download at: 0.000 kB
INFO: Metadata:
INFO:   duration              3540.55
INFO:   moovPosition          36.00
INFO:   audiocodecid          mp4a
INFO:   aacaot                2.00
INFO:   audiosamplerate       44100.00
INFO:   audiochannels         2.00
INFO: tags:
INFO:   ┬σalb                 Composer of the Week - Iceland
INFO:   aART                  BBC Radio 3
INFO:   ┬σART                 BBC Radio 3
INFO:   ┬σcmt                 Donald Macleod hears the 'original' geyser in 
Icel
and and introduces works by Jon Leifs.
INFO:   cprt                  British Broadcasting Corporation Copyright 
2013, a
ll rights reserved.
INFO:   ┬σgen                 Podcast
INFO:   ┬σnam                 Composer of the Week - Iceland 10 12 2013
INFO:   ┬σday                 2013
INFO: trackinfo:
INFO:   length                156138496.00
INFO:   timescale             44100.00
INFO:   language              und
INFO: sampledescription:
INFO:   sampletype            mp4a

Hope you get it in time...

Regards,
Vangelis. 




More information about the get_iplayer mailing list