Log in

View Full Version : Recommended Modern H264 Input Filter?


CarlEdman
4th March 2013, 13:30
Having successfully converted my DVD collection and uploaded it to my NAS, I'm now trying to do the same for my Blu-Ray collection.

My problem is finding a suitable avisynth h264 source filter. I've looked into the following and each seem inadequate:

DGAVCDec was my first choice as it seemed fairly straightforward and free. Even better it resembled DGDecode which I've used for many years with great success for MPEG2 sources. Unfortunately, even its author discourages DGAVCDec use and has pulled it from the web. Also, I'm having some problems with the avisynth source filter finding the libavcodec library.

DGNVDecode seems like the superior choice from the mind that brought us DGAVCDec and DGDecode. The price seems a pittance compared to its value and I would have jumped on it long ago, if I had an NVidia graphics card. Unfortunately I use an ATI/AMD graphics card. Given the time-intensive nature of many of my other filters, the GPU acceleration is not really an issue--I'd be happy with a CPU h264 decode fallback, but sadly that appears not to be an option.

FFmpegSource and DirectShowSource are used by a fair number of people it seems, but the warnings about lack of frame accuracy, burned-in subtitles, and the lack of an index file to extract information from give me pause.

So are there any other options? Or are my problems with any of the aforementioned solutions ill-founded?

Mounir
4th March 2013, 15:01
you can use directshowsource and use coreavc as decoder, see image below:
http://imageupload.org/en/file/247474/coreavc.jpg.html
DgNV is best though

Guest
4th March 2013, 15:39
I recommend you to ditch the ATI card and get an nVidia one (preferably VP5)!

You can also consider DSS2().

CarlEdman
4th March 2013, 18:27
Ah, well, if that is the way it is, I'll buy a GTX 660.

Alex-Kid
5th March 2013, 18:47
¿What about DGAVCDecDi (http://neuron2.net/dgavcdecdi/dgavcdecdi.html) (licensed)? It uses the DiAVC (http://www.di-avc.com/) software decoder (also licensed) which support multi-core decoding (for all of us who don't have NVidia video cards). I am using it since 2010 and works flawlessly with my HDTV caps!

CarlEdman
5th March 2013, 19:23
Good question, Alex-Kid. Any comparison to DgNV?

Also I wonder what h264 decoder the various point-and-click transcoders like Handbrake use?

Guest
5th March 2013, 19:35
DGNV supports all three video formats AVC, MPEG2, and VC1. It has GPU-based deinterlacing and resizing, MKV support, MP4 support, and several other things that are lacking in DGDI. Also, DGDI will likely not be further developed whereas DGNV will.

The DI licensing can be a bit of a headache sometimes, too.

Your DG license gets you both BTW, but to use the DI stuff you need the DiAVC license also.

Alex-Kid
5th March 2013, 20:59
That's right, DGAVCDecDi only works with h.264 streams (MKV and elementary). But it can also demux audio, even the AAC LATM/LOAS streams present in most ISDB-Tb and DVB-T/T2 broadcasts.

neuron2, this filter is very good, maybe only beaten by DGNV, even when it's not updated since 2011!

me7
11th March 2013, 23:28
I'll reuse this thread because I have trouble reading interlaced AVC into Avisynth. What's the current state of the art?

CarlEdman
12th March 2013, 01:45
According to my research and one week's worth of experience DGDecNV is pretty good at deinterlacing interlaced AVC. I use DGSource("foobar.dgi", deinterlace=1, use_pf = true) in my avisynth scripts by default. It appears to do the right thing on both interlaced, progressive, and mixed source material as long as the frames are properly marked.

me7
12th March 2013, 01:53
I don't want the filter to deinterlace it, I just want frame accurate seeking.
FFVideoSource() and DSS2() both seem to mess up in some way and DGDecNV is out of the question since I don't have an nVidia card.

StainlessS
12th March 2013, 14:47
This is a batch file I normally use for ffmpeg to AVI using utcodec


setlocal

REM Where to Find ffmpeg
set FFMPEG="C:\BIN\ffmpeg.exe"

REM Where to get input file, No terminating Backslash, "." = current directory
set INDIR="."

REM Where to place output file, No terminating Backslash.
set OUTDIR="D:\AVS\AVI"

FOR %%A IN (*.wmv *.mpg *.avi *.flv *.mov *.mp4 *.m4v *.RAM *.RM) DO (
%FFMPEG% -i "%INDIR%\%%A" -vcodec utvideo -acodec pcm_s16le "%OUTDIR%\%%~nxA.AVI"

)

Pause