View Full Version : DGAVCDecNV 1.0.13: GPU decoding on Nvidia
rack04
4th March 2009, 15:46
@rack04
I can't duplicate that. Can you please re-download DGAVCIndexNV and try again. There have been some silent updates.
I'll update and perform some more tests tonight when I get home. Thanks for investigating.
laserfan
4th March 2009, 16:20
- Index it with DGAVCIndexNV (.dga)
- Playback via avs Script and CUVIDServer
- see for example post 1029 and 1033
Don't you get a crash and the <cuvidDecodePicture() error> ?I dl'ed your clip and indexed and it played fine, then I tried your exact .avs w/resize and all is perfect, no errors, no blocks on that frame you cited.
I'm running XP Pro x64 and of course latest DG and CUVID and Avisynth 2.5.8.5/Vdub 1.8.6.
Oh, and also Nvidia 182.06 with its dlls in sysWOW64, and of course the ncuvid.dll from the DG package is with the DG executable.
~bT~
4th March 2009, 16:22
^ did u try encoding it?
rack04
4th March 2009, 16:23
Has anyone else experienced issues with the Command-Line Interface as I described above?
laserfan
4th March 2009, 16:52
^ did u try encoding it?I hadn't (why do you ask?) but I just did encode using x264. The output was a thing of beauty, no glitches:
General
Complete name : D:\Temp\video.264
Format : AVC
Format/Info : Advanced Video Codec
File size : 5.41 MiB
Video
Format : AVC
Format/Info : Advanced Video Codec
Format profile : High@L4.1
Format settings, CABAC : Yes
Format settings, ReFrames : 3 frames
Bit rate : 4 301 Kbps
Width : 720 pixels
Height : 576 pixels
Display aspect ratio : 5/4
Frame rate : 25.000 fps
Standard : PAL
Resolution : 24 bits
Colorimetry : 4:2:0
Scan type : Progressive
Bits/(Pixel*Frame) : 0.415
Writing library : x264 core 66 r1115M 11863ac
Encoding settings : cabac=1 / ref=3 / deblock=1:0:0 / analyse=0x3:0x113 / me=umh / subme=7 /
psy_rd=1.0:0.2 / mixed_ref=0 / me_range=16 / chroma_me=1 / trellis=1 / 8x8dct=1 / cqm=0 / deadzone=21,11 /
chroma_qp_offset=-3 / threads=6 / nr=0 / decimate=1 / mbaff=0 / bframes=3 / b_pyramid=0 / b_adapt=0 /
b_bias=0 / direct=3 / wpredb=1 / keyint=24 / keyint_min=1 / scenecut=40(pre) / rc=2pass / bitrate=4301 /
ratetol=1.0 / qcomp=0.60 / qpmin=10 / qpmax=51 / qpstep=4 / cplxblur=20.0 / qblur=0.5 / vbv_maxrate=17500 /
vbv_bufsize=14500 / ip_ratio=1.40 / pb_ratio=1.30 / aq=1:1.00
Sharc
4th March 2009, 19:56
@Sharc
It works fine for me. Thinking what to do...
When I play the script by stepping linearly forward frame by frame it jumps back and forth a few times just before it crashes.
Windows Vista Home Premium / nvidia Geforce 9600GS / GPU codename G94GS / latest updates of DGtools / nvidia driver version 7.15.11.8206 - nVIDIA ForceWare 182.06
~bT~
5th March 2009, 02:40
^ i tried your sample mate. no probs here. even encoded the sample.
can i ask what u are using to play it?
Sharc
5th March 2009, 18:46
As I said, the file as such has no problems at all. The problem comes only when I index the file with DGAVCindexNV.exe and play the script on any player. The cuvid server fails, not the player. It's the same for all players (mpc, mpc-hc, WMP, VirtualDub ...). Maybe something is weird with my system?
~bT~
6th March 2009, 02:23
^ i tried diff players. no probs.
Sharc
6th March 2009, 20:26
^ Good for you then. Something must be odd with my system/GPU I guess, but I have no clue what it could be.
onesloth
7th March 2009, 01:33
Something must be odd with my system/GPU I guess, but I have no clue what it could be.
Must be the same thing wrong with my system, then.
I get decoding errors just like you showed in post #1029. I only get them when I use a m2ts source (and I get them in all m2ts'). If I demux those same sources to elementary, they decode fine. Its also not random to each decoding: a particular source has the same error, at the same point, whether I'm playing the whole file or just trim to the timeline around an error.
I'm running Vista Bus. 64, a Q6600, an 8800GT, the newest DGAVCdecNV, whatever version of CUVID server comes with that download, and AviSynth 2.5.7.5 (with MT 0.7) (I had the same errors when I was using AviSynth 2.5.8 before I switched to MT).
Audionut
7th March 2009, 10:52
Now when I frameserve to HCenc I am getting - during pass1 - the error message box <Server: cuvidDecodePicture() error> and HCenc seems to be halted. The CUVIDServer process is however still running (task manager)
I tried an encode last night using version 1.0.10 and had no problems.
I'll try with version 1.0.11 tonight.
Sorry I can't provide more details Don. But it was happening with all sources at various times with all of your DecNV tools. I'm trying to nail it down on my end as best I can.
edit: oh and only started happening around the time all progs got updated including CUVID Server.
Sharc
7th March 2009, 12:26
I also thought about trying older versions like CUVIDServer 1.0.3 to check if it makes a difference. Unfortunately, I flushed these older downloads recently.
Audionut
7th March 2009, 12:28
http://neuron2.net/dgavcdecnv/
Sharc
7th March 2009, 13:28
Thanks!
Version 1.0.11 works flawlessly:)
Seems that the problem was introduced with 1.0.12.
Guest
7th March 2009, 14:33
Thanks!
Version 1.0.11 works flawlessly:)
Seems that the problem was introduced with 1.0.12. Ah, a clue. I'll look into what the differences were.
Just to be clear, when you say 1.0.11 works, you mean you cleared out all 4 of:
DGAVCIndexNV
DGAVCDecodeNV
CUVID Server
nvcuvid.dll
and reinstalled the 4 from the 1.0.11 distribution? If you did not revert all 4, which components did you revert?
Sharc
7th March 2009, 15:28
Yes, I reverted the full set to 1.0.11.
However, things appear to be more complicated.
Independent of version 1.0.11 or 1.0.12:
a) If I index the full .m2ts => the playback of the script fails
b) If I extract and demux the critical segment (my uploaded sample) and play the script immediately back, it fails.
c) If I index the demuxed sample clip again and playback the new script => playback is o.k., but it does not solve my problem for the entire movie.
As all of you are doing the test according to c) you cannot reproduce the problem. Doing more tests .....
Should I submit the .dga and .avs of a), b) and c)?
Update / Summary:
- When I index the original .m2ts, playback via CUVIDServer fails
- When I index and demultiplex the video, playback via CUVIDServer still fails.
The path in the .dga header points to the original .m2ts file
- When I re-index the demuxed video, playback via CUVIDServer is fine.
The path in the.dga header points to the .demuxed.264
laserfan
7th March 2009, 17:20
Yes, I reverted the full set to 1.0.11.
However, things appear to be more complicated.
Independent of version 1.0.11 or 1.0.12:
a) If I index the full .m2ts => the playback of the script fails
b) If I extract and demux the critical segment (my uploaded sample) and play the script immediately back, it fails.
c) If I index the demuxed sample clip again and playback the new script => playback is o.k., but it does not solve my problem for the entire movie.
As all of you are doing the test according to c) you cannot reproduce the problem. Doing more tests .....
Should I submit the .dga and .avs of a), b) and c)?Not exactly sure I follow the above, but from the Release Notes:
1. Only AVC/H.264 elementary (raw) and transport streams can be opened (no MKV or MP4 files yet). Only one file can be opened at a time.
You have got to demux your m2ts before attempting Index then Playback.
It *appears* to work, but there can be problems (yes I have done this myself in the past :o). If I'm right, that your .m2ts method is wrong and you need to be indexing .264 elementary streams instead, then @neuron2 maybe there's a simple check your tool can do up-front and abort with "Need elementary stream" or some such...?
laserfan
7th March 2009, 17:34
Update / Summary:
- When I index the original .m2ts, playback via CUVIDServer fails
- When I index and demultiplex the video, playback via CUVIDServer still fails.
The path in the .dga header points to the original .m2ts file
- When I re-index the demuxed video, playback via CUVIDServer is fine.
The path in the.dga header points to the .demuxed.264What does the 2nd one mean--you're still indexing the multiplexed video-with-audio?
Again, try always demuxing the video first, *then* indexing, and see if you can get CUVIDserver to fail.
Also, how exactly are you demuxing (what tool, what command).
Sharc
7th March 2009, 18:21
.....You have got to demux your m2ts before attempting Index then Playback.
It *appears* to work, but there can be problems (yes I have done this myself in the past :o). If I'm right, that your .m2ts method is wrong and you need to be indexing .264 elementary streams instead, then @neuron2 maybe there's a simple check your tool can do up-front and abort with "Need elementary stream" or some such...?
Ahhh.... I was not aware of this. I thought I read the doc carefully... Arrrgh!
Yes, I loaded the .m2ts original (video+audio+subs) directly into DGAVCIndexNV, then fired it up with <File/Save Project [F4]> rather than <File/Save Project and demux video>, and got the demuxed audio tracks and the index file (.dga).
Up to now this has always worked, perhaps I was just lucky.
After all, would I have to run DGAVCIndexNV twice, first pass to demux audio and video, and then second pass for indexing the demuxed.264 raw video?
laserfan
7th March 2009, 19:04
I dunno Sharc...I'm sure neuron2 will weigh-in shortly and straighten us out--his doc sez "elementary (raw) and transport streams" which could be interpreted I suppose as including .m2t(ransport)s(treams).
I've had his NV tools since mid-Jan but have never tried to use them to demux anything--usually I'm using eac3to to do that, cuz I'm modifying BD or HD DVD movies. Also I use VideoReDo to demux MPEG2 OTA TV recordings I've edited.
Guest
7th March 2009, 19:49
Direct opening of transport streams is supported. There is no need to demux.
If it works on the demuxed file but not on the transport streams, then it could point to a problem with the transport parsing. But I will need a sample transport stream that causes the problem. Try to cut a segment of the M2TS around the problem area using DGSplit in segment mode.
Sharc
7th March 2009, 20:45
Thanks guys. Seems we're getting closer.
@neuron2
I'll try my best to extract the questionable part of the original .m2ts.
Any suggestion what segment boundaries to choose, if the problematic part is at about the middle of the 30GB .m2ts file?
Guest
7th March 2009, 21:38
Thanks guys. Seems we're getting closer.
@neuron2
I'll try my best to extract the questionable part of the original .m2ts.
Any suggestion what segment boundaries to choose, if the problematic part is at about the middle of the 30GB .m2ts file? Get the file Sharc.zip from:
http://neuron2.net/misc/Sharc.zip
It's a modified DGAVCIndexNV. Open the transport stream and navigate to the bad spot. Then move back about 16 < steps and hit [. Then move about 15 > steps past the bad spot and hit ]. You have defined a project range around the bad spot.
Now hit F1. Specify a file name like cut.m2ts and OK. Wait for a popup saying it is finished. Then see if you can make the problem happen with just cut.m2ts. If so, upload cut.m2ts.
Note that this is a rudimentary TS trimmer. It doesn't cut smartly or even on packet boundaries. But it will give me what I need.
Sharc
8th March 2009, 00:58
As requested. Hope it helps.
http://www.mediafire.com/download.php?a4i3mj5znmy
Guest
8th March 2009, 01:42
Perfect. I can duplicate the issue now. Stay tuned...
[Don't tell anyone about the F1 trick. It will be an undocumented feature in all future releases. ;)]
Audionut
8th March 2009, 10:26
Perfect. I can duplicate the issue now. Stay tuned...
Yay. Thanks.
laserfan
8th March 2009, 14:52
[Don't tell anyone about the F1 trick...]Dumb question of-the-day perhaps: how is what you described above different from "normal trimming" that the tool does (which I have never used, in case this isn't obvious)?
Guest
8th March 2009, 15:06
Normal trimming can output a trimmed demuxed elementary stream or a restricted range of frames served via Avisynth. This feature outputs a trimmed transport stream. It's intended as a diagnostic tool only at this time.
laserfan
8th March 2009, 15:31
Normal trimming can output a trimmed demuxed elementary stream or a restricted range of frames served via Avisynth. This feature outputs a trimmed transport stream. It's intended as a diagnostic tool only at this time.Thank you for clarifying. I'd been thinking "dgsplit with a gui" but was being lazy ie. hadn't thought carefully enough about it or I just *might* have arrived at your first sentence on my own. Man I don't learn stuff anymore as easily as I did 50 years ago! :o
Guest
8th March 2009, 15:52
"dgsplit with a gui" That is exactly what the F1 functionality is!
laserfan
8th March 2009, 16:52
Re: "dgsplit with a GUI"
That is exactly what the F1 functionality is!
If this economy ever recovers, I am gonna send you all my extra money! :)
Sharc
8th March 2009, 20:16
Does this mean that you don't believe in the recovery of the economy? :p
laserfan
8th March 2009, 21:07
It means simply that I have succumbed to an "irrational exuberance" for neuron2's tools and docs and tutorials!!! :D
Guest
9th March 2009, 20:24
Yay. Thanks. I have located and fixed the problem. It affects the M2TS parsing in all the tools. I will regression test and release a fix hopefully tonight. Just wanted to let you know things will be all right. :)
Sharc
9th March 2009, 23:35
Looking forward ...... Thanks!
Guest
10th March 2009, 01:20
1. Added undocumented rudimentary "output trimmed TS" function invokable via the F1 key. Set a range and hit F1. It's for diagnostic use and is not supported. Think of "DGSplit with a GUI".
2. Sometimes opening a file would not display the first frame until a GOP step is done. Fixed.
3. Fixed Load Project bugs.
4. Fixed problem where specifying a bad file to the CLI caused a crash.
5. File/Close did not clear all state. Fixed.
6. CLI -a now demuxes all the audio streams for an MKV file.
7. The Info dialog did not show all MKV audio tracks. Fixed.
8. License check now allows for a single license file to support multiple machine IDs.
9. Fixed an M2TS parsing bug that caused corruption for some streams.
http://neuron2.net/dgavcdecnv/dgavcdecnv.html
@Sharc
Please advise if this fixes your issue. If you confirm it, I'll update the other tools.
xopowo
10th March 2009, 05:50
First of all, I love the program. Bought my license almost immediately after release and have been using it ever since.
But, as always, my ignorance prevails. So, I have a question.
I have used this program on 3 different operating systems. First with Win Xp (32-bit), then went Win 7 (64-bit), and then Vista (32-bit). XP and Vista work fine, but there is obviously the memory leak in Win 7, so I can't use that anymore until they fix it (MS presumably in this case).
Anyway, I have noticed something since I recently went back to XP (from Vista - just didn't care for it).
I have an nVidia 9600 GSO (768mb) and under Vista, I could encode an indexed dga file via avisynth with x264 and watch, say a movie or something, on my second monitor. Encoding would slow somewhat, but no crashes. Now, I'm back to XP (using 182.08 drivers), and I'm having the same issues that caused me to get a different video card in the first place.
History: I had a 256MB 8600XT and it would cause BSOD with the application (assuming it did not have enough memory on the card). I got an answer in this forum that recommended the video card to have a minimum of 512mb of RAM. No problem, so I upgrade to 9600 GSO with 768MB of RAM. Things did improve, and BSODs went away. Under Win 7 and Vista, I have not had an issue at all with this. Now, I went back to XP, and I'm having the issue again. Granted, it's only if I'm watching video while encoding, but it's definitely vexing me.
Therefore, I have to generate two questions:
(1) Could it be the drivers themselves? The only version of nvcuvid.dll I have on the box is in the DGAVCDecNV directory where I have the program, so there is no conflict there as I've read from others on here. So, thinking it is a driver issue.
or
(2) Does the application just love tons of memory? I'm willing to upgrade to a card with more memory if that is the case. But, they're expensive and since I don't play video games (demographic these cards are catered to), I don't want to spend money without educating myself.
Therefore, does it matter what GPU speeds are and threads and all that junk on the card, or as long as it's supported (the GPU itself with V1/V2) or if it's GDR2/3, etc. Or will just tons of RAM hellp mitigate this issue? I found a card with 2GB of RAM (9600GT) that is likely cruddy for gamers, but I could care less. I just don't want to BSOD while I'm encoding for long periods of time. Even if I do want to watch a movie while it's encoding (I only have one computer).
Thanks for any information one can provide in advance.
Guest
10th March 2009, 06:07
You're the only person I have ever heard of having BSOD issues. You might want to look at your system stability.
When you say you watch videos at the same time as encoding, what are you using to decode? I assume you are aware that multiple use of the GPU is a no-no.
xopowo
10th March 2009, 06:20
The system is very stable. I do have a slight overclock, but I'm prime stable for 20-hours.
And yes, I know that running video while encoding is not a good idea. But, I just don't have the patience to wait all too often and then clearly run into trouble.
So, assuming the system is stable, and clearly acknowledging that I "shouldn't" watch and encode using the same GPU, would more memory on the card benefit? I did gain stability greatly when I went from 256mb to 768mb.
However (and I realize this is not scientific), I did not have these issues in either Vista or Win7, it is only XP that does it? Odd to say the least. But, now I think I'm remembering why I may have switched from XP in the first place.
To answer your question, most of the decoding is either CoreAVC or XviD. Last night I BSOD'd twice watching an xvid video while I was transcoding h264 to x264 (mkv). I tried MPC and it BSOD'd, so I rebooted (well, computer did much to my chagrin), and after reboot, I tried same file with VLC. Same thing. BSOD, reboot. Stopped trying to watch and encode at the same time after that. Went to bed. Woke up; encode turned out well.
**EDIT** one thing that I must point out ... to my knowledge, this only happens if I have deinterlace=1 in the AVCSource line. If I use a filter other than purevideo functionality, I don't think it will BSOD, but I would have to test to absolutely confirm this.
onesloth
10th March 2009, 06:25
Please advise if this fixes your issue. If you confirm it, I'll update the other tools.
m2ts decoding now working fine for me with 1.0.13
Audionut
10th March 2009, 06:31
m2ts decoding now working fine for me with 1.0.13
Fixed the problems I was having too.
Thanks Don.
Clumpco
10th March 2009, 07:08
You're the only person I have ever heard of having BSOD issues. You might want to look at your system stability.
Erm? (Puts his hand up). I was just about to post about stability.
I had problems previously due to overheating (and trying to use nvidia decoder at the same time) but these were fixed. The system has been stable for weeks.
However I recently upgraded to version 1.0.12 (and server 1.0.4) and upgraded my nvidia drivers from 180.48 to 182.08... bad move!
BSOD's all around (just encoding, no capture, viewing etc. at the same time).
I have reverted to nvidia 180.48 and it still happens. I will try your version 1.0.13 and see if it is still the same.
Sharc
10th March 2009, 09:34
@Sharc
Please advise if this fixes your issue. If you confirm it, I'll update the other tools.
I will check and confirm when I am back from office (9 hours to go).
meatwad
10th March 2009, 09:52
This version generated a new machine id and now my license won't work. I deleted the new files and replaced them with 1.0.12 but the new machine id remained. It was working fine until I dropped the new files in so I'm at a loss as to why this happened. Hopefully when I reboot I'll have old id back, but it still won't explain why it gave me a new id when the files were still on the same partition. All I did was copy over the old files...
~bT~
10th March 2009, 11:01
However I recently upgraded to version 1.0.12 (and server 1.0.4) and upgraded my nvidia drivers from 180.48 to 182.08... bad move!
BSOD's all around (just encoding, no capture, viewing etc. at the same time).
I have reverted to nvidia 180.48 and it still happens. I will try your version 1.0.13 and see if it is still the same.
i'm using v182.06 and so far (touch wood) its going well.
meatwad
10th March 2009, 12:23
This is strange... I restored a Ghost image due to the machine id change. 1.0.12 is on the same partition it's always been on. I open DGAVCIndexNV and check my machine id. The machine id is fine. I then open CUVID server and staxrip (which opens DGAVCIndexNV to index a video). As soon as it begins I get the dreaded invalid license message (this time with 1.0.12) and sure enough I have new machine id.
Since no one else seems to be having an issue it must be something with my system. It's strange that it happened after I gave 1.0.13 a whirl.
Geezzzzz. It just came to me and I believe I I know what's causing it! This issue happens if you do a clean install and the OS doesn't assign "C" as the drive letter the OS resides on. It may be that my method of turning the drive letter to "C" is what's causing the issue. I don't believe it has anything to do with 1.0.13, but now I have to find another method to make the OS report "C" as the drive letter it resides on (the OS is actually on my "D" partition).
RAID 0 array 3 500GB WD drives as follows:
C:XP64
D:XP32
E:Whatever I feel like playing with.
Y:Editing/work partition
Z:Video Storage
I know Neuron2 will give me a new license if I ask, but this could happen again (if my assumption is correct). Anyway, I'll wait until he pops in to read this before I try anything else.
Clumpco
10th March 2009, 12:39
A problem (maybe) with 1.0.13.
The audio file has "DELAY -47721878ms"
The same .ts with ver 1.0.12 had "DELAY -20ms"
Wassup?
I have made the start of the .ts available by using F1 (I have checked and it gives the weird delay when indexed) HERE (http://www.clumpton.com/uknwebimg/ITVHD.zip)
(This is an ITV HD cap, with ads removed by TSPacketEditor)
meatwad
10th March 2009, 13:37
My assumption was wrong as the new machine id is in all three operating systems. I went to boot into XP64 so I could get some work done, but it happened there as well. Now I have to ask for a new key. Sorry Neuron2.
Guest
10th March 2009, 13:42
@meatwad
It won't happen again because the new machine ID method uses your MAC address and not your system partition. Email me your new machine ID(s) and I'll send you a new license file. Sorry for the inconvenience.
@Clumpco
Your link is not working. Please fix it so I can investigate the problem. Thank you.
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.