How to convert WMV to MP4?

You can use FFmpeg (a free command-line tool for Mac, Linux and Windows) to encode WMV to MP4. Here is an example syntax:

ffmpeg -i input.wmv -c:v libx264 -crf 23 -c:a aac -q:a 100 output.mp4

This will encode the video to H.264 video and AAC audio, using the default quality. To change the quality for the video, use a different CRF value, where lower means better, e.g. 20 or 18. For audio, 100% is the default quality. Increase the value for better quality.

For the AppleTV specifically, this is what Apple says it supports:

H.264 video up to 1080p, 30 frames per second, High or Main Profile level 4.0 or lower, Baseline profile level 3.0 or lower with AAC-LC audio up to 160 kbit/s per channel, 48 kHz, stereo audio in .m4v, .mp4, and .mov file formats

So, you could use the following command to force the 30 Hz frame rate and High profile:

ffmpeg -i input.wmv -c:v libx264 -crf 23 -profile:v high -r 30 -c:a aac -q:a 100 -ar 48000 output.mp4

HandBrake. Multi-platform and free.

HandBrake is an open-source, GPL-licensed, multiplatform, multithreaded video transcoder, available for MacOS X, Linux and Windows.

Supported Sources:

  • Most common multimedia files that libavformat and libavcodec support.

  • Any DVD or Bluray-like source which is NOT copy-protected. (removal of copy protection is not supported)

Outputs:

  • File format: MP4(M4V) and MKV

  • Video: H.264(x264), MPEG-4(ffmpeg), MPEG-2(ffmpeg), or Theora(libtheora)

  • Audio: AAC, CoreAudio AAC/HE-AAC (OS X Only), MP3, Flac, AC3, or Vorbis. AC-3, DTS, DTS-HD, AAC and MP3 pass-thru.


If you're trying to convert WMV files created by GoToMeeting (aka Go2Meeting for SEO purposes) then all of the above solutions will probably fail because the video is encoded using a citrix-specific g2m4 codec that will make transcoders choke.

I found this page that guides through transcoding from g2m to regular WMV using g2mtranscoder.exe provided by gotomeeting, which will transcode your video in place so that you can then transcode it to your format of choice using regular tools (like the other answers in this thread).