View Full Version : DGAVCDecNV 1.0.13: GPU decoding on Nvidia
Guest
25th October 2008, 14:03
The license model is not an obstacle. The features could be combined with only the NV support being controlled by the license file. In other words, to turn on NV support you need the license file, but not for libavcodec operation.
The thing is, though, I am highly pessimistic about libavcodec ever being fixed to the level needed for proper operation in a frame accurate seeking application. For me, NV is the only viable way right now. Maybe CoreAVC will come through with an API, but I'm not holding my breath.
rack04
25th October 2008, 17:32
* I strongly recommend killing the MEGUI preview before starting the encode. You can leave it open if you want to be perverse, but if you navigate in it after starting encoding, kiss your ass goodbye. And don't say I didn't warn you.
Does this also apply to Auto Encode? Using this feature closes the preview before allowing the user to select the output size and addition content. Just wondering because this freezes MeGUI when using DGAVCDecNV 1.0.5.
Guest
25th October 2008, 17:36
I never heard of Auto Encode. I'll look into it. Please tell me the exact steps you take to cause a freeze.
rack04
25th October 2008, 18:27
I never heard of Auto Encode. I'll look into it. Please tell me the exact steps you take to cause a freeze.
Load the script into the AviScript Script input. The preview is opened when the script is loaded. Go to Tools and then AutoEncode. This is where the freeze happens. If I close the preview before clicking on AutoEncode is does not freeze. I use AutoEncode to set the output size and to mux the audio and chapters with the video.
Guest
25th October 2008, 18:35
Load the script into the AviScript Script input. I can't make any sense of that. Can you try again, please?
If I close the preview before clicking on AutoEncode it does not freeze. Seems to me that you should follow my strong recommendation then. :)
rack04
25th October 2008, 18:41
I can't make any sense of that. Can you try again, please?
Sure.
http://i11.photobucket.com/albums/a199/rack04/untitled-2.jpg
http://i11.photobucket.com/albums/a199/rack04/untitled1.jpg
Seems to me that you should follow my strong recommendation then. :)
See that's why I asked because this isn't actually doing any encoding, yet. :rolleyes:
Guest
25th October 2008, 18:45
Thanks for the clarification and for pointing out the issue. I'll have a look at it. In the meantime, close the preview window. Does that allow encoding to proceed normally with AutoEncode?
rack04
25th October 2008, 18:53
Thanks for the clarification and for pointing out the issue. I'll have a look at it. In the meantime, close the preview window. Does that allow encoding to proceed normally with AutoEncode?
So far so good. I'll let you know if 15 hours when it finishes. :p
BTW. The script is:
LoadPlugin("C:\Program Files\DGAVCIndexNV\DGAVCDecodeNV.dll")
AVCSource("F:\Blu-ray\Forbidden Kingdom.dga")
ultratoto14
25th October 2008, 19:07
Finished my first encode with staxRip and DGAVCIndex. Very happy that the server version resolve encountered problems.
Like blubberbirne, my encode lags, it seems to have duplicate frames instead of all frames.
Guest
25th October 2008, 19:15
Like blubberbirne, my encode lags, it seems to have duplicate frames instead of all frames. That's not good. I'll try to duplicate it. Any further materials you can provide to help me duplicate it will be appreciated.
ultratoto14
25th October 2008, 19:24
I just tried to open the AVS in virtualDub, pressing the right narrow to play the file i can see the lags in live, but if i return to a previous point in the movie and replay the same part, I cannot reproduce it again.
So this is unpredictable. What do you need ?
Guest
25th October 2008, 19:33
Playing the AVS will not be smooth, as DGAVCDecodeNV is not designed as a player application. But returning on the timeline gets frames from the Avisynth cache, which will not have decoding delays. So it is normal.
The important question is: Does your encoded file have unexpected duplicate frames?
lexor
25th October 2008, 19:35
ultra (and everyone else with the problem) what decoder are you using? I tested the old preview of avcsourceNV (during early development, i hijacked my friend's machine to play around since I don't have NV), and did encounter such a problem (the lag), but then I played the output on PS3 and it was smooth as silk. I assumed at the time it was libav decoding issue (ffdshow) or faulty mp4 splitting in haali. Though I'm not sure what triggers it and what it has to do with the source frameserver (one would think it's the output x264 profile that matters).
ultratoto14
25th October 2008, 19:40
Ok, effectively, there is duplicate frames. In one of them the frame seems cut in the middle with a shift between the up part and the down part (a man walking on the snow, his trunk is no more in front of his legs). In this case the old frame is repeated on the up part, only the down part is the new frame.
I encode the same part of the movie three times : 2 with AVCSource from DGAVCDecodeNV, one from directshow. Same encoder settings, the two NV based encodes lags at different moment, the one form directshow doesn't.
Guest
25th October 2008, 19:45
OK, thank you. I know from your description exactly what is happening. The server is re-using the shared memory before the client is done with it. I'll release a fix ASAP. Thank you for your very clear and valuable trouble report.
@lexor
There are two unrelated meanings for "lag" here. I'm sure it's clear now after you realize the issue I mentioned just above.
Guest
25th October 2008, 20:02
I have fixed CUVIDServer.exe and replaced it in the 1.0.5 zip file.
Please re-download 1.0.5 and try again with the new CUVIDServer.exe.
ultratoto14
25th October 2008, 20:24
Tested, no more duplicate frames ... but now my frame is shifted to the right about a few pixels. The remaining right part of the frame is on the left
8958
Guest
25th October 2008, 20:31
Oh crud, a cropping rectangle with cropping on the left.
I need a stream like this. Please post a link to a piece of the unprocessed source. It doesn't have to be very big.
Thank you.
ultratoto14
25th October 2008, 21:13
It takes me a long time since i have a very slow internet connection, here is the sample you want http://www.mediafire.com/?sharekey=ee3a5fd37f656c1cab1eab3e9fa335caf4cff8d127bac7ae.
8800 GTS 512Mo
Guest
26th October 2008, 00:35
Thank you.
But there is no cropping rectangle and I cannot duplicate the issue. I made a basic script with just AVCSource() and then encoded in MEGUI with DXVA HD Fast.
Please tell me exactly what you did to make that happen. Include your script, MEGUI profile, and everything up to and including how you made that frame grab. I can't fix a problem if I can't duplicate it.
Zwitterion
26th October 2008, 00:59
Please tell me exactly what you did to make that happen.
I get that problem, too.
Indexed the sample using 1.0.5, started the server and opened the dga file with DGAVCDecodeNV_AVCSource("sample.dga"). Viewing in VirtualDubMod.
Guest
26th October 2008, 01:09
It doesn't happen for me. Does it show wrong in DGAVCIndexNV?
Does it show wrong using 1.0.4 (non server version)?
Please post the log from a preview.
Guest
26th October 2008, 01:15
Whoops, I'm duplicating it with the uploaded binaries. Stand by...
Guest
26th October 2008, 01:21
Redownload 1.0.5. I forgot that DGAVCDecodeNV.dll was updated also. :o
Zwitterion
26th October 2008, 01:33
Works now. :)
Guest
26th October 2008, 01:33
Thanks guys, what would I do without you?
EDIT: I just updated the sample CUVID Client application as well.
ultratoto14
26th October 2008, 08:06
I wake up and my problems are gone !! Thank you.
tofans
26th October 2008, 21:50
Sorry, if this is a bit offtopic, but which method of deinterlacing is used by the PureVideo deinterlacer?
How does it compare to Yadif or even Mcbob in terms of Quality?
I understand there is no way of choosing a particular method in the nvidia control panel. Is there a difference in terms of method/quality between the XP and Vista drivers?
I guess my basic question is: If I have an interlaced source and want to archive good quality, should I use Yadif or PureVideo?
Guest
27th October 2008, 00:00
If you look through the 16 pages of the thread, somewhere you will find some screenshots. In my opinion, PureVideo is better and faster than the available Avisynth filters.. It does only single rate for now (no bobbing).
I don't think there's any difference between XP and Vista, as it is a hardware function.
Sagekilla
27th October 2008, 00:56
Indeed, I did a mini comparison of TempGaussMC (using naive defaults) vs the built in VP deinterlacing and nvidia's implementation came out on top. IMO, for the naive user who just wants it to work right, the deinterlacing interface provided by DGAVCDecNV is very handy, or well anyone who wants good deinterlacing :)
If I find more interlaced H.264 sources I'll post the results too.
Edit: Here (http://forum.doom9.org/showthread.php?p=1185415#post1185415) are the results
Audionut
27th October 2008, 15:58
Strange error using with x264 on Vista 64.
avis [error]: unsupported input format (DIB )
x264 [error]: could not open input file 'd:\test.avs'
I've used the same workflow I have always used on winxp.
The avs file loads fine in virtualdub and mpc.
And as far as I can tell it is yv12.
edit: and it works with the same x264.exe in megui but not the cli.
ultratoto14
27th October 2008, 16:05
@Neuron2 :
1 - I use TSMuxer, eac3to and DGAVCindexNV to extract audio from a m2ts file. The 3 resulting ac3 are exactly the same (great !!) but the one extracted from DGAVCindexNV is marked with a delay of -265 ms. And when remuxed with this delay, the file is not in sync. I tried two others files muxed with TSMuxer and the -265 ms is present every time.
Do you have any clue on that ?
2 - What is the roadmap of DGAVCindexNV : VC1/MPEG2 support ?
Thanks for all, my first encode with the CUVidServer is grrrrreeeeaaaattt.
Guest
27th October 2008, 16:09
Strange error using with x264 on Vista 64.
avis [error]: unsupported input format (DIB )
x264 [error]: could not open input file 'd:\test.avs'
I've used the same workflow I have always used on winxp.
The avs file loads fine in virtualdub and mpc.
And as far as I can tell it is yv12.
edit: and it works with the same x264.exe in megui but not the cli. Provide:
1. The version of DGAVCDecNV you are using.
2. The x264 CLI command that fails, and the version of the x264.exe you used.
3. Your exact script.
4. A piece of the unprocessed source stream that will allow me to duplicate your issue.
But if the exact same thing doesn't fail on XP, you're on your own because I don't use Vista 64.
Audionut
27th October 2008, 16:13
1. latest.
2. --crf 18.0 --level 4.1 --keyint 24 --min-keyint 2 --ref 3 --mixed-refs --bframes 3 --b-adapt 2 --weightb --direct auto --subme 7 --trellis 1 --partitions p8x8,b8x8,i4x4,i8x8 --8x8dct
--qpmin 1 --qpstep 6 --ipratio 1.3 --pbratio 1.1 --vbv-bufsize 40000 --vbv-maxrate 40000 --scenecut -1 --me umh --threads auto --thread-input --aq-mode 0 --progress --no-psnr
--no-ssim --output "output" "input"
3. loadplugin("d:\dgavcdecodenv.dll")
avcsource("d:\test.dga")
spline36resize(1280,544)
removegrain()
4.Give me a minute.
The error occured with a basic loadplugin, avcsource script aswell.
Guest
27th October 2008, 16:15
1 - I use TSMuxer, eac3to and DGAVCindexNV to extract audio from a m2ts file. The 3 resulting ac3 are exactly the same (great !!) but the one extracted from DGAVCindexNV is marked with a delay of -265 ms. And when remuxed with this delay, the file is not in sync. I tried two others files muxed with TSMuxer and the -265 ms is present every time.
Do you have any clue on that ? If you give me an unprocessed source stream that includes the beginning of the stream and has an AV sync event like a door slam or someone talking, then I can investigate.
2 - What is the roadmap of DGAVCindexNV : VC1/MPEG2 support ?
Things I'd like to do:
PureVideo bobbing
VC-1
MPEG1/2
Guest
27th October 2008, 16:17
The error occured with a basic loadplugin, avcsource script as well. But not on vanilla 32-bit XP?
And what happens if you just load the script into VirtualDub?
Where did you put nvcuvid.dll? You should not use nvcuvid64.dll. You should put nvcuvid.dll in your sys32wow directory. That may not be the exact name but it is something like that. :)
Also, check the Nvida driver version. It must support CUDA.
Audionut
27th October 2008, 16:31
1. no
2. works fine. Also works fine with the same x264.exe in megui.
3. Didn't put anywhere, but tried system32 and syswow64, didn't make any difference. Works in megui without me putting it anywhere.
4. latest driver 180.43 iirc.
See pm for sample.
Edit. It seems awfully strange that it doesn't work in cli but does in megui.
Guest
27th October 2008, 16:54
Your answer to 1 is ambiguous. Does it or does it not work fine on 32-bit XP?
You have to put the correct DLL in the correct place! Get rid of all the existing nvcuvid.dll and nvcuvid64.dll and put the nvcuvid.dll from the zip file into the correct directory for Vista 64 32-bit DLLs. I don't lknow what that is as I don't use Vista 64.
Audionut
27th October 2008, 17:30
Worked fine on 32-bit xp.
There are no nvcuvid or nvcuvid64.dll's on my system. I tried putting nvcuvid.dll in the correct directory. It didn't make a difference.
Guest
27th October 2008, 18:11
I can't help you with Vista 64. Sorry. When you figure it out, please let us know.
ultratoto14
27th October 2008, 21:19
I put two samples of files with delay not detected by other programs here : http://www.mediafire.com/?sharekey=ee3a5fd37f656c1cab1eab3e9fa335caf4cff8d127bac7ae
adiabatic
28th October 2008, 07:06
MEGUI does some real goofy stuff internally. It opens the script 7 times for a simple 2-pass encode!
I noticed this in the changelog for the 0.3.0.3005 dev Oct 23 release of MeGUI:
"Removed filename passed to new VobinputWindow as SetConfig passes it anyway.This way OpenVideo isn't called twice."
Any chance that this simplifies things?
ultratoto14
28th October 2008, 11:29
Hello neuron2, do you know if there are options about frame deblocking or filtering on the Nvidia cuda interface ?
Guest
28th October 2008, 13:19
Any chance that this simplifies things? I don't know, but it appears to be irrelevant at this point as the current version of DGAVCDecNV works with MEGUI.
@ultratoto14
I don't know, but in any case, there are no options for such a thing exposed in the CUVID interface.
Guest
28th October 2008, 13:38
I put two samples of files with delay not detected by other programs here : http://www.mediafire.com/?sharekey=ee3a5fd37f656c1cab1eab3e9fa335caf4cff8d127bac7ae I appreciate your effort but one appears to have no audible audio and the other does not contain an AV sync event that I can use to judge the real sync. It needs to be long enough to include someone talking, a door slam, or something like that (of course with nothing cut between then and the start of the stream.
Different programs can see different delays depending upon how they do their demuxing, etc.
Guest
28th October 2008, 14:16
I decided to unlicense the CUVID Server and release its source code under GPL.
http://neuron2.net/dgavcdecnv/cuvidserver100.zip
ultratoto14
28th October 2008, 15:36
Just another question about the roadmap :
As the current release work for h264 but allow only one instance at a time, isn't it more simple to support VC1 and mpeg2 in this release and after that give more time for bobbing, etc ?
(I really miss VC1 support, :p)
Guest
28th October 2008, 15:52
The bobbing solution won't require multi instances.
The priorities are not entirely in my control. Much depends on Nvidia deliverables.
kemuri-_9
28th October 2008, 18:18
The priorities are not entirely in my control. Much depends on Nvidia deliverables.
from the current condition of the nvidia code, what can you currently achieve towards your plans?
crypto
29th October 2008, 01:08
I decided to unlicense the CUVID Server and release its source code under GPL.
http://neuron2.net/dgavcdecnv/cuvidserver100.zip
:thanks:
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.