Log in

View Full Version : DG NV tools


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 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 [50] 51 52 53 54 55 56 57 58 59 60 61 62 63

crl2007
22nd August 2010, 13:55
You have mail. But my problem is that I changed my network adapter and I can't access the licensing page to get a new license.

Didée
22nd August 2010, 13:59
cweb's variant seems to work, too. For some reason, it's specifically mode=5 in SetMTmode that makes problems; mode=2 seems to work fine.

Funny that the "potentially critical" mode works, and the "most-safe fallback" mode works not. ;)


Edit:

However, this is only a sucess as far as "it doesn't crash". Looking closer, the speed (CPU utilization) seems to be worse, and by a lot so.

Like: SetMTmode(2,8) on a heavy duty scriptfunction - dgdecode: 35 fps - dgdecodeNV: 8 fps

This need closer investigation, but right now I have to leave for other things.

crl2007
22nd August 2010, 14:00
Nevermind the mail, tried just now and the licensing page loaded. I was able to get a new license after all. Thx for your reply.

Clumpco
22nd August 2010, 18:48
This may sound like a really stupid question, but is there an (easy) way to swap DGIndex for DGIndexNV in Gordian Knot and AutoGK?

Before you all jump on me, I am asking on behalf of a community where some users are not too technically savvy and can just about manage to fire up and run AutoGK. Is there an option that I have missed to get DGIndexNV to output a d2v file?

TIA

Guest
23rd August 2010, 01:01
This may sound like a really stupid question, but is there an (easy) way to swap DGIndex for DGIndexNV in Gordian Knot and AutoGK?

Before you all jump on me, I am asking on behalf of a community where some users are not too technically savvy and can just about manage to fire up and run AutoGK. Is there an option that I have missed to get DGIndexNV to output a d2v file? Why would I jump on you? You've been very helpful to me in the past by your testing and reporting of issues. You're the kind of guy I want to keep real happy.

You want DGIndexNV to output a D2V file? Hmm, that cannot be done as the formats are quite different. Hasn't anybobody gotten the DGNV tools to work with those programs? I would send manono a PM. He's my johnny on the spot for anything (A)GK. Anyway, if you make a D2V file, that would imply you want to use mpeg2source() (the DGMPGDec source filter). What would you gain from DGNV, given that indexing is not done on the GPU?

If DGNV can't be used with (A)GK, maybe you can wean your community friends onto a more recent, still supported tool, like MeGUI, that is known to work with the DGNV stuff.

hydra3333
23rd August 2010, 02:12
However, this is only a sucess as far as "it doesn't crash". Looking closer, the speed (CPU utilization) seems to be worse, and by a lot so.

Like: SetMTmode(2,8) on a heavy duty scriptfunction - dgdecode: 35 fps - dgdecodeNV: 8 fps

This need closer investigation, but right now I have to leave for other things.

This result quite significantly devalues NV's usefulness for multi-core machines (almost all PCs nowadays) where multi-threading of hard-crunching avisynth scripts is the way forward... save some in decoding, unfortunately lose more by restriction to single-threading.

Guest
23rd August 2010, 02:14
Neuron2, do you have an nvidia card to try this on ? Nah, I just have ATI.

I'll try to find an NV card to test this.

hydra3333
23rd August 2010, 02:24
Oh. Silly me. Just saw what I wrote. I plead insanity by way of constant harassment from 15yo daughter :) :)

elguaxo
23rd August 2010, 02:45
This result quite significantly devalues NV's usefulness for multi-core machines (almost all PCs nowadays) where multi-threading of hard-crunching avisynth scripts is the way forward... save some in decoding, unfortunately lose more by restriction to single-threading.

You can still use MT (http://avisynth.org/mediawiki/MT) just on the parts you want to multithread. ;)

hydra3333
23rd August 2010, 03:26
Well, yes, spatially, although not the temporal (and probably most useful) aspect per Didee's finding ... I suspect chopping up a frame into fragments for individual threading (which is what MT does) may not be all that happy a choice in a number circumstances.

elguaxo
23rd August 2010, 03:32
Well, yes, spatially, although not the temporal (and probably most useful) aspect per Didee's finding ... I suspect chopping up a frame into fragments for individual threading (which is what MT does) may not be all that happy a choice in a number circumstances.

Try it with a big enough overlap. Filters like TempGaussMC for example work great with an overlap of 16.

hydra3333
23rd August 2010, 03:54
Could do. Spatial MT can be a tad difficult to code with lots of filters, and possibly not go well with motion compensation and the likes of MDepan.

I'm hoping neuron2 may come back with some good news, as "simple" multi-threading is a direction everyone is heading.

Clumpco
23rd August 2010, 06:59
Why would I jump on you? You've been very helpful to me in the past by your testing and reporting of issues. You're the kind of guy I want to keep real happy. Aww gee shucks :)

You want DGIndexNV to output a D2V file? Hmm, that cannot be done as the formats are quite different.OK I get that

Hasn't anybobody gotten the DGNV tools to work with those programs? I would send manono a PM. He's my johnny on the spot for anything (A)GK.Cheers for the info, I will do.

Anyway, if you make a D2V file, that would imply you want to use mpeg2source() (the DGMPGDec source filter). What would you gain from DGNV, given that indexing is not done on the GPU?Aha, a very valid point that I had missed (see now why I was scared of being jumped upon?)

If DGNV can't be used with (A)GK, maybe you can wean your community friends onto a more recent, still supported tool, like MeGUI, that is known to work with the DGNV stuff.This would indeed be probably the best option.

Thanks for everything!

LeXXuz
23rd August 2010, 09:58
I noticed some flickering in one of my latest encodes and after investigating this, I noticed a difference between DGIndex and DGIndexNV handling erroneous frames in the source material.

While DGIndex shows only a small distortion in that frame (notice the shifted macro block line in the lady's hat to the left):

http://img823.imageshack.us/img823/8653/11087d2vnew.th.png (http://img823.imageshack.us/i/11087d2vnew.png/)

DGDecNV seems to refuse to decode the rest of that frame. What is shown in the bottom part in the Avisynth preview window is the picture from where I jumped to the erroneous frame 11087:

http://img267.imageshack.us/img267/2585/11087dgi.th.png (http://img267.imageshack.us/i/11087dgi.png/)

This is what happened during frameserving this to x264. I think the rest of that frame belong to the first frame of that GOP:

http://img837.imageshack.us/img837/9184/11087mpchc.th.png (http://img837.imageshack.us/i/11087mpchc.png/)


EDIT: Switched Image Hoster. Pictures should work now.

Didée
23rd August 2010, 12:11
Yesterday, by accident I found the following: (Under Windows 7,) if you have DGindexNV registered and running, then happen to install the dotNET 1.1 framework (needed to install another older piece of software), then DGIndexNV will welcome you with "invalid licence", requiring to generate a fresh license key.

Dunno if it has been mentioned before, this thread is very long.


@ elguaxo
> Try it with a big enough overlap. Filters like TempGaussMC for example work great with an overlap of 16.

Still, SetMTmode is preferable. overlap=16 is the bare minimum to avoid noticeable artifacts. Quality-wise, I'd go with 32. But that's the crux of spatial MT: the overlap is increasing the spatial area that a filter has to work on. Example:

MT() with 4 Threads, overlap 16, on 480i/p content: 20% more area
MT() with 6 Threads, overlap 32, on 720p content: 33% more area

I'm going to make some tests later, but ... 20 to 30% more frame area for MVTools to process, compared to 10-15% (15-20%) CPU usage for *CPU* decoding of 720p (1080p) streams on my i860 ... that's not a promising figure. These simple numbers suggest that the overhead of MT is bigger then what possibly can be saved by offloading the decoding to GPU.

Guest
23rd August 2010, 12:34
EDIT: Uhm. Why are the thumbnails/links not showing??? Your links are dead. I cut them and paste into a browser and nothing shows.

LeXXuz
23rd August 2010, 13:25
Your links are dead. I cut them and paste into a browser and nothing shows.

You're right. It seems Imagebanana has some problems. All recent uploads are blanc. However, it should work now with Imageshack.

Guest
23rd August 2010, 13:57
I noticed some flickering in one of my latest encodes and after investigating this, I noticed a difference between DGIndex and DGIndexNV handling erroneous frames in the source material. It looks like different error recovery in the decoders. Can you post a segment of the source that includes this, so that I can investigate and ask nVidia about it? Thank you.

Guest
23rd August 2010, 13:59
Yesterday, by accident I found the following: (Under Windows 7,) if you have DGindexNV registered and running, then happen to install the dotNET 1.1 framework (needed to install another older piece of software), then DGIndexNV will welcome you with "invalid licence", requiring to generate a fresh license key. It must have changed the info returned by the system call I use. No big deal, I suppose, because you can simply make a new license.

LigH
23rd August 2010, 15:17
I think it's not. MeGUI sets the wrong SAR to x264. The aspect ratio of the output is slightly too small and the picture looks slightly narrowed in width. With DGIndex everything is fine.

EDIT: It is the DAR Megui is having trouble with. Sorry for any confusion.

Just opened a 16:9 anamorphic encode and MeGUI sets DAR to 1,25 instead of ITU 16:9 PAL. As a result, x264 encoder is fed with SAR setting of 5:4 instead of 31:17 as it should.

Never feed MeGUI with a manually made script if you try to encode anamorphically. You must use the "Clever AR" feature of the integrated AviSynth Script builder. Or insert the required global AviSynth variables too:

global MeGUI_darx = 16
global MeGUI_dary = 9

LeXXuz
23rd August 2010, 15:42
Never feed MeGUI with a manually made script if you try to encode anamorphically. You must use the "Clever AR" feature of the integrated AviSynth Script builder. Or insert the required global AviSynth variables too:

global MeGUI_darx = 16
global MeGUI_dary = 9

Please read the rest of my posts. That was not the issue. I always use "Clever AR" for anamorphic encodes. However, when MeGui does not detect the correct source AR, "Clever AR" is useless as well. ;)

Groucho2004
23rd August 2010, 16:26
I just tried to shrink a DVD with Procoder. It crashes right away (something nvcuda.dll) when I load the script with the DGDecodeNV source filter. Works fine with the normal DGDecode.

Could this be the same problem that crashed HCEnc, Don?

stax76
23rd August 2010, 17:46
Could also be the problem I had, opening AVS with avifile API, reading some parameters like frame rate, image size etc. and then closing without reading a frame/image, you always have to read a frame/image before you close. I don't know why but DGDecNV is the only decoder that requires this, maybe neuron2 knows more, it was easy to workaround for me, just took me a while to figure out why it was crashing all the time.

Guest
23rd August 2010, 17:49
Could be either one. I don't have Procoder so I don't know.

Groucho2004
23rd August 2010, 22:12
Could also be the problem I had, opening AVS with avifile API, reading some parameters like frame rate, image size etc. and then closing without reading a frame/image, you always have to read a frame/image before you close.

Yes, I had the same problem and came to the same conclusion. Unfortunately, this doesn't help me with the Procoder problem.

Luckily there is DGDecode so I have an alternative, albeit a slower one.

stax76
23rd August 2010, 23:01
Are you confusing DGSource with MPEG2Source? There is DGSource of DGDecNV, AVCSource of DGAVCDec and MPEG2Source of DGMPGDec, if you mean DGMPGDec, for SD there is not much gain since it don't take much CPU time or do you have HD MPEG-2? ffms2 is a little bit faster then DGMPGDec, it's also handy if you have a MKV container from MakeMKV or from eac3to.

Groucho2004
23rd August 2010, 23:07
Are you confusing DGSource with MPEG2Source?
No. I was referring to the names of the DLLs.

stax76
23rd August 2010, 23:23
OK, then I was confusing something. :D

Sharktooth
24th August 2010, 03:06
Please read the rest of my posts. That was not the issue. I always use "Clever AR" for anamorphic encodes. However, when MeGui does not detect the correct source AR, "Clever AR" is useless as well. ;)
When MeGUI does not detect the source AR you can specify it manually selecting the correct AR from the dropdown list (in avs script creator).

AlekseiV
25th August 2010, 05:47
I just bought this, and is there any way to make it crash less?
I can't analyze any files in MeGUI's script creator. The indexer works, and the AVS Script Creator opens and shows the video, but hitting Analyse nearly instantly causes a crash. It very, very rarely can get through a whole video.
If I manually set up the AVS, even loading it into MeGUI (or MeGUI x64, or StaxRip) will crash them.

I can't encode using anything but feeding a hand-made AVS into the pure x264.exe. That works great, though. :)

My sources are a variety of files that have nothing in common, so I'm assuming it's a problem with either DGNV or maybe my hardware/drivers.
The crash is associated with "nvcuda.dll"

(Lenovo Thinkpad W510 with a Quadro FX880M, based on the GT216, 258.96 drivers)

MrVideo
25th August 2010, 06:40
I will be working with 1080i29.97 MPEG-2 4:2:2 video.

I can use ConvertToYv12(interlaced=true) with AVISynth in order to get the video so that it is usable by x264, but do not know how to decode it since the DGDecNV tools don't currently work with 4:2:2 video.

Is 4:2:2 going to be supported soon, or is there something out there that will work with 4:2:2 video? I do not care if the decoding isn't done through the GPU, just as long as I can decode.

Obviously I prefer to use DGDecNV tools if at all possible.

Blue_MiSfit
25th August 2010, 08:35
Vanilla DGDecode handles 4:2:2 just fine. libmpeg2 does as well IIRC, though libavcodec doesn't - last I checked. Other commercial decoders (Elecard / Mainconcept) damned well better handle 4:2:2 ;)

Guest
25th August 2010, 12:22
I just bought this, and is there any way to make it crash less?
I can't analyze any files in MeGUI's script creator. The indexer works, and the AVS Script Creator opens and shows the video, but hitting Analyse nearly instantly causes a crash. It very, very rarely can get through a whole video.
You'll have to ask the MEGUI people about it. If the invocation of Avisynth is not fully correct in the application such crashes can occur. Hank and I have just finished working together to fix that for HCEnc. I am willing to work with the MEGUI folks to resolve it but I can't take responsibility for debugging MEGUI.

Also, try closing the preview window before hitting Analyse.

stax76
25th August 2010, 12:37
If I manually set up the AVS, even loading it into MeGUI (or MeGUI x64, or StaxRip) will crash them.

DGDecNV should work completely robust with StaxRip, no problems reported so far and none experienced myself. You can post a bug report to the StaxRip thread.

MOS-Marauder
25th August 2010, 13:46
@Neuron:

Continuing from the other Thread (080i/Crash eg GFX Memory ?)

Actually i have installed 257.21 Drivers. Shall i really downgrade so many revisions to 196.21 ?

Btw im not using Multiple Instances. Its in the middle of an Encode...


Chris

Guest
25th August 2010, 14:00
257.21 should be OK. Exactly when do these crashes occur? Are you using an encoding GUI application?

MOS-Marauder
25th August 2010, 14:11
257.21 should be OK. Exactly when do these crashes occur? Are you using an encoding GUI application?


Yes. Im using MeGui. Sometimes its in the middle of pass1, sometimes in the middle of pass 2.

For my last Vid i fixed it not using NV Deinterlacer. (used an external one then @AVS).

Is the Memory handliing different if i use Deinterlacer or not ?

I guess u know vReveal, another CUDA Enabled Application. If i use this one @ 1080 also my GFX Ram goes down and Driver crashes...

Im checking it on the next 1080i encode with GPU-Z (watching ram usage)

Chris

Guest
25th August 2010, 14:39
I guess u know vReveal, another CUDA Enabled Application. If i use this one @ 1080 also my GFX Ram goes down and Driver crashes... Aha, well that's telling, meaning it's clearly not a DGNV implementation issue. I'll ask Nvidia about this.

I don't know the answer about your memory question. Tell us what you find with GPU-Z.

jpsdr
25th August 2010, 18:52
You see me confused as well.
Hence, the generally-recommended structure for not-MT'able sourcefilters is

SetMTmode(5, threads)
SourceFilter()

SetMTmode(2)
other_filters

This generally works, e.g. with good old dgdecode_mpeg2source. But it seems to not work with DGDecodeNV. I got Vdub either crash, or go not responding anymore.
Same for me, VDub crash.


The following, however, seems to work:
DGMultiSource()

SetMTmode(2)
other_filters
That is running right now, and it's actually using all threads as specified. (And surprise, that's exactly what you told to try.);)

You have to tell me what magic you used, because for me i've only 1 thread !
I use the x64 2.5.8 version of avisynth...
What version have you used ?
So... if i've understood properly, actualy, there is no possibility to use SetMTMode with DGMultisource ?

mastrboy
25th August 2010, 21:56
try adding a memory limit, i can usually solve SetMTmode crashes with the following:
SetMemoryMax(512)

If it still crashes, try lowering it by increments of 32

Guest
25th August 2010, 22:20
Can you give your full script please?

MOS-Marauder
25th August 2010, 22:34
Aha, well that's telling, meaning it's clearly not a DGNV implementation issue. I'll ask Nvidia about this.

I don't know the answer about your memory question. Tell us what you find with GPU-Z.

K running another rel.. This time i enabled Deint (mode1) and Resize as well...

Memory usage 248.

Video Engine load: 55-80%

GPU load 8%

Hm doesnt look like much RAM usage... I wait until it crashes...


Chris

MrVideo
26th August 2010, 04:55
Vanilla DGDecode handles 4:2:2 just fine.

Yep, that did the trick. Along with AVISynth's ConvertToYV12(interlaced=true), I was able to re-encode the MPEG-2 4:2:2 short sample (colorbars) to H.264.

:thanks:

LigH
26th August 2010, 07:48
I believe it would be safer to apply a "Trim()" on read license keys. There are users who manage not to get curious about additional spaces in front of their hex numbers, but the indexer appears to count them in and does not recognise the license as valid. In other words: Trailing newline here, leading spaces there - reasons for not recognising the license number can be too simple to predict.

jpsdr
26th August 2010, 08:42
try adding a memory limit, i can usually solve SetMTmode crashes with the following:
SetMemoryMax(512)
If it still crashes, try lowering it by increments of 32

I don't think it's compatible with 12 threads of the QTGMC filter (i've just discovered its existence) on 1080p (even YV12) video.
I've made a dest on DVD video (so, with dgmpecdecode, wich work with mode 5), and necessary memory is around 780M, on 480p, so, lowering to 512 and even less on 1080p is not an option.

@neuron2
1) I don't have my full script here, so i'll post it later.
2) Have-you been able to reproduce this (http://forum.doom9.org/showthread.php?p=1427639#post1427639) ?

Groucho2004
26th August 2010, 08:58
There are users who manage not to get curious about additional spaces in front of their hex numbers

Isn't it weird that people are able to create the most complex Avisynth scripts and get them to work but fail to paste a simple number into a text file?

I think the license generator should create a license file and send it to the user by email. A bit more work for Don, though. :rolleyes:

LigH
26th August 2010, 09:38
Quite little work with e.g. PHP to generate emails including attachments, it is well documented. But then there will be people who are unable to save attachments. ;)

...

And there are people who are great in creating complex AviSynth scripts -- which doesn't mean that they understand their content.

A collection of several denoisers and sharpeners in a semi-random order... :confused:

stax76
26th August 2010, 12:00
@neuron2

I noticed DGIndex has a warning about unusual high audio delay, this warning isn't in DGIndexNV it seems. I wonder which value is considered unusual? (I want to add a similar warning)

LigH
27th August 2010, 07:37
May depend on the reason behind the warning... If the audio studio worked well, already a delay more than 1/4 second could be unusual. But the idea behind the warning was probably to detect mistakes like "You did not extract the main movie PGC, this VOB contains possibly multiple PGCs - get rid of that leading trailer first!" ... and for such cases the threshold may be rather around 5-10 seconds. Just my guess.

kypec
27th August 2010, 20:52
Hi neuron2,

recently I bought DGDecNV and generated myself a license code. You said before that the Machine ID is somehow tied to network adapter used in system. I've found that everytime I connect to VPN (cause I need to work remotely on my office workstation) my Machine ID changes - how come? I thought by network adapter you meant HW (MAC address or anything like that)?
It's not really a problem as I can generate another license code for the other Machine ID but I find it a bit weird to need additional license for just one physical PC with same hardware and OS.
I'm using Win7 x64 Ultimate btw.:thanks: