我尝试下载3gp格式的youtube-dl视频。当我尝试在VLC或任何其他应用程序上播放时,它无法播放。这是我尝试再次下载时得到的输出。
youtube-dl https://youtu.be/lVFq__mrmlQ -f worst -v
[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: ['https://youtu.be/lVFq__mrmlQ', '-f', 'worst', '-v']
[debug] Encodings: locale UTF-8, fs utf-8, out UTF-8, pref UTF-8
[debug] youtube-dl version 2018.03.14
[debug] Python version 3.6.5 (CPython) - Linux-4.15.0-29-generic-x86_64-with-Ubuntu-18.04-bionic
[debug] exe versions: ffmpeg 3.4.2-2, ffprobe 3.4.2-2, phantomjs 2.1.1, rtmpdump 2.4
[debug] Proxy map: {}
[youtube] lVFq__mrmlQ: Downloading webpage
[youtube] lVFq__mrmlQ: Downloading video info webpage
[youtube] lVFq__mrmlQ: Extracting video information
[debug] Invoking downloader on 'https://r4---sn-h5q7dnee.googlevideo.com/videoplayback?signature=5432A7990BB3336616E21753F1D53171D09CBC31.B98E84CF0C51F39C613F53311128CD9E7A3872EA&c=WEB&lmt=1514133618343257&key=yt6&itag=17&fvip=3&mn=sn-h5q7dnee%2Csn-h5q7knes&mm=31%2C29&pl=24&mime=video%2F3gpp&id=o-AKWLZ7MpY1ip3PlxZJ7vXBY-jDqbVpUeI_Bls_o_g-GV&ipbits=0&requiressl=yes&ip=90.174.4.0&gir=yes&mt=1532653244&ms=au%2Crdu&dur=18470.684&initcwndbps=1011250&ei=S29aW5SjH4bIVseNkfgE&expire=1532674987&mv=m&sparams=clen%2Cdur%2Cei%2Cgir%2Cid%2Cinitcwndbps%2Cip%2Cipbits%2Citag%2Clmt%2Cmime%2Cmm%2Cmn%2Cms%2Cmv%2Cpl%2Crequiressl%2Csource%2Cexpire&clen=195336027&source=youtube&ratebypass=yes'
[download] Heroes of Might and Magic III - No Might 1v7 FFA (200%)-lVFq__mrmlQ.3gp has already been downloaded
[download] 100% of 186.29MiB
我尝试用ffmpeg对其进行转换,但收到以下消息:
ffmpeg -i Heroes\ of\ Might\ and\ Magic\ III\ -\ No\ Might\ 1v7\ FFA\ \(200%\)-lVFq__mrmlQ.3gp Heroes\ of\ Might\ and\ Magic\ III\ -\ No\ Might\ 1v7\ FFA\ \(200%\)-lVFq__mrmlQ.mp4
ffmpeg version 3.4.2-2 Copyright (c) 2000-2018 the FFmpeg developers
built with gcc 7 (Ubuntu 7.3.0-16ubuntu2)
configuration: --prefix=/usr --extra-version=2 --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --enable-gpl --disable-stripping --enable-avresample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librubberband --enable-librsvg --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-omx --enable-openal --enable-opengl --enable-sdl2 --enable-libdc1394 --enable-libdrm --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libopencv --enable-libx264 --enable-shared
libavutil 55. 78.100 / 55. 78.100
libavcodec 57.107.100 / 57.107.100
libavformat 57. 83.100 / 57. 83.100
libavdevice 57. 10.100 / 57. 10.100
libavfilter 6.107.100 / 6.107.100
libavresample 3. 7. 0 / 3. 7. 0
libswscale 4. 8.100 / 4. 8.100
libswresample 2. 9.100 / 2. 9.100
libpostproc 54. 7.100 / 54. 7.100
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x562e75c728c0] Could not find codec parameters for stream 0 (Video: mpeg4 (mp4v / 0x7634706D), none, 221 kb/s): unspecified size
Consider increasing the value for the 'analyzeduration' and 'probesize' options
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'Heroes of Might and Magic III - No Might 1v7 FFA (200%)-lVFq__mrmlQ.3gp':
Metadata:
major_brand : mp42
minor_version : 0
compatible_brands: isommp42
creation_time : 2017-12-24T16:43:17.000000Z
Duration: 05:07:50.68, bitrate: 84 kb/s
Stream #0:0(und): Video: mpeg4 (mp4v / 0x7634706D), none, 221 kb/s, 30 fps, 30 tbr, 15360 tbn, 15360 tbc (default)
Metadata:
creation_time : 2017-12-24T16:43:17.000000Z
handler_name : IsoMedia File Produced by Google, 5-11-2011
Output #0, mp4, to 'Heroes of Might and Magic III - No Might 1v7 FFA (200%)-lVFq__mrmlQ.mp4':
Output file #0 does not contain any stream
有了这些信息,我不知道如何继续。我已经尝试了ffmpeg的最大analysisuration和probesize,它仍然无法正常工作。有什么想法吗?
编辑:添加了检测到的youtube-dl格式列表。
youtube-dl -F https://youtu.be/lVFq__mrmlQ
[youtube] lVFq__mrmlQ: Downloading webpage
[youtube] lVFq__mrmlQ: Downloading video info webpage
[youtube] lVFq__mrmlQ: Extracting video information
[info] Available formats for lVFq__mrmlQ:
format code extension resolution note
249 webm audio only DASH audio 71k , opus @ 50k, 108.83MiB
250 webm audio only DASH audio 85k , opus @ 70k, 142.71MiB
171 webm audio only DASH audio 119k , vorbis@128k, 228.14MiB
140 m4a audio only DASH audio 145k , m4a_dash container, mp4a.40.2@128k, 279.77MiB
251 webm audio only DASH audio 152k , opus @160k, 280.97MiB
160 mp4 256x144 144p 114k , avc1.4d400c, 30fps, video only, 91.12MiB
278 webm 256x144 144p 153k , webm container, vp9, 30fps, video only, 176.00MiB
133 mp4 426x240 240p 258k , avc1.4d4015, 30fps, video only, 188.39MiB
242 webm 426x240 240p 261k , vp9, 30fps, video only, 366.78MiB
243 webm 640x360 360p 528k , vp9, 30fps, video only, 751.54MiB
134 mp4 640x360 360p 758k , avc1.4d401e, 30fps, video only, 539.15MiB
244 webm 854x480 480p 896k , vp9, 30fps, video only, 1.43GiB
135 mp4 854x480 480p 1441k , avc1.4d401f, 30fps, video only, 1.40GiB
247 webm 1280x720 720p 1798k , vp9, 30fps, video only, 3.03GiB
136 mp4 1280x720 720p 2673k , avc1.4d401f, 30fps, video only, 2.86GiB
302 webm 1280x720 720p60 2907k , vp9, 60fps, video only, 5.10GiB
298 mp4 1280x720 720p60 4626k , avc1.4d4020, 60fps, video only, 4.11GiB
17 3gp 176x144 small , mp4v.20.3, mp4a.40.2@ 24k
36 3gp 320x180 small , mp4v.20.3, mp4a.40.2
43 webm 640x360 medium , vp8.0, vorbis@128k
18 mp4 640x360 medium , avc1.42001E, mp4a.40.2@ 96k
22 mp4 1280x720 hd720 , avc1.64001F, mp4a.40.2@192k (best)
下载的号码是17。
答案 0 :(得分:0)
您传入了-f worst
。顾名思义,-f worst
会带给您最差的视频格式,其质量令人震惊,并且在包括ffmpeg在内的许多应用程序中几乎没有支持。简而言之,您就能满足您的要求。
要获得更好的文件,请提出其他要求。例如,如果您只想要音频(对于大多数视频来说,它要比图片小得多),请传入-x
。
如果您想要最佳的视频质量,只需省略-f worst
。
如果您的设备只能播放特定的分辨率(例如300px宽度),请传入-f 'bestvideo[width<=300]+bestadio/best[width<=300]'
。
如果每个视频的磁盘空间是限制(例如5GB),请传入-f best[filesize<=5GB]
。
如果您的设备只能播放某些格式,请使用acodec
,vcodec
,container
或仅使用ext
指定该格式。例如,-f worstvideo[ext=mp4]+bestaudio/worst[ext=mp4]
将使您的MP4文件质量最差。
当然,可以像-f worst[ext=mp4][filesize<=5GB]
中那样组合这些选择器。有关所有这些选项的更多信息,请参阅the youtube-dl documentation。
答案 1 :(得分:0)
此问题与编解码器或ffmpeg无关。文件在下载过程中被损坏,进一步尝试重新下载并没有告诉我任何有关此文件的信息。感谢用户phihag共享文件的sha256。