Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

How can a set of WMV files be converted to MP4 so I can import them to my Apple TV?

share|improve this question
add comment

9 Answers 9

up vote 25 down vote accepted

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 libfaac -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 Kbps per channel, 48kHz, 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 libfaac -q:a 100 -ar 48000 output.mp4
share|improve this answer
    
I just tried using this solution on Fedora 19 and ran into the error: Unknown encoder 'libaac' It seems that after a certain release, ffmpeg does not include binary distibutions with libfaac support, so you would need to build from source. Instead I changed 'libfaac' to 'aac' and added the '-strict -2' flags and the conversion worked successfully. –  roartechs Jan 6 at 8:10
    
Unrecognized option 'c:v' Failed to set value 'libx264' for option 'c:v' –  WHK Feb 11 at 18:36
add comment

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.
share|improve this answer
2  
HandBrake didn't work. I received an error that says "No Title(s) found. Please make sure you have selected a valid, non-copy protected source. Your source may be copy protected, badly mastered or a format which Handbrake does not support." and I don't think HandBrake supports wmv. –  burnt1ce Nov 21 '09 at 20:17
5  
Sorry to hear. It passed the "Works on my machine" test :-(. –  user3463 Nov 21 '09 at 21:28
    
Worked for me with Handbrake 0.9.4. –  Sebastian Aug 1 '12 at 20:16
    
@RandolphWest What is your machine, if it worked on it? –  bwerks Dec 27 '12 at 19:24
    
@burnt1ce After getting the exact same error, I was able to convert a GoToMeeting wmv using Handbrake only after first transcoding with Citrix's g2mtranscoder.exe, and then using Handbrake 0.9.8. –  bwerks Dec 28 '12 at 21:00
add comment

Try the SUPER : Simplified Universal Player Encoder & Renderer.

It's pretty well the swiss-knife of video conversion.

share|improve this answer
    
Ahh yes. This site is absolutely horrendous in terms of usability. I'll try out the software now. Thanks! –  burnt1ce Nov 21 '09 at 20:23
    
I wanted to try this but CNet reviews report that it's loaded with malware. –  bwerks Dec 27 '12 at 19:48
    
@bwerks: I have used Super about a year ago and never had any problems with it as long as I opted out of every offered adware (distinct from and absolutely not malware!). Anti-virus scans never found anything. Super might certainly have changed since then, but that was the situation a year ago and when the answer was written. Anyway, why downvote an answer from 3 years ago? –  harrymc Dec 27 '12 at 20:31
    
Well, in its current state (2012-12-28) SUPER appears to have become encumbered with who knows what and regardless of what it was a year ago, it's no longer a great recommendation. Downvoting isn't something personal, it's because this answer is no longer good for people visiting superuser.com now. –  bwerks Dec 28 '12 at 16:56
add comment
./ffmpeg -y -i input.wmv -vcodec libx264 -acodec libfaac -ab 128k -ac 2 -b 300 -threads 4 -flags +loop -cmp +chroma -partitions 0 -subq 1 -trellis 0 -refs 1 -coder 0 -bufsize 10M  -qcomp 0.6 -qmin 10 -qmax 51 -qdiff 4 -level 30 output.mp4

I don't know what all the options/flags mean, but that seemed to work and get a Flash streamable MP4 file, but the video was not top quality.

The the codec libraries I have installed are libx264 and libfaac for H.264 and AAC video and audio codecs.

share|improve this answer
add comment

www.media-convert.com is a free web based service that converts all sorts of audio and video formats. No need to install any software. Ignore the adds and just select the file type from the dropdown menus.

share|improve this answer
    
Very interesting however, it doesn't output 720p+ quality video. Max resolution for mp4 is 640x480. But +1 for sure. –  burnt1ce Nov 21 '09 at 23:32
add comment

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).

Hope this helps.

share|improve this answer
    
Are you sure that FFmpeg doesn't do GoToMeeting codecs? It's listed in ffmpeg -codec, however with no D flag, so I don't know if it's fully supported. –  slhck Dec 28 '12 at 20:17
    
@slhck I did try FFmpeg on its own as a first step, and while it did identify the video codec as Video: g2m (G2M4 / 0x344D3247), it resulted with error 'Unable to parse option value "-1" as pixel format'. After in-place transcoding with g2mtranscoder, I was then able to transcode normally with handbrake. I do plan on trying to get it working with FFmpeg though so I can full automate this process. –  bwerks Dec 28 '12 at 20:56
add comment

try Any Video Converter. As the name stated, it can convert many kinds of videos.

share|improve this answer
    
this is the not-free one... –  quack quixote Nov 21 '09 at 19:14
1  
actually, there is a free version –  phunehehe Nov 22 '09 at 5:51
add comment

MediaCoder should do the job just fine!

MediaCoder is a free universal media transcoder since 2005. It integrates most popular audio/video codecs and tools in an elegant and transparent manner into an all-in-one transcoding solution. With a flexible and extendable architecture, latest codecs and tools are updated added in constantly. MediaCoder intends to be the swiss army knife for media transcoding in all time.

share|improve this answer
    
Cool i'm downloading it now. –  burnt1ce Nov 21 '09 at 20:29
add comment

I would use MediaCoder for batch conversion or other user-friendly possibility is Avidemux.

share|improve this answer
add comment

protected by Journeyman Geek Sep 12 '12 at 9:04

Thank you for your interest in this question. Because it has attracted low-quality answers, posting an answer now requires 10 reputation on this site.

Would you like to answer one of these unanswered questions instead?

Not the answer you're looking for? Browse other questions tagged or ask your own question.