Welcome to Doom9's Forum, THE in-place to be for everyone interested in DVD conversion.

Before you start posting please read the forum rules. By posting to this forum you agree to abide by the rules.

 

Go Back   Doom9's Forum > General > DVD2AVI / DGIndex

Reply
 
Thread Tools Search this Thread Display Modes
Old 11th September 2010, 20:07   #2601  |  Link
tormento
Acid fr0g
 
tormento's Avatar
 
Join Date: May 2002
Location: Italy
Posts: 2,542
Quote:
Originally Posted by neuron2 View Post
Would you like to suggest any specific spatial denoising algorithm that I could implement?
I'd leave the speech to Didee, one of the avisynth man I was tought most. My dream is MVTools2 CUDA
__________________
@turment on Telegram
tormento is offline   Reply With Quote
Old 11th September 2010, 22:19   #2602  |  Link
Groucho2004
 
Join Date: Mar 2006
Location: Barcelona
Posts: 5,034
Quote:
Originally Posted by neuron2 View Post
* Fixed a race condition between CUDA init and filter deinstantiation that could cause
a crash when DGDecodeNV is instantiated and then deinstantiated without a call
to GetFrame(). Some third-party applications do that to get the video clip properties
returned by an Avisynth script.

http://neuron2.net/dgdecnv/dgdecnv.html
Nice. I just encoded a MPEG-2 sample with Procoder 2 for the first time using DGDecNV.
Groucho2004 is offline   Reply With Quote
Old 11th September 2010, 23:41   #2603  |  Link
Guest
Guest
 
Join Date: Jan 2002
Posts: 21,901
Good news! Thanks for the test result and your valuable contribution to fixing this nasty little bug.
Guest is offline   Reply With Quote
Old 12th September 2010, 03:13   #2604  |  Link
LigH
German doom9/Gleitz SuMo
 
LigH's Avatar
 
Join Date: Oct 2001
Location: Germany, rural Altmark
Posts: 6,753
Now I wonder if DGAVCDecDI might have a similar issue. Trying the batch encode with ivfenc on an AviSynth script which uses DGAVCDecDI instead of DGDecNV (I have only a 6800 GS at home), I get pseudo-crashes too (as described in the former report - just analoguely).

ED_0360_700_ivf.bat
Code:
E:\Programme\ivfenc\ivfenc.exe --codec=vp8 --passes=2 --pass=1 --fpf=ED_0360.stats --best --threads=1 --token-parts=1 --end-usage=0 --target-bitrate=700 ED_0360_DI.avs ED_0360_700.ivf
E:\Programme\ivfenc\ivfenc.exe --codec=vp8 --passes=2 --pass=2 --fpf=ED_0360.stats --best --threads=1 --token-parts=1 --end-usage=0 --target-bitrate=700 ED_0360_DI.avs ED_0360_700.ivf
E:\Programme\MKVtoolnix\mkvmerge.exe -o ED_0360_700.webm -w ED_0360_700.ivf ED.ogg
ED_0360_DI.avs
Code:
LoadPlugin("E:\Programme\DGAVCDecDI\DGAVCDecodeDI.dll")
DGSource("ED_1080_CRF06_DI.dgi")
Spline36Resize(640, 360)
But that should rather be discussed in the DGAVCDecDI thread, I believe.
__________________

New German Gleitz board
MediaFire: x264 | x265 | VPx | AOM | Xvid
LigH is offline   Reply With Quote
Old 12th September 2010, 03:18   #2605  |  Link
Guest
Guest
 
Join Date: Jan 2002
Posts: 21,901
Quote:
Originally Posted by LigH View Post
But that should rather be discussed in the DGAVCDecDI thread, I believe.
Yes, please. I'm aware of some crashing issues on random access that I am working on.
Guest is offline   Reply With Quote
Old 12th September 2010, 07:54   #2606  |  Link
jpsdr
Registered User
 
Join Date: Oct 2002
Location: France
Posts: 2,309
This version fixes the virtualdub crash problem jobs i've reported. Thanks.
As soons as i can, i'll check if it fixes the crash with SetMTMode(5) under MT avisynth.

Edit :
SetMTMode(5) apparently now works.

Last edited by jpsdr; 12th September 2010 at 11:26.
jpsdr is offline   Reply With Quote
Old 12th September 2010, 12:08   #2607  |  Link
Guest
Guest
 
Join Date: Jan 2002
Posts: 21,901
Fantastic. Thank you for your test results!
Guest is offline   Reply With Quote
Old 12th September 2010, 13:03   #2608  |  Link
jpsdr
Registered User
 
Join Date: Oct 2002
Location: France
Posts: 2,309
Yes.... but... my test crash at around 50% of a 100 frames video with a kernell32 error... on QTGMC with SetMTMode(5,6) (and SetMTMode(2) just after DGDecodeNV and before QTGMC) (with avisynthx64).
Nevertheless, maybe 3GB of memory is not enough for doing 6 thread on a 1080i video with QTGMC...
jpsdr is offline   Reply With Quote
Old 12th September 2010, 13:21   #2609  |  Link
Guest
Guest
 
Join Date: Jan 2002
Posts: 21,901
If you can get a DrWatson dump of the crash it may help us to find the cause.
Guest is offline   Reply With Quote
Old 12th September 2010, 16:31   #2610  |  Link
jpsdr
Registered User
 
Join Date: Oct 2002
Location: France
Posts: 2,309
... I don't know how to do that.
But when i take a look at the task manager afterward, the pic memory usage was at 3GB...
jpsdr is offline   Reply With Quote
Old 12th September 2010, 19:39   #2611  |  Link
Didée
Registered User
 
Join Date: Apr 2002
Location: Germany
Posts: 5,389
Quick report on SetMTmode(5) ...

Yes, with 2026 it generally works. That's a big and important improvement! The only drawback seems to be that it somehow uses more memory. It's not the "private bytes" and not the "working set" in Taskmanager, those values are about the same. It's the "virtual memory" which seems to be ~200 MB bigger, compared to using mpeg2source.
Now, 200MB is not quite trivial ... I assume that's the reason why some scripts with SetMemoryMax(bigvalue) still crash, though they work with mpeg2source: private bytes and working set are sufficiently below 2GB, but the virtual memory could exceed. (Though, I never saw that value actually exceed ... the crashes came earlier, while the memory value was increasing quickly.)


Edit:

Some more toying-around reveals it is related to the number of instances of DG[Multi]Source. Each single instance is using a good bunch of memory. (The above numbers happened to be with 3 source calls present.)

With a script like this:

Code:
SetMTMode(5,6)
SetMemoryMax(1024)

v1 = DGsource(...)   # or mpeg2source, respectively
v2 = ...
v3 = ...
...etc...

v1 + v2 + v3 + ...

SetMTMode(2)
TGMC_b2(1,1,1)

return( last )

Trying with 1, 2, 4, 6, 8, 10 source calls, TaskManager shows the following numbers for "virtual memory" of VirtualDub 1.9.9 :

Code:
source   mpeg2source        DGSourcce
calls

1        1'186'116          1'250'288

2        1'209'072          1'320'428

4        1'252'808          1'454'332

6        1'297'636          1'584'588

8        1'342'396          1'716'780

10       1'385'896          1'845'544
Seeing that, it becomes understandable that DGDecodeNV runs out of memory much sooner than mpeg2source.


It's very good news that SetMTMode(5) finally works.
Now, if you could find a way to minimize allocation of virtual memory, it would be even better.
__________________
- We´re at the beginning of the end of mankind´s childhood -

My little flickr gallery. (Yes indeed, I do have hobbies other than digital video!)

Last edited by Didée; 12th September 2010 at 21:34.
Didée is offline   Reply With Quote
Old 12th September 2010, 23:04   #2612  |  Link
crasus
Registered User
 
Join Date: Mar 2008
Posts: 60
Quote:
Originally Posted by crasus View Post
Dear neuron2,

It so happens that sometimes after demuxing the .h264 from a Bluray with eac3to (latest) I see a certain number of frames in the log (say 128540) and after indexing with dgdecnv 2024 (and other versions in the past) I see another number in its log (say 128526).

May I ask what's the source of this and I am doing something wrong somewhere? I do apologize if it's already been answered or asked.

All the very best and warmest for your excellent software (which saved me time ... more than once!)
Dear neuron2,

An addition to my earlier comment. I tryied to index the said file (along with another one from a very different Bluray but with the same situation under 2026) with older DGIndexNV versions.

I tested with all the versions on your website at the present : from 2020 to 2026. From 2021 to 2026, the DGIndexNV log showed a different frame count than eac3to. BUT! 2020 popped up the correct frame number. So, I searched around the web for more and came across DGDecNV 2012 and tried that as well. Yet again, the correct number of frames. It would seem that the problem started with 2021.

Do let me know, what I might do to help pinpoint this possible issue.

Warmly,
Crasus

P.S. : For reference, Win7 x64 with GT 240 (258.96 driver) and the latest eac3to.

Last edited by crasus; 12th September 2010 at 23:33.
crasus is offline   Reply With Quote
Old 13th September 2010, 03:39   #2613  |  Link
mini-moose
Registered User
 
Join Date: Oct 2007
Posts: 385
cuvid server

I noticed the recent versions of dgavcnv don't come packed with the cuvid server. I was always just overwriting the old files so all my old ones were kept so I didn't notice up till now. Is it not required anymore ?

if it was discussed before apologies in advance.
mini-moose is offline   Reply With Quote
Old 13th September 2010, 03:40   #2614  |  Link
Sharktooth
Mr. Sandman
 
Sharktooth's Avatar
 
Join Date: Sep 2003
Location: Haddonfield, IL
Posts: 11,768
cuvid is not needed anymore with recent DGNVTools.
Sharktooth is offline   Reply With Quote
Old 13th September 2010, 03:44   #2615  |  Link
mini-moose
Registered User
 
Join Date: Oct 2007
Posts: 385
awesome. thanks Sharktooth. does this means no more crashes if I use rdp or screen saver ?
mini-moose is offline   Reply With Quote
Old 13th September 2010, 16:14   #2616  |  Link
royia
Drazick
 
Join Date: May 2003
Location: Israel
Posts: 139
Quote:
Originally Posted by neuron2 View Post
Sure they are capable of it but these things are not currently exposed in the CUVID API.

Since I now know how to write postprocessing functions that run on CUDA (I use it for the NV12->RGB conversion in DGIndexNV), I could contemplate writing some filters. At first, spatial only. Would you like to suggest any specific spatial denoising algorithm that I could implement?
Any decent Edge Preserving Noise Reduction would be great.
Something like hq3dnd (Or whatever the NR Plug IN is called) would be a killer feature.
I would buy it instantly.
royia is offline   Reply With Quote
Old 13th September 2010, 16:40   #2617  |  Link
LigH
German doom9/Gleitz SuMo
 
LigH's Avatar
 
Join Date: Oct 2001
Location: Germany, rural Altmark
Posts: 6,753
ivfenc 1.5 (Nic's AVS mod) encodes without any pseudo crash dialogs in 2 passes using DGDecNV 2026.
__________________

New German Gleitz board
MediaFire: x264 | x265 | VPx | AOM | Xvid
LigH is offline   Reply With Quote
Old 14th September 2010, 03:24   #2618  |  Link
Sharktooth
Mr. Sandman
 
Sharktooth's Avatar
 
Join Date: Sep 2003
Location: Haddonfield, IL
Posts: 11,768
Quote:
Originally Posted by mini-moose View Post
awesome. thanks Sharktooth. does this means no more crashes if I use rdp or screen saver ?
dont know. never had those problems since i use no screen savers and i dont use rdp for that purpouse.

@neuron2: sorry for the delay. im really busy and we're also in the process to release a new megui stable build, so ill upload the clips as soon as i find 10 minutes to do that...

Last edited by Sharktooth; 14th September 2010 at 04:19.
Sharktooth is offline   Reply With Quote
Old 14th September 2010, 06:54   #2619  |  Link
tormento
Acid fr0g
 
tormento's Avatar
 
Join Date: May 2002
Location: Italy
Posts: 2,542
Little OT (please Neuron2 don't ban me, simply delete this post if needed, it comes from the hearth =P)

It's a pleasure to see here great programmers like you, Didee and Sharktooth "work" for us, completely free.

Thanks, guys.
__________________
@turment on Telegram
tormento is offline   Reply With Quote
Old 14th September 2010, 10:59   #2620  |  Link
hydra3333
Registered User
 
Join Date: Oct 2009
Location: crow-land
Posts: 540
Just wondering ... how about a deblocking filter. It's sort of denoising, in a way
hydra3333 is offline   Reply With Quote
Reply

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +1. The time now is 17:42.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.