View Full Version : DG NV tools
Guest
10th August 2010, 13:41
I am using DGIndexNV for getting index files dga and Dolby digital sound from set of mts files. I do not have problem with video and audio, but how I can get subtitles from set of mts files?
If you post a link to a sample file I will look into implementing subtitle demuxing for it. It's on my to-do list so now is as good a time as any.
laserfan
10th August 2010, 13:50
Can DGdecodeNV take advantage of multiple nvidia video cards in the same system without SLI? (IE different models).
Not yet, but it will come in a new release pretty soon. Tell me what you need; I love to make my users happy.Regarding SLI, it seems to me that it's been stated already that doubling-up videocards (i.e. I have a 9600GT and SLI mobo--I could add another 9600GT in SLI mode) was no help to the decoding process. But then there have been driver changes/improvements where CUDA and SLI were mentioned in the same sentence. Please confirm: is "no help from SLI" still the case?
Guest
10th August 2010, 14:04
Sorry, I don't know squat about SLI.
Supporting mutiple cards can allow more filter instantiations. That is the only motivation for it that I am aware of.
tormento
10th August 2010, 15:27
Even choose which card (better, driver, to avoid Terminal Server or Remote Desktop problems) to use can be useful..
laserfan
10th August 2010, 16:51
Sorry, I don't know squat about SLI.Ha, ha! Well, I appreciate your candor! :D
Neither do I know anything about SLI, but I do have a sexy little jumper-bracket for linking two cards together...somewhere, provided I haven't lost it. That's all I know. :o
In one of the DGNV threads sometime ago someone said SLI didn't help; maybe that someone will trip across these posts and re-confirm...
Guest
10th August 2010, 17:08
Given that there is nothing in the CUVID API to allow/specify a context to span multiple devices, I think the chances of SLI accelerating video decoding must be infinitesimal, if not zero.
olex99
10th August 2010, 21:52
Being able to choose which GPU to do the decoding on would be a great addition. I've just upgraded from a 9500gt to a gtx460 and although DGNV still runs perfectly, i've found that while decoding videos it stops the Video Card from going into low power mode. With the new video card in, while decoding, my computer users another 200watts of electricity for no speed benefit as my encoding is the same speed using either the 9500 or the gtx460. In Australia, that 200watts of electricity it is using will end up being quite expensive when my electricity bill arrives as i'm encoding 24 hours a day.
What i would like to do is put my 9500gt back in, and set DGNV to decode on that which hopefully would allow my gtx460 to go into low power mode dropping my electricity usage considerably.
Would this work with what you are planning for supporting of multiple video cards?
I don't mind donating again if you can make this work this way.
Guest
10th August 2010, 22:31
Would this work with what you are planning for supporting of multiple video cards?
It will certainly allow you to select the card you want to run on.
Blue_MiSfit
11th August 2010, 00:18
@olex99:
Try underclocking / undervolting if you can?
Derek
levi
11th August 2010, 00:32
It will certainly allow you to select the card you want to run on.
That's great news. I'd like to used this to work around the RDP issue.
I was also thinking if I split my encodes in half & used multiple video cards that I could improve processing time by running the encodes of both halves at the same time.
I have a xeon quad core with turbo/hyperthreading. I can't seem to utilize more than 50% CPU even with MT.
JoeH
11th August 2010, 08:07
Not yet, but it will come in a new release pretty soon. Tell me what you need; I love to make my users happy.
As you may remember, I often use DGIndexNV AVS files inside of Sony Vegas Pro to edit H264 streams. This works fine, but is very slow to draw the thumbnails. Inside of a program like Vegas, the need for a fast decoder is quite extreme, as, lets say, a 2 hour clip shown in thumbnails across the screen is going to have to decode 20 different parts of the clip and display it. This typically takes between 7 and 10 seconds to do currently when I use DGIndexNV, while a codec optimized for video editing will appear in about 1 second.
I have no idea if this is possible, but here is what I would like to see. If there were a way for DGIndexNV to alternate petitions between video cards (decoding the first petition from Vegas (thumbnail 1) with video card 1, the second with video card 2, the third with video card 1, etc.) in theory this time could be halved.
If this were possible I would imagine that it could work in just about any scenario, basically duplicating the decoding speed of DGIndexNV.
Guest
11th August 2010, 13:06
>This typically takes between 7 and 10 seconds
Is that a one-time thing on file load into Vegas? So we're talking about saving 3-5 seconds when you open your file?
Multiple GPU support could only help if Vegas opens a new instance of the script for each thumbnail. I doubt that they do that.
JoeH
12th August 2010, 07:46
The 7-10 seconds is not only on initial load - it is everytime the thumbnails have to be redrawn (for example, zooming in on a certain part, etc.).
I'm pretty sure you are correct, and that Vegas only loads up one instance of the script.
What I suggest would only be possible if you could somehow go back and forth within a single script, dividing up the requests. If that's impossible, oh well!
hajj_3
12th August 2010, 09:50
Neuron: is this what you've been waiting for to allow you to use ATI cards to hardware accelerate DG NV tools? http://developer.amd.com/gpu/ATIStreamSDK/Pages/default.aspx
Gser
12th August 2010, 11:44
Neuron: is this what you've been waiting for to allow you to use ATI cards to hardware accelerate DG NV tools? http://developer.amd.com/gpu/ATIStreamSDK/Pages/default.aspx
Now that would be freakin' sweet.
Guest
12th August 2010, 12:31
I'm not waiting for anything from ATI. Anyway, there is nothing at the link you gave that contributes anything new for the purpose of decoding AVC/MPG/VC1 via a published and accessible API. They added OpenCL support. I'm not going to write a decoder in OpenCL.
Didée
12th August 2010, 14:02
Finally I generated a license and set things up (yes it took me that long to come to it). :o
So, I started out with build 2024, aaand ... generally everything works fine, but I found a problem.
E.g. "Clash of the Titans" from the benchmark thread. Upon opening, DGIndexNV starts reporting a NALU error. When hitting cancel, DGIndexNV crashes (win7 reports "...has stopped functioning" and starts serching for solutions). When acknowledging each error one by one, I find there are also two or three errors about data partitioning, hidden among plenty NALU errors. After acknowledging the last error, DGIndexNV crashes, Win7 starts searching for solutions.
The behaviour is identical for the 32bit and 64bit build.
Any idea what's going on? It seems other people benchmarked 2024 sucessfully with the Clash sample.
However, Clash makes no problems when I extract the raw *.264 video stream and use DGIndexNV on the raw. But it won't work with the original *.mp4.
Win7 HP 64bit, GT240, driver 258.96 WHQL.
nixo
12th August 2010, 14:13
DGIndexNV doesn't support mp4. The first post of the benchmark thread states that you must first demux to raw.
--
Nikolaj
Edit: To quote the DGIndexNV help: "Use this option to open the source media file(s) (elementary, program, transport, and Matroska streams only). You can also open BluRay MPLS playlist files."
Didée
12th August 2010, 14:22
> DGIndexNV doesn't support mp4.
You cannot imagine how stupid I feel now.
Guest
12th August 2010, 14:34
MP4 support is currently under development. Sorry for your inconvenience.
Sharktooth
12th August 2010, 15:44
@hajj_3 & neuron2: For UVD access on ATI cards we need to wait until StreamSDK 2.3 (Q4 2010) with OpenDecode.
LeXXuz
12th August 2010, 16:12
Making my first steps with DGDecNV and I'm quite happy with the almost 15% speed increase for my transcoding scenario. :)
I have a question about the resizer. From what I found in the forum it is just a bilinear resizer. I'd love to use that filter for speed increase, but output is a little bit too smooth for my taste. Are there any tweaks to the filter or in general to the picture possible like in the settings of the NV control panel?
Guest
12th August 2010, 16:43
Are there any tweaks to the filter or in general to the picture possible like in the settings of the NV control panel? No tweaks or settings are available at this time. Most people find bilinear just fine for downsizing. Is your concern theoretical or can you demonstrate it with a concrete example?
LeXXuz
12th August 2010, 19:52
Well to me it's clearly more than just theoretical. Have to admit I don't like the looks of bilinear filtering at all. Never did, thats why I avoided it and used bicubic or better filtering as soon as CPU power could afford it. That was almost over ten years ago.
It's not only that very "sensible" textures like skin pores look way more smooth to me (especially when a very subtile film grain is involved), high contrasts f.e. sharp edges do not look very good at all.
Here are two 1000 frames sample clips. The source is 1920x816 (cropped) resized to 1280x544. One is done with Spline36 the other with the internal NV resizer. You might take a closer look at the edges of the spinning yellow "Digital Factory" logo.
I guess I don't have to tell you which clip is which. I see the difference, clear as day, even on a 10 year old CRT.
Guest
12th August 2010, 20:48
Sorry but by giving MP4 files you make me jump through hoops and I don't have time for that. A simple source file and the scripts is what I could deal with.
Anyway, if you prefer some resizer that "sharpens" that is certainly your prerogative.
LeXXuz
12th August 2010, 21:13
Sorry but by giving MP4 files you make me jump through hoops and I don't have time for that. A simple source file and the scripts is what I could deal with.
Anyway, if you prefer some resizer that "sharpens" that is certainly your prerogative.
Apologies. I pushed 2 small clips through x264 just to show you the difference. Did not know that this would give you any extra effort, if I understand the phrase "jump through hoops" correctly.
The source is taken from a 22GB Blu-ray AVC-stream so I thought this would be the easiest way for a small demonstration.
I do not "prefer" sharp resizers at all, I would go with Lanczos then. But the way the NV filter treats edges is very poor for my taste. They simply look kinda scruffy. No big deal. Will stay with Spline and let CPU do the job. Im not that eager in a performance gain to sacrifice that much visual quality. ;)
stax76
12th August 2010, 21:42
Hard to believe somebody can see a difference, maybe with perfect eyes and monitor but using a TV???
edit:
I can see what you mean with scruffy now on the monitor but I had to watch it a few times, I guess on TV with some distance it's even harder to see.
Guest
12th August 2010, 21:44
Now that I've earned my wings in CUDA kernel programming, maybe I will make a nicer resizing kernel.
So much to do, so little time.
LeXXuz
12th August 2010, 21:46
Hard to believe somebody can see a difference, maybe with perfect eyes and monitor but using a TV???
By CRT I meant my good ol' 21" Diamondthron tube. ;)
tormento
12th August 2010, 23:56
Now that I've earned my wings in CUDA kernel programming, maybe I will make a nicer resizing kernel.
The most consuming thing while encoding but x264 is the denoise part. A Motion Compensated one could be nice ;)
crasus
13th August 2010, 02:25
Dear neuron2,
May I ask if using a GPU with VP4 and 96 cuda cores (say some GT240) or more would bring improvement when using DG NV tools as a HD decoder for x264, over an older GPU with VP2 and some ~30 CUDA cores? If so, what kind of improvement would it be?
Thank you for your time.
RedDwarf1
13th August 2010, 04:32
Dear neuron2,
May I ask if using a GPU with VP4 and 96 cuda cores (say some GT240) or more would bring improvement when using DG NV tools as a HD decoder for x264, over an older GPU with VP2 and some ~30 CUDA cores? If so, what kind of improvement would it be?
Thank you for your time.
Take a look in the benchmarking thread and you will see the improvement that the newer VP engines make.
The GT240's are the sweet spot for price/performance for NVTools. Not that it really makes that much difference for HD re-encoding because the encoding is the slow part and usually much slower than the decoding using an earlier VP engine.
But for HD>SD encodes the newer VP engines are much better but unfortunately they can still hold things back if you do Mpeg4 ASP encodes.
Clumpco
13th August 2010, 05:50
The GT240's are the sweet spot for price/performance for NVTools. Not that it really makes that much difference for HD re-encoding because the encoding is the slow part and usually much slower than the decoding using an earlier VP engine.Indeed.
Moving from a VP2 to a VP4 has given me a very slight improvement on faster X264 encodes during the first pass (58->60 fps). No difference on the slower (more CPU intensive) second pass.
However I imagine that if I swapped my trusty Q6600 for a much faster rig the difference would be greater.
Blue_MiSfit
13th August 2010, 06:54
Definitely. If you had a dual 6 core Xeon system, having a VP4 card would probably help :devil:
Regardless, if you have a VP4 card, adding more CUDA cores doesn't add any measurable performance difference. Remember, the decode isn't really happening on the GPU / CUDA cores. It's happening on an ASIC that's on the card (or on the GPU itself, not sure how integrated it is).
Derek
Rat Killer
13th August 2010, 12:48
Starting DGIndexNV.exe yields the following error message:
ERROR: cuModuleLoad C:\Program Files\DGDecNV\NV12ToRGB23_sm_20.cubin failed (200)
I am using an NVIDIA Quadro NVS 160M graphis processor in my laptop and the driver version is the latest (4.00.6163) offered by Dell.
Searching this tread suggests its a driver issue, is there a different video driver I should be using to be compatible with DGIndexNV or is there some other suggested solution?
Thanks
Guest
13th August 2010, 13:16
A one minute search at nvidia.com reveals:
http://www.nvidia.com/object/notebook-winxp-258.96-whql-driver.html
Rat Killer
13th August 2010, 13:30
Thanks. As Dell and nVidia number the drivers differently was not sure if that driver was newer or supported things differently or not. I'll give it a try. Appreciate the help.
LeXXuz
14th August 2010, 00:45
Remember, the decode isn't really happening on the GPU / CUDA cores. It's happening on an ASIC that's on the card (or on the GPU itself, not sure how integrated it is).
Now that explains everything. Thanks. I was wondering all the time why a really slow 8400 with only 8 cores outperforms much more expensive cards.
krosswindz
17th August 2010, 15:06
Thanks neuron2 for this amazing tool. I just got myself a license for this and tried it. I must say its just one awesome tool. Just one suggestion to neuron2 for this.
I read the release notes which requires one to disable screen saver/standby when using it. I was wondering if it would be possible to disable the screen saver if it is enabled from the tool. Possibly when the DLL gets loaded like during the initialization stage to disable the screen saver if enabled. During cleanup stage when the DLL gets unloaded after the encode to re-enable screen saver if it was enabled.
laserfan
17th August 2010, 16:41
I read the release notes which requires one to disable screen saver/standby when using it.Actually, the release notes state the following:
Activation of a screensaver or standby mode may interfere with proper operation of the NV tools. They should be disabled during use of the NV tools.
Italics are mine, but the point is "YMMV". I'm sure neuron2 will weigh-in on whether he cares to disable Standby in the GUI version, but for my part, although I don't use a screensaver, I do use Standby mode on my Win7 PC and therefore when using the cli version I include some .cmd lines like this:
@echo First prevent from going into Standby!
@echo ON
powercfg -change -standby-timeout-ac 0
powercfg -change -monitor-timeout-ac 1
do lotsa stuff, including
.
.
.
"C:\Program Files (x86)\DGIndexNV\DGIndexNV" -i D:\video\videoIN.%VIDEOTYPE% -o D:\video\videoIN.dgi -e
@echo Finished!
@echo Return to Standby mode!
powercfg -change -standby-timeout-ac 30
powercfg -change -monitor-timeout-ac 10
krosswindz
17th August 2010, 17:16
I do use screen saver but I dont use standby mode in my WinXP PC. When I am using the tool I am currently disabling screen saver and turn off my monitor when the encode is going on. Wouldnt it matter that when the encode is going along one would have to do the same, which is my I thought it would be nice if the tool would do it by itself on load and unload time. Again at the end of the day its neuron2's decision on this.
GearX
17th August 2010, 17:23
I do use screen saver but I dont use standby mode in my WinXP PC. When I am using the tool I am currently disabling screen saver and turn off my monitor when the encode is going on. Wouldnt it matter that when the encode is going along one would have to do the same, which is my I thought it would be nice if the tool would do it by itself on load and unload time. Again at the end of the day its neuron2's decision on this.
You could use the 'blank' screensaver, or set Windows to shut off the monitor after a few minutes.
Guest
17th August 2010, 18:59
I think that you can run fine with a screensaver in the default non-D3D mode. Have you tried it?
krosswindz
17th August 2010, 19:52
I havent tried running it with screen saver on. I will play around and see if anything is affected. not that it matters that I have to manually turn off the screen saver.
RedDwarf1
18th August 2010, 01:15
Is it only the indexing that can be affected by power saving sleep/standby? If so then I don't really see a problem because it doesn't really take that long and I'm usually using the PC at the time anyway.
But while encoding I put my monitor into standby using Wizmo and I haven't noticed any problems. It would be a serious problem if power saving couldn't be used while encoding because it's extremely rare that I use the power switch on my monitor because previous experience has shown that is when my monitor is most likely to fail. It's now out of warranty so avoiding a failure is important.
If it's just the screensaver that's the problem then it isn't a problem for me because I never use screensavers, I prefer standby. The readme does state Standby and not just screensaver which is a big problem. Why would something like monitor power saving affect NV Tools?
Guest
18th August 2010, 01:22
I don't really know. I added that statement to cover my ***. I doubt that monitor power down or a screensaver could actually be an issue.
Anything that makes the video driver go dead is a problem. For example, Remote Desktop.
krosswindz
18th August 2010, 01:26
I have Linux PC with 8600GT on it, I was wondering if DGNV tools would work if I ran Windows XP in a VM.
RedDwarf1
18th August 2010, 01:31
Ok thank you. I will keep my eye on it in future and might do a small test to verify it works without problems when the screen is in standby.
Guest
18th August 2010, 01:36
I have Linux PC with 8600GT on it, I was wondering if DGNV tools would work if I ran Windows XP in a VM. I don't think so.
krosswindz
18th August 2010, 02:10
^ Thanks for your reply, I was hoping this would have been possible using VMwares VMDirectPath.
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.