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.03k stars 10.01k forks source link

youtube-dl embed-subs error #9356

Closed luluman closed 8 years ago

luluman commented 8 years ago

Before submitting an issue make sure you have:

$ youtube-dl -f 22 -v zXDAYlhdkyg
[debug] System config: []
[debug] User config: [u'--external-downloader', u'aria2c', u'--external-downloader-args', u'-c -x16 -s16', u'--force-ipv6', u'--write-sub', u'--convert-subs', u'srt', u'--embed-subs']
[debug] Command-line args: [u'-f', u'22', u'-v', u'zXDAYlhdkyg']
[debug] Encodings: locale UTF-8, fs utf-8, out UTF-8, pref UTF-8
[debug] youtube-dl version 2016.04.24
[debug] Python version 2.7.10 - Darwin-15.4.0-x86_64-i386-64bit
[debug] exe versions: avconv 11.4, avprobe 11.4, ffmpeg 3.0.2, ffprobe 3.0.2
[debug] Proxy map: {}
[youtube] zXDAYlhdkyg: Downloading webpage
[youtube] zXDAYlhdkyg: Downloading video info webpage
[youtube] zXDAYlhdkyg: Extracting video information
[youtube] zXDAYlhdkyg: Downloading MPD manifest
[info] Writing video subtitles to: Florida Georgia Line - H.O.L.Y.-zXDAYlhdkyg.en.vtt
[debug] Invoking downloader on u'https://r3---sn-i3beln7k.googlevideo.com/videoplayback?sparams=dur%2Cgcr%2Cid%2Cinitcwndbps%2Cip%2Cipbits%2Citag%2Clmt%2Cmime%2Cmm%2Cmn%2Cms%2Cmv%2Cnh%2Cpl%2Cratebypass%2Crequiressl%2Csource%2Cupn%2Cexpire&gcr=cn&sver=3&mn=sn-i3beln7k&mm=31&key=yt6&signature=B66F30AFE521EFC503C4CD0CF0EBFB6F99D3C3BE.1358C4677C2B7AC8539DD5815E722D9D03BEFABF&mv=m&pl=51&mt=1462035875&ms=au&itag=22&lmt=1462012800380837&requiressl=yes&ip=2001%3Acc0%3A2020%3A2013%3Af495%3A3204%3Aa9f5%3A63c7&fexp=9416126%2C9416891%2C9422596%2C9424135%2C9426985%2C9428332%2C9428398%2C9429263%2C9429739%2C9430016%2C9431012%2C9432424%2C9432683%2C9432714%2C9433096%2C9433776%2C9433946%2C9433995%2C9434290%2C9435666&source=youtube&dur=229.250&id=o-AKEyz_OgpkLqxtyXGY0ZAc6p0yqnq_fcICC8RoeKn1v3&nh=IgpwcjAxLmhrZzA4KgkxMjcuMC4wLjE&mime=video%2Fmp4&upn=Os6RUNg6SIg&expire=1462057716&initcwndbps=3145000&ipbits=0&ratebypass=yes'
[download] Destination: Florida Georgia Line - H.O.L.Y.-zXDAYlhdkyg.mp4
[debug] aria2c command line: aria2c -c -c -x16 -s16 --out 'Florida Georgia Line - H.O.L.Y.-zXDAYlhdkyg.mp4.part' --header 'Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7' --header 'Accept-Language: en-us,en;q=0.5' --header 'Accept-Encoding: gzip, deflate' --header 'Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8' --header 'User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:10.0) Gecko/20150101 Firefox/44.0 (Chrome)' --interface :: --check-certificate=true -- 'https://r3---sn-i3beln7k.googlevideo.com/videoplayback?sparams=dur%2Cgcr%2Cid%2Cinitcwndbps%2Cip%2Cipbits%2Citag%2Clmt%2Cmime%2Cmm%2Cmn%2Cms%2Cmv%2Cnh%2Cpl%2Cratebypass%2Crequiressl%2Csource%2Cupn%2Cexpire&gcr=cn&sver=3&mn=sn-i3beln7k&mm=31&key=yt6&signature=B66F30AFE521EFC503C4CD0CF0EBFB6F99D3C3BE.1358C4677C2B7AC8539DD5815E722D9D03BEFABF&mv=m&pl=51&mt=1462035875&ms=au&itag=22&lmt=1462012800380837&requiressl=yes&ip=2001%3Acc0%3A2020%3A2013%3Af495%3A3204%3Aa9f5%3A63c7&fexp=9416126%2C9416891%2C9422596%2C9424135%2C9426985%2C9428332%2C9428398%2C9429263%2C9429739%2C9430016%2C9431012%2C9432424%2C9432683%2C9432714%2C9433096%2C9433776%2C9433946%2C9433995%2C9434290%2C9435666&source=youtube&dur=229.250&id=o-AKEyz_OgpkLqxtyXGY0ZAc6p0yqnq_fcICC8RoeKn1v3&nh=IgpwcjAxLmhrZzA4KgkxMjcuMC4wLjE&mime=video%2Fmp4&upn=Os6RUNg6SIg&expire=1462057716&initcwndbps=3145000&ipbits=0&ratebypass=yes'

05/01 01:08:40 [NOTICE] Allocating disk space. Use --file-allocation=none to disable it. See --file-allocation option in man page for more details.
 *** Download Progress Summary as of Sun May  1 01:09:41 2016 ***                                               
================================================================================================================
[#fdc1a6 15MiB/28MiB(53%) CN:1 DL:318KiB ETA:43s]
FILE: /Users/LuluMan/Florida Georgia Line - H.O.L.Y.-zXDAYlhdkyg.mp4.part
----------------------------------------------------------------------------------------------------------------

[#fdc1a6 28MiB/28MiB(98%) CN:1 DL:261KiB ETA:1s]                                                                
05/01 01:10:35 [NOTICE] Download complete: /Users/LuluMan/Florida Georgia Line - H.O.L.Y.-zXDAYlhdkyg.mp4.part

Download Results:
gid   |stat|avg speed  |path/URI
======+====+===========+=======================================================
fdc1a6|OK  |   258KiB/s|/Users/LuluMan/Florida Georgia Line - H.O.L.Y.-zXDAYlhdkyg.mp4.part

Status Legend:
(OK):download completed.
[aria2c] Downloaded 30272278 bytes
[download] 100% of 28.87MiB
[ffmpeg] Converting subtitles
[debug] ffmpeg command line: avconv -y -i 'file:Florida Georgia Line - H.O.L.Y.-zXDAYlhdkyg.en.vtt' -f srt 'file:Florida Georgia Line - H.O.L.Y.-zXDAYlhdkyg.en.srt'
ERROR: file:Florida Georgia Line - H.O.L.Y.-zXDAYlhdkyg.en.vtt: Invalid data found when processing input
Traceback (most recent call last):
  File "/usr/local/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 1778, in post_process
    files_to_delete, info = pp.run(info)
  File "/usr/local/bin/youtube-dl/youtube_dl/postprocessor/ffmpeg.py", line 565, in run
    self.run_ffmpeg(old_file, new_file, ['-f', new_format])
  File "/usr/local/bin/youtube-dl/youtube_dl/postprocessor/ffmpeg.py", line 172, in run_ffmpeg
    self.run_ffmpeg_multiple_files([path], out_path, opts)
  File "/usr/local/bin/youtube-dl/youtube_dl/postprocessor/ffmpeg.py", line 168, in run_ffmpeg_multiple_files
    raise FFmpegPostProcessorError(msg)
FFmpegPostProcessorError
<end of log>

It seems "avconv" does not work in the right way.

avconv -y -i 'file:Florida Georgia Line - H.O.L.Y.-zXDAYlhdkyg.en.vtt' -f srt 'file:Florida Georgia Line - H.O.L.Y.-zXDAYlhdkyg.en.srt'
ERROR: file:Florida Georgia Line - H.O.L.Y.-zXDAYlhdkyg.en.vtt: Invalid data found when processing input

Instead, using "ffmpeg" would be fine.

ffmpeg -y -i 'file:Florida Georgia Line - H.O.L.Y.-zXDAYlhdkyg.en.vtt' -f srt 'file:Florida Georgia Line - H.O.L.Y.-zXDAYlhdkyg.en.srt'
ffmpeg version 3.0.2 Copyright (c) 2000-2016 the FFmpeg developers
  built with Apple LLVM version 7.3.0 (clang-703.0.29)
  configuration: --prefix=/usr/local/Cellar/ffmpeg/3.0.2 --enable-shared --enable-pthreads --enable-gpl --enable-version3 --enable-hardcoded-tables --enable-avresample --cc=clang --host-cflags= --host-ldflags= --enable-opencl --enable-libx264 --enable-libmp3lame --enable-libxvid --enable-vda
  libavutil      55. 17.103 / 55. 17.103
  libavcodec     57. 24.102 / 57. 24.102
  libavformat    57. 25.100 / 57. 25.100
  libavdevice    57.  0.101 / 57.  0.101
  libavfilter     6. 31.100 /  6. 31.100
  libavresample   3.  0.  0 /  3.  0.  0
  libswscale      4.  0.100 /  4.  0.100
  libswresample   2.  0.101 /  2.  0.101
  libpostproc    54.  0.100 / 54.  0.100
Input #0, webvtt, from 'file:Florida Georgia Line - H.O.L.Y.-zXDAYlhdkyg.en.vtt':
  Duration: N/A, bitrate: N/A
    Stream #0:0: Subtitle: webvtt
Output #0, srt, to 'file:Florida Georgia Line - H.O.L.Y.-zXDAYlhdkyg.en.srt':
  Metadata:
    encoder         : Lavf57.25.100
    Stream #0:0: Subtitle: subrip (srt)
    Metadata:
      encoder         : Lavc57.24.102 srt
Stream mapping:
  Stream #0:0 -> #0:0 (webvtt (native) -> subrip (srt))
Press [q] to stop, [?] for help
size=       3kB time=00:03:28.36 bitrate=   0.1kbits/s speed=1.07e+05x    
video:0kB audio:0kB subtitle:2kB other streams:0kB global headers:0kB muxing overhead: 68.463768%

Can I change the default subtile converter to "ffmpeg" or there is other way to fix this error ?

dstftw commented 8 years ago

You can either use --prefer-ffmpeg or remove avconv from $PATH.