How can I convert an mp4 file to a m2v file using FFMPEG that is compatible with Windows Media Player?

2

I tried doing this but Windows says the file isn't playable. Playing it in VLC does work.

ffmpeg -i in.mp4 -f mpeg -vcodec mpeg2video out.m2v

user1113569

Posted 2018-07-01T04:48:16.910

Reputation: 121

1Try -f vob out.mpg although your WMP may need external codecs. – Gyan – 2018-07-01T05:19:33.147

Answers

2

Windows Media Player uses DirectShow, which is a system of filters connected together depending on what is fed into them. If you want to play any format using Windows Media Player, it would be best to install a set of free open-source DirectShow filters known collectively as "LAV Filters", written and maintained by Nevcairiel. Its latest installer release can be found on its Github releases page, here: https://github.com/Nevcairiel/LAVFilters/releases

However, if you're targeting default Windows installations, one of the highest-quality lossy codecs that Windows supports with its default DirectShow filters is Windows Media Video. Here's how to transcode a Windows Media Video file conveniently with ffmpeg using Windows Media Video 8.

ffmpeg -i input.mp4 -q:a 2 -q:v 2 -vcodec wmv2 -acodec wmav2 output.wmv

There is a later version of Windows Media Video, called Windows Media Video 9, but FFmpeg doesn't support encoding Windows Media Video 9; only decoding. For encoding that, you would be more likely to find success using a Microsoft tool.

I have one final note I'd like to include. Ideally, unless your source video is lossless, you shouldn't be transcoding video to a lossy format such as Windows Media Video 8 if you can help it. That introduces generational loss, which is a serious problem for archived video. Instead, try to ensure your target playback system can play the original lossy-codec-encoded video or make sure you're encoding your lossy video from a lossless source.

Alex Folland

Posted 2018-07-01T04:48:16.910

Reputation: 59