Log in

View Full Version : DGAVCDecNV 1.0.13: GPU decoding on Nvidia


Pages : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 [21] 22 23 24 25 26 27

Guest
14th February 2009, 20:35
You're most welcome. Thank you for your useful testing and feedback.

As long as I am here, I'll mention a difficult issue I am working on. I ripped a blu-ray (Rolling Stones "Shine A Light") and found blocking on seeks in DGAVCIndexNV. It turns out that the PPS id 0 is being reused but the updated PPS's are sent once long before the seek point. That makes it VERY difficult to seek in such streams. It was OK when served because DGAVCDecodeNV injects the last PPS seen before a seek point (he has the index file). But when seeking in DGAVCIndexNV, you can just position to a random point in the timeline and thus the file. If the needed PPS has never been seen and is 50 MB back in the stream, what to do??? It's OK for blu-ray because they control the available seek points.

My options are:

a) forget it

b) add a "pre-parse PPS option", which could be used for such streams. You'd load your file and make a pass over the stream to collect PPS's. Then when you seek, you know the previous PPS.

Thoughts?

And while talking about this blu-ray disk, I found something else very interesting. I used AnyDVD HD to decrypt. Then, as I always do, I used Windows Explorer to copy the M2TS file to hard disk. But Explorer bombed out on copying a 40GB file. Insufficient resources nonsense. I Googled around and tried various things: Robocopy, xcopy, etc. All bombed. Then I thought let's try DGSplit with the segment set to the whole file and the destination set to the destination drive. It worked! Of course, it uses fread/fwrite rather than the Windows file copy API.

madshi
15th February 2009, 14:50
It's OK for blu-ray because they control the available seek points.
Do you have more information about that? I'm having some trouble with some specific Blu-Ray titles where seek points are very rare. Currently I'm looking for IDR frames or SEI recovery points. Is there any other way in Blu-Ray to manage seek points? Thanks!

Guest
15th February 2009, 15:24
I just meant that the blu-ray player software has navigation that exposes only certain seekable points. It's described in the blu-ray spec. You can't just jump in anywhere. I'm still investigating this issue and will report more as I learn more.

laserfan
15th February 2009, 17:50
Hate to bother on a Sunday morning about this little thing, but I've not noticed this before, and am anal as hell so here goes. I like to index a .h264 file, re-encode it, then index the re-encoding itself, using VDub to double-check that my chapter marks have been set correctly, before tsMuxeR-ing to BD format. I noticed this about DGAVCIndexNV log files, when working inside a single directory:

1. Open video1.h264, Save Project as video1.dga, get video1.log from DGAVCIndexNV

2. Later, open video1.264 (output/result) and Save project as test.dga, to distinguish from the original video1.dga, but this overwrites original video1.log with a new video1.log, thus losing the original logfile

I'da thunk the log output would match the Save Project name, not the name of the video that I opened. No big deal, but I like to save all log files...

agilpwc
15th February 2009, 21:47
Just got this wonderful accelerator. Trying it out on some sample footage that was posted on the net from a Panasonic HMC 150.

http://www.dreamoncreative.com/~dvxuser/PRIVATE/AVCHD/BDMV/STREAM/

Most of the clips worked, but I had trouble with #4 and #95. Here is what happens, from command line, the index program is called and comes up, but doesn't do anything just sits their with a black screen. If I manually save the project I see no video in the window but it does index. Then when the script is opened in virtual dub I get an immediate divide by zero error and crash.

All the other clips worked without issue.

Guest
16th February 2009, 03:19
Hmm, weird. I was getting problmes, too, but not what you reported. Then I rebuilt the software completely and then it started working fine with 4 and 95. So please redownload 1.0.12 and try again. Let me know if there is still an issue.

agilpwc
17th February 2009, 18:08
Yes wonderful whatever you did seems to have fixed the problem.

One small thing, which isn't really an issue is when you invoke from the command line with a non existent input file the program just crashes. Just thought I would mention in case you wanted it to exit more gracefully.

Guest
18th February 2009, 02:58
One small thing, which isn't really an issue is when you invoke from the command line with a non existent input file the program just crashes. Just thought I would mention in case you wanted it to exit more gracefully. Thanks for the report. I'll certainly do something more sensible than crashing. Silly me.

Clumpco
23rd February 2009, 12:46
Hi Neuron2,

I have just discovered that connecting via RDP causes the frame server to throw errors. If it is serving you get display frame errors, if it is waiting it will not start.

Currently I am on V 1.0.3 and nvidia 6.14.11.8048 - I shall update later and see what happens. If necessary I can post the actual error messages later too - at present I have an urgent encode to do (which is why I tried to RDP in the first place).

Cheers

squid_80
23rd February 2009, 13:03
Remote Desktop kills Direct3D, which is the base that the CUDA video decoder sits on. Hence CUDA decoding will not work with it, use a different remote login solution such as VNC.

Clumpco
23rd February 2009, 13:12
Remote Desktop kills Direct3D, which is the base that the CUDA video decoder sits on. Hence CUDA decoding will not work with it, use a different remote login solution such as VNC.
Hmm that sucks... as does VNC compared to RDP (Microsoft gets something right for once).
Thanks anyway...
Now, how to get MeGui to email me when it's done encoding?

squid_80
23rd February 2009, 13:31
Dunno... I've used a win32 command line program to send emails before (bmail.exe) but have no idea if it can be integrated into MeGUI. Maybe it could be added to the avisynth script using the Call plugin.

turbojet
25th February 2009, 10:54
Do the DGDecNV tools work on 64 bit operating systems?
A friend of mine keeps getting ERROR: culnit failed (100)
He has windows vista 64 home, GeForce 9800GT and he said the latest nvidia driver and copied nvcuvid.dll to system32 and syswow64 overwriting the ones already there. Any ideas?

Esurnir
25th February 2009, 13:06
Do the DGDecNV tools work on 64 bit operating systems?
A friend of mine keeps getting ERROR: culnit failed (100)
He has windows vista 64 home, GeForce 9800GT and he said the latest nvidia driver and copied nvcuvid.dll to system32 and syswow64 overwriting the ones already there. Any ideas?

It work -perfectly- fine on my vista 64

onesloth
25th February 2009, 16:32
... and copied nvcuvid.dll to system32 and syswow64 overwriting the ones already there. Any ideas?

My understanding is that:
a) the system32 directory on Vista64 is *only* used for 64-bit drivers (i.e. not the DGAVCDecNV's included nvcuvid.dll).
b) nvcuvid.dll no longer needs to be copied anywhere as long as it's in the same directory as DGAVCIndexNV.exe and the CUVIDServer.exe you are running.

xopowo
26th February 2009, 05:07
For 64-bit if he were so inclined as to have to move the .dll, it would go in the /system/ directory anyway, not system32

kemuri-_9
26th February 2009, 05:17
For 64-bit if he were so inclined as to have to move the .dll, it would go in the /system/ directory anyway, not system32

it would go into sysWOW64 not system or system32

xopowo
27th February 2009, 10:45
I thought sysWOW64 was only for xp/2003 x64 builds? I was thinking of Win7 64-bit btw when I typed what I did. I don't have Vista 64-bit (using 32). Having said that, I'll make sure next time I know what the heck I'm talking about and read more clearly before answering

kemuri-_9
27th February 2009, 13:50
SysWOW64 is the folder for things which use the Windows On Windows 64bit emulation subsystem.

all windows core 5 (XP/Server 2003) and core 6 (Vista/Server 2008) OSes that are x64 have it.

check out http://en.wikipedia.org/wiki/WOW64 for more info.

Sharc
1st March 2009, 11:48
I indexed an m2ts successfully with DGAVCIndexNV and created an avs script. I can playback and seek the avs in mpc without problem.
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).
What could be wrong?

Added:
Oops, I get the error also when I playback the script with MPC, and MPC stalls. So it has nothing to do with HCenc.

Audionut
1st March 2009, 12:18
I'm getting the same error with various sources and using all versions of DGIndex.

Sharc
1st March 2009, 14:56
I have redone the indexing using the basic (non-NV) version of DGAVCIndex. Everything went smoothly - but slower of course.
Could the NV Server problem be related to different nvcuvid.dll versions in the system32 (from NVidia update) and the local version shipped with DGxxxx and located in DGxxxxx directories?

laserfan
1st March 2009, 15:39
I have redone the indexing using the basic (non-NV) version of DGAVCIndex. Everything went smoothly - but slower of course.
Could the NV Server problem be related to different nvcuvid.dll versions in the system32 (from NVidia update) and the local version shipped with DGxxxx and located in DGxxxxx directories?I think DG has said that if nvcuvid.dll is in the same dir as the executables, and you launch from that dir, that it should work w/o conflict re: whatever the nvidia driver has installed to your system.

He'll be along shortly I expect to ask you to submit a sample so he can see the problem himself!!! :p

Guest
1st March 2009, 15:44
Please provide an unprocessed source stream that I can use to duplicate the issue. Everything is fine for me.

Also, tell me where you have ALL your nvcuvid.dll files? Do you have CoreAVC GPU version installed?

Sharc
1st March 2009, 16:08
Hmm, the file is 30 GB, the problem happens somewhere in the middle, but not at a particular frame when I try to duplicate.

Second question is easier to answer:
Yes, I have CoreAVC GPU installed on the system, but not actively running. Should I uninstall it and try again?

I have a copy of the nvcuvid.dll in each of the DG....NV directories. Same applies for the CUVIDServer.exe. They are synchronized, i.e. same version.
The NVidia copy of its nvcuvid.dll is in the systems32 - installed by the NVidia drivers update 182.06

Added:
Maybe I fired up CoreAVC GPU unintentionally by launching a mpeg4 file. Really not sure if this was the case. Would this have messed up? If so, is there any means to block a collision?

Guest
1st March 2009, 16:17
Please try temporarily overwriting the sys32 one with the DG one. Save the overwritten one to be able to restore it.

Sharc
1st March 2009, 16:23
I will do this as soon as the current encode is finished (2 hours to go). Thanks.

Guest
1st March 2009, 18:01
Hmm, if some source don't fail, it's unlikely to be a DLL problem.

Sharc
1st March 2009, 19:34
Exchanging the NVidia nvcuvid.dll with your version did not help. Same problem.
I'll try to extract the critical segment of the source and upload it.
The frame where it fails is blocky:

Esurnir
1st March 2009, 21:02
Exchanging the NVidia nvcuvid.dll with your version did not help. Same problem.
I'll try to extract the critical segment of the source and upload it.
The frame where it fails is blocky:

decryption problem ?

Sharc
1st March 2009, 21:12
I don't think so. It happens only with the CUVIDServer. The rip seems to be ok, I can playback it without error using DGAVCIndexNV.exe for example.

Guest
1st March 2009, 21:28
Is that frame gotten when playing linearly through with DGAVCDecodeNV, or do you have some seeking involved? What is your script?

Sharc
1st March 2009, 21:55
When I step linearly through the original (ripped) m2ts with DGAVCIndexNV.exe (in single step mode or in normal speed play mode) everything is ok. The CUVIDServer is not needed for that purpose.
I get the failure (picture in my previous post) only during playback of the avs script and with CUVIDServer running. Here the Script:

loadplugin"C:\Programme\Video\DGAVCdecNV\DGAVCDecodeNV.dll")
AVCSource("C:\Users\User1\Movies\Hellboy2 DVD\00009.dga")
#
#mod16 PAL DVD resizing and PAL speedup
#----------------------------------------
crop(0,16,-0,-24)
Spline36Resize(720,560)
AddBorders(0,0,0,16)
AssumeFPS(25)

Guest
2nd March 2009, 02:00
Yes, but you didn't quite answer my question.

With that script, do you see the problem when playing the script straight through from the beginning, or do you move on the timeline?

Sharc
2nd March 2009, 08:02
With that script I see the problem when playing it through linearly right from the beginning.
I also get it when I seek say 2000 frames before that picture and start with the playback linearily from there.
Just seeking to any random position on the timeline does not cause a problem.

Kurtnoise
2nd March 2009, 14:25
@Neuron2:

The documentation mentions that we can demux all audio streams found but it seems that the command line doesn't demux *all* audio streams from mkv file (only the first one):

DGAVCindexNV.exe -i input.mkv -o output.dga -a -e -h

Here is a sample for testing (http://www.mediafire.com/?jt0mynmygnj). It's a bug or a missing feature ?




@all: DGA files Creator added to the megui trunk...

Guest
2nd March 2009, 14:42
It's a bug or a missing feature? It's a missing feature. I'll fix it. Thanks for the sample.

Kurtnoise
2nd March 2009, 16:03
ok...and don't forget also to add this to the DGVC1IndexNV & DGMPGIndexNV tools. ;)

Sharc
3rd March 2009, 00:16
@neuron2
I re-ripped the disk again, indexed it again, but it didn't help.
The <cuvidDecodePicture() error> is reproduced.
Is there an easy way to extract the critical segment out of the 30GB file, so I coud upload the sample?

Guest
3rd March 2009, 00:29
DGSplit in segment mode.

~bT~
3rd March 2009, 02:17
@neuron2
I re-ripped the disk again, indexed it again, but it didn't help.
The <cuvidDecodePicture() error> is reproduced.
Is there an easy way to extract the critical segment out of the 30GB file, so I coud upload the sample?

i also had that problem with the matrix. unfortunately, the only way was to not use nvtools to decode.

Guest
3rd March 2009, 04:18
Well, boys, if you give me a sample, there's a good chance to get it fixed.

~bT~
3rd March 2009, 10:50
^ its too much trouble splitting a 24GB file for a 50MB sample :p

i wish i could give u a sample...

Guest
3rd March 2009, 15:04
What do you mean "too much trouble"? It would take only a few minutes. You only need to write the 50MB, not the entire stream. You could set a range and then demux, or you could use DGSplit in segment mode.

Sharc
3rd March 2009, 23:38
Well, boys, if you give me a sample, there's a good chance to get it fixed.
Here we go:
http://www.mediafire.com/download.php?jjqwnejomqn

rack04
4th March 2009, 03:24
I'm having problems getting the Command-Line Interface to work. For example, if I run the following Command-Line, a DGAVCIndexNV window opens but doesn't actually index the stream. Am I doing something wrong?

http://i11.photobucket.com/albums/a199/rack04/untitled.jpg

Guest
4th March 2009, 04:50
@rack04

Probably your input file spec is wrong. The window that opened shows nothing in the title bar.

@Sharc

I'm not seeing any problem with that stream. What are you drawing my attention to?

rack04
4th March 2009, 05:58
@rack04

Probably your input file spec is wrong. The window that opened shows nothing in the title bar.

Well I did some testing and here's what I found. When I restart my computer and run the same command line it works. If I try to run it again, without restarting, it doesn't process the input like described previously. I think the file gets locked.

Here's another observation:

Even though nothing shows in the title bar if you go file->open it shows in the file list. If I hit ok it proceeds.

http://i11.photobucket.com/albums/a199/rack04/untitled-1.jpg

Sharc
4th March 2009, 07:26
@Sharc

I'm not seeing any problem with that stream. What are you drawing my attention to?
- 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> ?

Guest
4th March 2009, 15:34
@rack04

I can't duplicate that. Can you please re-download DGAVCIndexNV and try again. There have been some silent updates.

@Sharc

It works fine for me. Thinking what to do...