Log in

View Full Version : Virtualdub MPEG2 and Nvidia's PureVideo


Waleska
11th June 2006, 04:29
Do you know how to make them work together?. Thanks again.

Audionut
11th June 2006, 07:32
VDub is VFW and purevideo is Directshow.

MrTroy
11th June 2006, 12:15
There is a VirtualDub subforum (http://forum.doom9.org/forumdisplay.php?f=22), maybe this thread belongs there?

Waleska
11th June 2006, 16:26
@Audionut: thanks for enlightening me.
@MrTroy: The forum description says "VirtualDub & VDubMod related discussions", no mention of VirtualDub MPEG2, so technically it doesn't belong there.

mike_lee
15th June 2006, 02:45
Personally I'm tired of the whole "It belongs in this thread" thing. It always sounds elitist and condescending. A better way to word it might be, "You might find more help in the X thread which is dedicated to X"

Audionut
15th June 2006, 06:16
Thanks. I'll start posting Mpeg2 related discussions in the dvd authoring section.

easy2Bcheesy
15th June 2006, 08:51
Do you know how to make them work together?. Thanks again.

Presuming PureVideo is your primary MPEG2 decoder, surely AviSynth and its DirectShowSource() command should interface the two?

G_M_C
18th November 2006, 15:52
Knowing that this thread was judged to be in the wrond thread (maybe a mod could move it to one of the AviSynth threads ?):

My question is: Would DirectShowSource () make it possible to make good use of PureVideo stuff ? And by that i dont refer to the MPeg2 part, but to the MPeg4/AVC/VC-1 etc. part.

So would opening a H264 file with DirectShowSource () make use of, for instance, CoreAVC (when it finally has GPU accelleration) ?

KoD
18th November 2006, 17:49
You completely misunderstand what PureVideo, Nvidia's PureVideo decoder, and hardware acceleration are and how they work.

G_M_C
18th November 2006, 19:11
You completely misunderstand what PureVideo, Nvidia's PureVideo decoder, and hardware acceleration are and how they work.

Care to elaborate on that comment ? It is quite possible that somebody that asks a question doesnt know something. Else he wouldn't ask the question in the fist place now, would he ?

So please, dont act so stuck-up and explain what you mean. There even might be more people that are curious about the anwer. Cause my question is quite simple; Will Purevideo-decoding get used, when i open a clip through AviSynth's DirectShowSource ().

KoD
19th November 2006, 12:36
Will Purevideo-decoding get used, when i open a clip through AviSynth's DirectShowSource ().

Answer to your question is no.
Reason: normal playback of mpeg2 video stream when viewing on the monitor is like this: your mpeg2 stream gets extracted from your container by a splitter -> goes to nvidia's purevideo video decoder (which is only a decoder for mpeg2; it doesn't know how to decode mpeg4 streams like avc) -> nvidia's decoder tries to connect to a rendering engine and checks to see what are the abilities of the rendering engine that is going to be used for presentation on the monitor -> if that rendering engine is something like overlay/vrm 7/vrm 9 and the graphic card advertises it can perform hardware acceleration (usually consisting in only various deinterlacing methods), nvidia's decoder will decode the incoming stream according to mpeg2 decompression algorithms, send the decoded frames(actually fields) to the renderer and let the hardware perform those operations (deinterlacing mostly, as I've already said). See, hardware acceleration is used by the rendering engine (the one that displays the frames on the monitor). Although it's advertised in a lot of places, I only know of ati's crappy avivo conversion/encoding application that uses the shader units on the graphic card as an additional CPU.
Now, your workflow: avisynth with directshowsource() in the script: nvidia's decoder sees the filter it will connect to advertises no hardware acceleration abilities, hence it will try to perform in software all required steps: decoding the frame according to mpeg2 decompression algorithms and perform deinterlacing on the resulted fields to output progressive frames -> avisynth receives these frames. The graphic card is not used anywhere.

There's also a confusion on what PureVideo really is. It stands for two things really:
1. nvidia's commercial mpeg2 & ac3 decoder
2. Microsoft defined in DXVA a series of operations the graphic card manufacturers can implement to be done on their hardware rather than have it performed in the software; nvidia's implementation of the set of dxva features they chose to implement in hardware is being comercially advertised as "PureVideo". They went a little bit further even, by implementing some things that are not amongst the dxva features like h264 decoding assist - but this is available only through their proprietary API (which means any writer of a decoder that wants to use it must sign an agreement with nvidia to receive the required documentation and some money transfer probably needs to take place as well)

G_M_C
20th November 2006, 09:53
[...]
Answer to my question & the explination
[...]

Thx for the anwer. I needed this answer to give me some input on how to configure/setup my system after a (re)format and (re)furbish.

I do a lot of H264 <-> XviD (for stand-allone players) conversions. Because of that i needed to be shure that i download and/or purchase the correct (needed) software. So that meant finding what the best option would be for for H264, and finding out if PureVideo would be of use to me (befor spending money on it).

So thanx :)