Allow a custom ffmpeg path to be specified
See original GitHub issueyoutube-dl: 2014.01.07.5 python: 2.7.3 OS: Ubuntu 12.04
Great work on providing a way to join DASH audio and video!
I know it hasn’t been announced yet, but I thought I’d report a possible issue related to it. The ffmpeg/avconv on Ubuntu 12.04 doesn’t seem to mux the streams correctly:
youtube-dl -f ‘137+140’ gBabKoHSErI
produces an .mp4 file with an audio track but no video track:
> mediainfo gBabKoHSErI.mp4
General
Format : MPEG-4
Format profile : Base Media
Codec ID : isom
File size : 2.16 MiB
Duration : 2mn 21s
Overall bit rate mode : Variable
Overall bit rate : 128 Kbps
Encoded date : UTC 2013-12-27 19:27:06
Tagged date : UTC 2013-12-27 19:27:06
Writing application : Lavf53.21.1
Audio
ID : 2
Format : AAC
Format/Info : Advanced Audio Codec
Format profile : LC
Codec ID : 40
Duration : 2mn 21s
Bit rate mode : Variable
Bit rate : 126 Kbps
Channel count : 2 channels
Channel positions : Front: L R
Sampling rate : 44.1 KHz
Compression mode : Lossy
Stream size : 2.11 MiB (98%)
Encoded date : UTC 2013-12-27 19:27:06
Tagged date : UTC 2013-12-27 19:27:06
I get an error if I try to merge the streams manually with the stock ffmpeg e.g.:
> ffmpeg -version
ffmpeg version 0.8.9-4:0.8.9-0ubuntu0.12.04.1, Copyright (c) 2000-2013 the Libav developers
built on Nov 9 2013 19:12:07 with gcc 4.6.3
> ffmpeg -y -i gBabKoHSErI.f140.m4a -i gBabKoHSErI.f137.mp4 -c copy gBabKoHSErI.mp4
Unrecognized option 'c'
Failed to set value 'copy' for option 'c'
I get the audio-only file (and no error) if I replace -c copy
with -acodec copy -vcodec copy
.
Both options work fine if I use a more recent version of ffmpeg:
> sffmpeg -version
ffmpeg version 2.0
built on Aug 20 2013 01:54:29 with gcc 4.6 (Ubuntu/Linaro 4.6.3-1ubuntu5)
> sffmpeg -y -i gBabKoHSErI.f140.m4a -i gBabKoHSErI.f137.mp4 -c copy gBabKoHSErI.mp4
Stream mapping:
Stream #1:0 -> #0:0 (copy)
Stream #0:0 -> #0:1 (copy)
Press [q] to stop, [?] for help
frame= 3379 fps=0.0 q=-1.0 Lsize= 51389kB time=00:02:21.03 bitrate=2984.9kbits/s
video:49127kB audio:2162kB subtitle:0 global headers:0kB muxing overhead 0.195621%
An option to set the ffmpeg path would allow me to use the more recent ffmpeg automatically; it would also allow users to make their own choices re: avconv vs ffmpeg.
Issue Analytics
- State:
- Created 10 years ago
- Comments:8 (3 by maintainers)
Since youtube-dl 2015.02.16, you can use the
--ffmpeg-location
option to specify the path of the executable (or the directory the executable resides in). See our FAQ if you need help updating.@HarrySykes7890
'ffmpeg_location': ...
in the configuration dictionary.It’s not documented in YoutubeDL.py for some reason, I’m guessing oversight?