ytdl-org / youtube-dl

Command-line program to download videos from YouTube.com and other video sites
http://ytdl-org.github.io/youtube-dl/
The Unlicense
132.62k stars 10.05k forks source link

Failure to download RTMP stream from Youtube #3187

Closed zwerfvogel closed 10 years ago

zwerfvogel commented 10 years ago

My video is detected as having an RTMP stream, but it is not downloaded correctly, despite rtmpdump 2.4 being installed.

~$ youtube-dl --verbose http://www.youtube.com/watch?v=L5qoPRyvPOU
[debug] System config: []
[debug] User config: []
[debug] Command-line args: ['--verbose', 'http://www.youtube.com/watch?v=L5qoPRyvPOU']
[debug] Encodings: locale UTF-8, fs UTF-8, out UTF-8, pref UTF-8
[debug] youtube-dl version 2014.06.26
[debug] Python version 2.7.3 - Linux-3.2.0-4-amd64-x86_64-with-debian-7.5
[debug] Proxy map: {}
[youtube] Setting language
[youtube] L5qoPRyvPOU: Downloading webpage
[youtube] L5qoPRyvPOU: Downloading video info webpage
[youtube] L5qoPRyvPOU: Extracting video information
[youtube] RTMP download detected
[download] Destination: Кубанские казаки _ The Cossacks of Kuban-L5qoPRyvPOU.unknown_video
[debug] rtmpdump command line: rtmpdump --verbose -r rtmpe://v10.nonxt2.c.youtube.com/videoplayback -o 'Кубанские казаки _ The Cossacks of Kuban-L5qoPRyvPOU.unknown_video.part' --resume --skip 1
[rtmpdump] RTMPDump v2.4
[rtmpdump] (c) 2010 Andrej Stepanchuk, Howard Chu, The Flvstreamer Team; license: GPL
[rtmpdump] DEBUG: Parsing...
[rtmpdump] DEBUG: Parsed protocol: 2
[rtmpdump] DEBUG: Parsed host    : v10.nonxt2.c.youtube.com
[rtmpdump] DEBUG: Parsed app     : videoplayback
[rtmpdump] DEBUG: Number of skipped key frames for resume: 1
[rtmpdump] ERROR: You must specify a playpath (--playpath) or url (-r "rtmp://host[:port]/playpath") containing a playpath
ERROR: unable to download video
Traceback (most recent call last):
  File "/home/user1/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 1050, in download
    self.extract_info(url)
  File "/home/user1/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 527, in extract_info
    return self.process_ie_result(ie_result, download, extra_info)
  File "/home/user1/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 564, in process_ie_result
    return self.process_video_result(ie_result, download=download)
  File "/home/user1/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 830, in process_video_result
    self.process_info(new_info)
  File "/home/user1/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 1025, in process_info
    raise UnavailableVideoError(err)
UnavailableVideoError: [Errno 2] No such file or directory: '\xd0\x9a\xd1\x83\xd0\xb1\xd0\xb0\xd0\xbd\xd1\x81\xd0\xba\xd0\xb8\xd0\xb5 \xd0\xba\xd0\xb0\xd0\xb7\xd0\xb0\xd0\xba\xd0\xb8 _ The Cossacks of Kuban-L5qoPRyvPOU.unknown_video.part'
naoliv commented 10 years ago

It seems that youtube-dl is wrongly calling rtmpdump This part is from rtmpdump:

ERROR: You must specify a playpath (--playpath) or url (-r "rtmp://host[:port]/playpath") containing a playpath

zwerfvogel commented 10 years ago

Yes, but I do not think it is called incorrectly -- I ran rtmpdump separately, ensuring that the syntax was correct. After looking at similar issues related to RTMP, it seems that the real problem is a generic url returned from Youtube.

naoliv commented 10 years ago

It's missing the video URL after rtmpdump --verbose -r rtmpe://v10.nonxt2.c.youtube.com/videoplayback[SOMETHINGHERE]?

zwerfvogel commented 10 years ago

Yes, something like that -- have a look at #2908 and #343 but it is not clear what the status of those bugs is.

naoliv commented 10 years ago

Looking at #343 it seems that it's very difficult to find the proper stream URL. It's still open.

jaimeMF commented 10 years ago

Duplicate of #1797.