6

I am looking for a video encoder that is fast, requires less CPU power and produces very good quality mp4 video.

The input videos can be in any format and uploaded by users.

Only thing I know is FFMPEG library.

Is there anything else that is better?

The program must have a batch utility (exe) that I am interested in.

I would appreciate if you kindly share your knowledge.

Thanks

kheya
  • 7,546
  • 20
  • 77
  • 109

2 Answers2

17

Use x264. It's fast and flexible enough for it to suit your needs. Other H.264 video encoders are junk compared to it and this isn't just my opinion. You can use it directly or via ffmpeg. You can get recent FFmpeg builds for Windows, OS X, and Linux via the FFmpeg download page. See the following answers for more information on determining the encoding options that will work for you:

Also see:

If you're going to be displaying the output files on a web site with progressive downloading then consider using the option -movflags faststart. It will move a small amount of data to the beginning of the file so it can begin playing before the file is completely downloaded.

Community
  • 1
  • 1
llogan
  • 121,796
  • 28
  • 232
  • 243
  • Hi, We are using .NET + MVC framework. Our site will let users play videos just like youtube or anyother public video sharing site. Do you think I need faststart option for our case? Thanks for quick answer. – kheya Mar 14 '12 at 18:58
  • If you output to .mp4 with H.264 video using FFmpeg/x264, and plan on progressive download, then yes, you will have to relocate the "moov atom" with qt-faststart or another tool. – llogan Mar 14 '12 at 20:22
  • 5
    "Streaming" generally means the encoder is working in real time. If a user is downloading and playing a video from a server that has been previously encoded that is called progressive download, not streaming. – llogan Mar 14 '12 at 21:21
  • Also note that encoding x264, if you're making a commercial product, requires you pay licence fees. – Robinson Apr 28 '16 at 14:45
  • @kheya I flagged your comment which seemed to continue to ask project-specific details to LordNeckbeard as requirement/ransom for a perfectly acceptable answer. Other questions like "what is progressive downloading" and so forth are your own responsibility to determine in separate questions, this is not a chatroom. – Jordan Stefanelli Nov 28 '18 at 19:48
3

I highly recommend HandBrake. It has a good exe (and there are several batch programs that use HandBrake's CLI, here's one for example. I haven't used it but it looks good. I've used others.) It also has a good CLI which I have used to develop my own project (a little out of date). Anyway, I hope that's helpful :D

kentcdodds
  • 27,113
  • 32
  • 108
  • 187