Search code examples
pythonwindowsffmpegffprobeyoutube-dl

How to extract audio with youtube-dl on Windows


I want to extract audio from a video downloaded with youtube-dl on Windows. I got youtube-dl working, but am unable to extract the audio. This problem is caused due to not having the correct audio codes installed.

When I try to extract audio it tells me the following:

WARNING: unable to obtain file audio codes with ffprobe

The youtube-dl manual says:

-x -extract-audio    convert video files to audio-only files (requires ffmpeg or avconv and ffprobe or avprobe)

How do I install ffprobe or ffmpeg? Do I install this on Windows, or do I install this as a Python extension?

My OS is Windows 7.


Solution

  • ffmpeg is not a Python module. Take a look at the code of youtube-dl in the FFmpegExtractAudioPP class.

    It uses this call to figure out if the executable exists or not. It checks in your current path:

    subprocess.Popen([exe, '-version'], stdout=subprocess.PIPE, stderr=subprocess.PIPE).communicate()
    

    You'll need to download the Windows builds of ffmpeg and put them in your current path, probably making sure that they do not have .exe at the end of their names.