Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Hit and miss downloads from BBC iPlayer #4953

Closed
sirmarky opened this issue Feb 15, 2015 · 5 comments
Closed

Hit and miss downloads from BBC iPlayer #4953

sirmarky opened this issue Feb 15, 2015 · 5 comments
Labels

Comments

@sirmarky
Copy link

@sirmarky sirmarky commented Feb 15, 2015

This has been working for me since December, however in the past few days I have no longer been able to download programmes. Some download fine, some start and then crash out or do not start at all.

For example,

youtube-dl http://www.bbc.co.uk/iplayer/episode/b04fmg8j/bright-lights-brilliant-minds-a-tale-of-three-cities-2-paris-1928
[bbc.co.uk] b04fmg8j: Downloading video page
[bbc.co.uk] b04fmg8j: Downloading JSON metadata
[bbc.co.uk] b052h6gq: Downloading media selection XML
[bbc.co.uk] b052h6gq: Downloading captions
[download] Destination: Bright Lights, Brilliant Minds - A Tale of Three Cities-b052h6gq.flv
[rtmpdump] 0 bytes

ERROR: rtmpdump exited with code 1

or

youtube-dl http://www.bbc.co.uk/programmes/b04fmg8j
[bbc.co.uk] b04fmg8j: Downloading video page
[bbc.co.uk] b04fmg8j: Downloading playlist JSON
[bbc.co.uk] b052nb73: Downloading media selection XML
[bbc.co.uk] b052nb73: Downloading captions
[download] Destination: Bright Lights, Brilliant Minds - A Tale of Three Cities, Paris 1928-b052nb73.flv
[download] 2.3% of ~1.31GiB at 2.00MiB/s ETA 10:44
[rtmpdump] 32342290 bytes
[download] 2.3% of ~1.31GiB at 1.09MiB/s ETA 11:03
[rtmpdump] Could not download the whole video. This can happen for some advertisements.
[rtmpdump] 32342290 bytes

@dstftw
Copy link
Collaborator

@dstftw dstftw commented Feb 15, 2015

Post the full output you get when running with --verbose option.

@sirmarky
Copy link
Author

@sirmarky sirmarky commented Feb 15, 2015

youtube-dl --verbose http://www.bbc.co.uk/programmes/b04fmg8j
[debug] System config: []
[debug] User config: []
[debug] Command-line args: ['--verbose', 'http://www.bbc.co.uk/programmes/b04fmg8j']
[debug] Encodings: locale UTF-8, fs UTF-8, out UTF-8, pref UTF-8
[debug] youtube-dl version 2015.02.11
[debug] Python version 2.7.8 - Linux-3.16.0-30-generic-x86_64-with-Ubuntu-14.10-utopic
[debug] exe versions: avconv 11-6, avprobe 11-6, rtmpdump 2.4
[debug] Proxy map: {}
[bbc.co.uk] b04fmg8j: Downloading video page
[bbc.co.uk] b04fmg8j: Downloading playlist JSON
[bbc.co.uk] b052nb73: Downloading media selection XML
[bbc.co.uk] b052nb73: Downloading captions
[debug] Invoking downloader on u'rtmp://iplayertokfs.fplive.net/iplayertok?token=c3RhcnRfdGltZT0yMDE1MDIxNTA5MzAzOCZlbmRfdGltZT0yMDE1MDIxNTEzMzAzOCZkaWdlc3Q9YTBkOGNmZWE0ZWY2ZjIyMTkwMDNjN2VlN2E3NTcwYWE='
[download] Destination: Bright Lights, Brilliant Minds - A Tale of Three Cities, Paris 1928-b052nb73.flv
[debug] rtmpdump command line: rtmpdump --verbose -r 'rtmp://iplayertokfs.fplive.net/iplayertok?token=c3RhcnRfdGltZT0yMDE1MDIxNTA5MzAzOCZlbmRfdGltZT0yMDE1MDIxNTEzMzAzOCZkaWdlc3Q9YTBkOGNmZWE0ZWY2ZjIyMTkwMDNjN2VlN2E3NTcwYWE=' -o 'Bright Lights, Brilliant Minds - A Tale of Three Cities, Paris 1928-b052nb73.flv.part' --swfVfy http://www.bbc.co.uk/emp/releases/iplayer/revisions/617463_618125_4/617463_618125_4_emp.swf --pageUrl http://www.bbc.co.uk --app 'iplayertok?token=c3RhcnRfdGltZT0yMDE1MDIxNTA5MzAzOCZlbmRfdGltZT0yMDE1MDIxNTEzMzAzOCZkaWdlc3Q9YTBkOGNmZWE0ZWY2ZjIyMTkwMDNjN2VlN2E3NTcwYWE=' --playpath mp4:3200kbps/modav/bUnknown-37bd5dec-0625-42d2-bdfa-e5e300ab3a2f_b052nb73_1422629271915
[rtmpdump] RTMPDump v2.4
rtmpdump 2010 Andrej Stepanchuk, Howard Chu, The Flvstreamer Team; license: GPL
[rtmpdump] DEBUG: Parsing...
[rtmpdump] DEBUG: Parsed protocol: 0
[rtmpdump] DEBUG: Parsed host : iplayertokfs.fplive.net
[rtmpdump] DEBUG: Parsed app : iplayertok?token=c3RhcnRfdGltZT0yMDE1MDIxNTA5MzAzOCZlbmRfdGltZT0yMDE1MDIxNTEzMzAzOCZkaWdlc3Q9YTBkOGNmZWE0ZWY2ZjIyMTkwMDNjN2VlN2E3NTcwYWE=
[rtmpdump] DEBUG: Protocol : RTMP
[rtmpdump] DEBUG: Hostname : iplayertokfs.fplive.net
[rtmpdump] DEBUG: Port : 1935
[rtmpdump] DEBUG: Playpath : mp4:3200kbps/modav/bUnknown-37bd5dec-0625-42d2-bdfa-e5e300ab3a2f_b052nb73_1422629271915
[rtmpdump] DEBUG: tcUrl : rtmp://iplayertokfs.fplive.net:1935/iplayertok?token=c3RhcnRfdGltZT0yMDE1MDIxNTA5MzAzOCZlbmRfdGltZT0yMDE1MDIxNTEzMzAzOCZkaWdlc3Q9YTBkOGNmZWE0ZWY2ZjIyMTkwMDNjN2VlN2E3NTcwYWE=
[rtmpdump] DEBUG: swfUrl : http://www.bbc.co.uk/emp/releases/iplayer/revisions/617463_618125_4/617463_618125_4_emp.swf
[rtmpdump] DEBUG: pageUrl : http://www.bbc.co.uk
[rtmpdump] DEBUG: app : iplayertok?token=c3RhcnRfdGltZT0yMDE1MDIxNTA5MzAzOCZlbmRfdGltZT0yMDE1MDIxNTEzMzAzOCZkaWdlc3Q9YTBkOGNmZWE0ZWY2ZjIyMTkwMDNjN2VlN2E3NTcwYWE=
[rtmpdump] DEBUG: live : no
[rtmpdump] DEBUG: timeout : 30 sec
[rtmpdump] DEBUG: SWFSHA256:
[rtmpdump] DEBUG: b6 74 7f 89 f9 ec 6a 60 c1 a4 b5 8b b1 18 b0 fa
[rtmpdump] DEBUG: 65 18 86 24 c2 8a 1a a3 2f 72 0f 0b 80 59 dd 7f
[rtmpdump] DEBUG: SWFSize : 595316
[rtmpdump] DEBUG: Setting buffer time to: 36000000ms
[rtmpdump] Connecting ...
[rtmpdump] DEBUG: RTMP_Connect1, ... connected, handshaking
[rtmpdump] DEBUG: HandShake: Client type: 03
[rtmpdump] DEBUG: HandShake: Client digest offset: 430
[rtmpdump] DEBUG: HandShake: Initial client digest:
[rtmpdump] DEBUG: c7 77 8e 9e ae 7d 1e 64 43 83 fc f5 8d 5d 82 cb
[rtmpdump] DEBUG: 19 d3 ab d6 45 97 00 85 76 a1 61 4b 15 ca 3a 2c
[rtmpdump] DEBUG: HandShake: Type Answer : 03
[rtmpdump] DEBUG: HandShake: Server Uptime : 1135319953
[rtmpdump] DEBUG: HandShake: FMS Version : 4.5.3.1
[rtmpdump] DEBUG: HandShake: Calculated digest key from secure key and server digest:
[rtmpdump] DEBUG: c1 d3 e1 68 bd 90 91 c4 62 9f 8d 28 2c a0 a3 44
[rtmpdump] DEBUG: b6 e6 1f 8b 89 92 66 fc a2 5a 70 ec 2c ed c5 4f
[rtmpdump] DEBUG: HandShake: Client signature calculated:
[rtmpdump] DEBUG: 0f 89 ac 5c fc b8 6b 62 9c 67 61 50 48 bc 60 92
[rtmpdump] DEBUG: 1c 9e d0 9a 8e ad 67 5e d9 25 a5 83 d4 e2 31 7d
[rtmpdump] DEBUG: HandShake: Server sent signature:
[rtmpdump] DEBUG: bb c9 52 ed d1 94 4b 55 4c 16 0a 9a 9f 7b 65 09
[rtmpdump] DEBUG: 73 ac 38 69 07 0f a0 3e 16 40 57 ee 77 3b d5 14
[rtmpdump] DEBUG: HandShake: Digest key:
[rtmpdump] DEBUG: f8 a1 bc 8a 2a 10 e4 9a 51 86 11 60 13 ec 68 d8
[rtmpdump] DEBUG: d4 7f 75 54 6b 90 3d 3a f0 30 ed b0 17 e0 4c 31
[rtmpdump] DEBUG: HandShake: Signature calculated:
[rtmpdump] DEBUG: bb c9 52 ed d1 94 4b 55 4c 16 0a 9a 9f 7b 65 09
[rtmpdump] DEBUG: 73 ac 38 69 07 0f a0 3e 16 40 57 ee 77 3b d5 14
[rtmpdump] DEBUG: HandShake: Genuine Adobe Flash Media Server
[rtmpdump] DEBUG: HandShake: Handshaking finished....
[rtmpdump] DEBUG: RTMP_Connect1, handshaked
[rtmpdump] DEBUG: Invoking connect
[rtmpdump] INFO: Connected...
[rtmpdump] DEBUG: HandleServerBW: server BW = 2500000
[rtmpdump] DEBUG: HandleClientBW: client BW = 2500000 2
[rtmpdump] DEBUG: HandleChangeChunkSize, received: chunk size change to 16384
[rtmpdump] DEBUG: RTMP_ClientPacket, received: invoke 240 bytes
[rtmpdump] DEBUG: (object begin)
[rtmpdump] DEBUG: (object begin)
[rtmpdump] DEBUG: Property: <Name: fmsVer, STRING: FMS/4,5,3,101>
[rtmpdump] DEBUG: Property: <Name: capabilities, NUMBER: 255.00>
[rtmpdump] DEBUG: Property: <Name: mode, NUMBER: 1.00>
[rtmpdump] DEBUG: (object end)
[rtmpdump] DEBUG: (object begin)
[rtmpdump] DEBUG: Property: <Name: level, STRING: status>
[rtmpdump] DEBUG: Property: <Name: code, STRING: NetConnection.Connect.Success>
[rtmpdump] DEBUG: Property: <Name: description, STRING: Connection succeeded.>
[rtmpdump] DEBUG: Property: <Name: objectEncoding, NUMBER: 0.00>
[rtmpdump] DEBUG: Property: <Name: data, ECMA_ARRAY>
[rtmpdump] DEBUG: (object begin)
[rtmpdump] DEBUG: Property: <Name: version, STRING: 4,5,3,101>
[rtmpdump] DEBUG: (object end)
[rtmpdump] DEBUG: (object end)
[rtmpdump] DEBUG: (object end)
[rtmpdump] DEBUG: HandleInvoke, server invoking <_result>
[rtmpdump] DEBUG: HandleInvoke, received result for method call
[rtmpdump] DEBUG: sending ctrl. type: 0x0003
[rtmpdump] DEBUG: Invoking createStream
[rtmpdump] DEBUG: RTMP_ClientPacket, received: invoke 21 bytes
[rtmpdump] DEBUG: (object begin)
[rtmpdump] DEBUG: Property: NULL
[rtmpdump] DEBUG: (object end)
[rtmpdump] DEBUG: HandleInvoke, server invoking
[rtmpdump] DEBUG: Invoking _checkbw
[rtmpdump] DEBUG: RTMP_ClientPacket, received: invoke 29 bytes
[rtmpdump] DEBUG: (object begin)
[rtmpdump] DEBUG: Property: NULL
[rtmpdump] DEBUG: (object end)
[rtmpdump] DEBUG: HandleInvoke, server invoking <_result>
[rtmpdump] DEBUG: HandleInvoke, received result for method call
[rtmpdump] DEBUG: SendPlay, seekTime=0, stopTime=0, sending play: mp4:3200kbps/modav/bUnknown-37bd5dec-0625-42d2-bdfa-e5e300ab3a2f_b052nb73_1422629271915
[rtmpdump] DEBUG: Invoking play
[rtmpdump] DEBUG: sending ctrl. type: 0x0003
[rtmpdump] DEBUG: RTMP_ClientPacket, received: invoke 16419 bytes
[rtmpdump] DEBUG: (object begin)
[rtmpdump] DEBUG: Property: NULL
[rtmpdump] DEBUG: (object end)
[rtmpdump] DEBUG: HandleInvoke, server invoking <_onbwcheck>
[rtmpdump] DEBUG: Invoking _result
[rtmpdump] DEBUG: HandleChangeChunkSize, received: chunk size change to 16384
[rtmpdump] DEBUG: RTMP_ClientPacket, received: invoke 121 bytes
[rtmpdump] DEBUG: (object begin)
[rtmpdump] DEBUG: Property: NULL
[rtmpdump] DEBUG: (object begin)
[rtmpdump] DEBUG: Property: <Name: level, STRING: error>
[rtmpdump] DEBUG: Property: <Name: code, STRING: NetStream.Failed>
[rtmpdump] DEBUG: Property: <Name: description, STRING: 206 Partial Content>
[rtmpdump] DEBUG: Property: <Name: clientid, STRING: pAATELFA>
[rtmpdump] DEBUG: (object end)
[rtmpdump] DEBUG: (object end)
[rtmpdump] DEBUG: HandleInvoke, server invoking
[rtmpdump] DEBUG: HandleInvoke, onStatus: NetStream.Failed
[rtmpdump] ERROR: Closing connection: NetStream.Failed
[rtmpdump] DEBUG: Closing connection.
[rtmpdump] 0 bytes
[rtmpdump] RTMPDump v2.4
rtmpdump 2010 Andrej Stepanchuk, Howard Chu, The Flvstreamer Team; license: GPL
[rtmpdump] DEBUG: Parsing...
[rtmpdump] DEBUG: Parsed protocol: 0
[rtmpdump] DEBUG: Parsed host : iplayertokfs.fplive.net
[rtmpdump] DEBUG: Parsed app : iplayertok?token=c3RhcnRfdGltZT0yMDE1MDIxNTA5MzAzOCZlbmRfdGltZT0yMDE1MDIxNTEzMzAzOCZkaWdlc3Q9YTBkOGNmZWE0ZWY2ZjIyMTkwMDNjN2VlN2E3NTcwYWE=
[rtmpdump] DEBUG: Number of skipped key frames for resume: 1
[rtmpdump] DEBUG: Protocol : RTMP
[rtmpdump] DEBUG: Hostname : iplayertokfs.fplive.net
[rtmpdump] DEBUG: Port : 1935
[rtmpdump] DEBUG: Playpath : mp4:3200kbps/modav/bUnknown-37bd5dec-0625-42d2-bdfa-e5e300ab3a2f_b052nb73_1422629271915
[rtmpdump] DEBUG: tcUrl : rtmp://iplayertokfs.fplive.net:1935/iplayertok?token=c3RhcnRfdGltZT0yMDE1MDIxNTA5MzAzOCZlbmRfdGltZT0yMDE1MDIxNTEzMzAzOCZkaWdlc3Q9YTBkOGNmZWE0ZWY2ZjIyMTkwMDNjN2VlN2E3NTcwYWE=
[rtmpdump] DEBUG: swfUrl : http://www.bbc.co.uk/emp/releases/iplayer/revisions/617463_618125_4/617463_618125_4_emp.swf
[rtmpdump] DEBUG: pageUrl : http://www.bbc.co.uk
[rtmpdump] DEBUG: app : iplayertok?token=c3RhcnRfdGltZT0yMDE1MDIxNTA5MzAzOCZlbmRfdGltZT0yMDE1MDIxNTEzMzAzOCZkaWdlc3Q9YTBkOGNmZWE0ZWY2ZjIyMTkwMDNjN2VlN2E3NTcwYWE=
[rtmpdump] DEBUG: live : no
[rtmpdump] DEBUG: timeout : 30 sec
[rtmpdump] DEBUG: SWFSHA256:
[rtmpdump] DEBUG: b6 74 7f 89 f9 ec 6a 60 c1 a4 b5 8b b1 18 b0 fa
[rtmpdump] DEBUG: 65 18 86 24 c2 8a 1a a3 2f 72 0f 0b 80 59 dd 7f
[rtmpdump] DEBUG: SWFSize : 595316
[rtmpdump] DEBUG: Failed to get last keyframe.
[rtmpdump] DEBUG: Closing connection.

ERROR: rtmpdump exited with code 1
File "/usr/bin/youtube-dl", line 6, in
youtube_dl.main()
File "/usr/lib/python2.7/dist-packages/youtube_dl/init.py", line 388, in main
_real_main(argv)
File "/usr/lib/python2.7/dist-packages/youtube_dl/init.py", line 378, in _real_main
retcode = ydl.download(all_urls)
File "/usr/lib/python2.7/dist-packages/youtube_dl/YoutubeDL.py", line 1387, in download
res = self.extract_info(url)
File "/usr/lib/python2.7/dist-packages/youtube_dl/YoutubeDL.py", line 644, in extract_info
return self.process_ie_result(ie_result, download, extra_info)
File "/usr/lib/python2.7/dist-packages/youtube_dl/YoutubeDL.py", line 690, in process_ie_result
return self.process_video_result(ie_result, download=download)
File "/usr/lib/python2.7/dist-packages/youtube_dl/YoutubeDL.py", line 1145, in process_video_result
self.process_info(new_info)
File "/usr/lib/python2.7/dist-packages/youtube_dl/YoutubeDL.py", line 1320, in process_info
success = dl(filename, info_dict)
File "/usr/lib/python2.7/dist-packages/youtube_dl/YoutubeDL.py", line 1295, in dl
return fd.download(name, info)
File "/usr/lib/python2.7/dist-packages/youtube_dl/downloader/common.py", line 316, in download
return self.real_download(filename, info_dict)
File "/usr/lib/python2.7/dist-packages/youtube_dl/downloader/rtmp.py", line 204, in real_download
self.report_error('rtmpdump exited with code %d' % retval)
File "/usr/lib/python2.7/dist-packages/youtube_dl/downloader/common.py", line 151, in report_error
self.ydl.report_error(_args, *_kargs)
File "/usr/lib/python2.7/dist-packages/youtube_dl/YoutubeDL.py", line 511, in report_error
self.trouble(error_message, tb)
File "/usr/lib/python2.7/dist-packages/youtube_dl/YoutubeDL.py", line 473, in trouble
tb_data = traceback.format_list(traceback.extract_stack())

@dstftw
Copy link
Collaborator

@dstftw dstftw commented Feb 15, 2015

Duplicate of #4828.
You can try downloading from different content supplier by specifying format code to -f, e.g. -f pc_streaming_hd_akamai. See -F for the full list.

@dstftw dstftw closed this Feb 15, 2015
@sirmarky
Copy link
Author

@sirmarky sirmarky commented Feb 15, 2015

Yes. That seems to work. Will I need to do that every time from now on?

@narmon
Copy link

@narmon narmon commented Feb 25, 2015

Apparently, yes. I use youtube-GUI now so I don't have to type commands. See https://github.com/MrS0m30n3/youtube-dl-gui

In the prog, go to Options > Commands and paste in
-f pc_streaming_hd_akamai
or
-f iplayer_streaming_h264_flv_high_akamai
for standard definition, but without either of these, rtmpdump might exit with code 1.

@dstftw dstftw added the duplicate label Apr 1, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
3 participants
You can’t perform that action at this time.