Log in

View Full Version : untitled x264/neroAAC/mkvmerge batch encoding GUI


click2
30th December 2009, 00:47
http://imgur.com/H5qpY.png

Description:

This is a tool for batch media encoding (in the style of BENCOS, RealAnime and MiniCoder), though it works equally well for single encodes. It uses x264, neroAAC and mkvmerge.

The GUI is written in native Win32/VB6 (no .NET dependency), quite logical and easy to use, and tested to run on both XP and Windows 7. It retains subtitles and chapters in source mkv files. Settings are stored to .ini in the same directory, and it includes a simple bitrate calculator as well as a short guide in the GUI.

Configuration is minimal, but it includes audio/video source input filters (including Import), custom avisynth, choice of ratecontrol for both x264 and neroAacEnc, bitrate/crf, and x264's preset and tune.

Suggestions and bug reports would be appreciated.

Screenshots:

http://imgur.com/h4204s.jpg (http://imgur.com/h4204.png) http://imgur.com/mKwlVs.jpg (http://imgur.com/mKwlV.png) http://imgur.com/irE3Ws.jpg (http://imgur.com/irE3W.png)

Requirements:

Requires - avisynth (http://sourceforge.net/projects/avisynth2/), x264 (http://x264.nl/), neroAAC (http://www.nero.com/eng/downloads-nerodigital-nero-aac-codec.php), mkvmerge (http://www.bunkus.org/videotools/mkvtoolnix/), wavi (http://sourceforge.net/projects/wavi-avi2wav/).
Optional - FFMS2 (http://code.google.com/p/ffmpegsource/)

Bug tracker:

- Still doesn't have a proper name..
- Known issue with detection of stdout cr/lf in certain places (see image (http://imgur.com/ORN5G.png))
- If you get an error about comctl32.ocx, read this (http://forum.doom9.org/showpost.php?p=1380359&postcount=10)

Download:


2010-02-05: r54 (http://www.mediafire.com/download.php?vtzwnkvnwmm) (testing)
- Redirect stdout to Log tab
- Use wavi instead of bepipe for no .NET dependency
- Add support for CRF, x264 preset/tune, and x264's ffms2 input (requires x264 r1400 or newer)

2009-12-30: r41 (http://www.mediafire.com/download.php?ydnmm3mdzi5)
- New "dual-subsystem" emulation for batch scripts
- Updated encoding logic

2009-11-24: r5 (http://www.mediafire.com/download.php?moztjf3mt0y)
- Initial release

click2
6th February 2010, 01:19
Updated program to redirect console output, have no .NET dependency, and optionally use x264's new lavf/ffms2 input. :)

Alex_080
6th February 2010, 01:27
cay we encode both audio in a dual audio file???

click2
6th February 2010, 01:38
@Alex_080; No, the current r54 only does one audio track.

I could add the feature, using FFAudioSource's atrack parameter and maybe mediainfo, or mkvinfo and ogminfo for detection.
Personally for anime i just discard the english dub..

Darkwhisperer
3rd March 2010, 15:01
It would be awesome if you can add a bunch of files to convert, and simply pass it a "Final Size" value for the lot. I'm trying it with a test app that I'm writing, works great. But my coding isn't so good, and so there's lots of other bugs.

The basic idea is:
(1) Break up the video's into percentages based on duration, and this determines the final size of each video.
(2) Encode the audio, and then subtract its size from the final size for the current file.
(3) Overhead is the Frame Count * 0.013 (From what I've read, calculating overhead is as much math as magic. There's lots of formulas to calculate it, some better than others). Again subtract the amount from the final size of the current file.
(4) Now you're only left with the video portion. You can calculate the bit-rate for x264 as follows:
(SIZE_OF_VIDEO_IN_BYTES * 8) / NO_OF_SECONDS

And so you have everything to convert all the video and audio in each file.

I copy a season of a series dvd into one folder (Each episode = 1 vob), select the lot, use final size as a blank dvd, and off it goes! (At least that what I'd like, it keeps crashing).

click2
3rd March 2010, 23:56
@Darkwhisperer; you can already do this easily by having the same bitrate for all files; you just find the bitrate by using the calculator and entering your total size and the total duration of all the files.

Overhead does seem like magic, although MeGUI's calculator seems to do it very well. :) A while ago i tried to extract its algorithms, and i made a thread in the software development forum here about it.

With regards to crashing - is that your code, or mine? I'd love to hear more about it..

Darkwhisperer
4th March 2010, 08:20
Its my test app that's crashing. It worked great until I started attempting multiple job threads. It gets confused easily, either using only one thread, or attempting all the jobs at once. Still working on it.

I cant for the life of me figure out why I just didn't use one bit-rate. Something at the back of my mind says there's something I'm not thinking off, but I don't know what. Will give it a shot, and let you know.

dstln
5th March 2010, 01:18
Hmmm... could be useful, especially to save a bit of time for things like intermediate encodes for youtube, thanks.

dstln
5th March 2010, 01:43
fyi I apparently don't have comctl32.ocx on win7. I'll let you address this in whatever way you wish before randomly downloading things to fix it :P

click2
5th March 2010, 21:14
fyi I apparently don't have comctl32.ocx on win7. I'll let you address this in whatever way you wish before randomly downloading things to fix it :P

Thanks for spotting this, it's happened before and I always forget.

Comctl32.ocx is part of a microsoft runtime that used to be very popular, though I guess 7 doesn't come with it by default. I think legally i'm meant to package it with my program. The basic technique is, download the file (http://www.mediafire.com/download.php?lygmotzdtxu) and put it in \windows\system32, (or in \windows\SysWOW64 if you're running 64-bit windows) and then run regsvr32 comctl32.ocx from a command prompt in the same window.

Hope that helped, i've put a warning in the main post. Let me know if it works or if you need any more assistance :)

dstln
6th March 2010, 01:23
Yeah, it wasn't in my vista partition either fyi

dstln
13th May 2010, 13:48
Not sure if you still look at this.

But was using it today and it doesn't seem to be able to handle higher frequency sound inputs. I'm assuming this is an aac limitation, but it still causes it to error :( I tried a 192 source btw

Mr901
24th September 2010, 05:09
Is this still being maintained ?

When i try and encode a file i get "wavi.exe has stopped working"

:(