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. |
22nd August 2010, 13:07 | #2444 | Link | |
Registered User
Join Date: Apr 2002
Location: Germany
Posts: 5,391
|
Quote:
Basically, MT() is the more poor filter - it's bad for filters with big spatial context (e.g.: all MVTools applications, or e.g. TNLMeans), and some scripts can *only* use SetMTmode, because MT is plain impossible (e.g. Srestore). This is a pity. The main point of GPU decoding is to free up CPU time. But you don't need to offload from CPU to GPU in easy scenarios where you've plenty of CPU time to spare anyway. The case where freeing CPU really counts is in heavy scenarions when CPU is loaded to the brim. ... testing ... *edit* : false alarm, the crashes were because I had a silly typo in my script. For now, it seems to work when no SetMTmode at all is set in the beginning, but only after the DGDecodeNV call. Don't know what to say, this behaviour of SetMTmode seems to be in contradiction to the description of it's functionality. But it seems to work, sorry for the buzzing.
__________________
- 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!) |
|
22nd August 2010, 13:25 | #2446 | Link |
Registered User
Join Date: Oct 2002
Location: The Pandorica
Posts: 527
|
I successfully use it with SetMtMode(2,2) on my source dg filter call. Perhaps I'm just lucky then....
__________________
PC specs for bug reports: Intel Core i7-4790K @4Ghz Win10(Linux VM) PCI express NVIDIA RTX 2060 SUPER graphics card http://twitter.com/cwebdesign |
22nd August 2010, 13:32 | #2447 | Link |
Registered User
Join Date: Apr 2002
Location: Germany
Posts: 5,391
|
You see me confused as well.
Documentation for SetMTmode says that you need to put it at the start of the script, because the number of threads is set and fixed only one time, when the script is initiated. For source filters that don't play well with using multiple threads, the docu recommends to use mode 5 for the sourcefilter. Hence, the generally-recommended structure for not-MT'able sourcefilters is Code:
SetMTmode(5, threads) SourceFilter() SetMTmode(2) other_filters The following, however, seems to work: Code:
DGMultiSource() SetMTmode(2) other_filters My confusion is because this structure is not correct as per the documentation ... which is saying that one SetMTmode call must be present at the very start of the script.
__________________
- 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!) |
22nd August 2010, 13:35 | #2448 | Link |
Registered User
Join Date: Oct 2002
Location: The Pandorica
Posts: 527
|
This is what I put in my scripts usually:
SetMtMode(2,2) video=dgmultisource("x.dgi") It works for me on my dual core.
__________________
PC specs for bug reports: Intel Core i7-4790K @4Ghz Win10(Linux VM) PCI express NVIDIA RTX 2060 SUPER graphics card http://twitter.com/cwebdesign |
22nd August 2010, 13:43 | #2450 | Link | |
Registered User
Join Date: Oct 2002
Location: The Pandorica
Posts: 527
|
Quote:
Code:
#avisynth SetMemoryMax(384) LoadPlugin("c:\apps\avisynth2\plugins\nonautoload\agc.dll") Import("c:\apps\avisynth2\plugins\avsi\dv.avsi") # for newundot() Import("c:\apps\avisynth2\plugins\avsi\lremovedust.avsi") Import("c:\apps\avisynth2\plugins\avsi\jdl-effects.avsi") Import("c:\apps\avisynth2\plugins\avsi\jdl-range.avsi") Import("c:\apps\avisynth2\plugins\avsi\limitedsharpenfaster.avsi") Import("c:\apps\avisynth2\plugins\avsi\subtitleshadow.avsi") LoadPlugin("c:\apps\avisynth2\plugins\transall\TransAll.dll") # transitions SetMtMode(2,2) video=dgmultisource("00010.dgi") #zooming text stuff deleted audio=nicac3source("00010 PID 1100 2_0ch 48KHz 192Kbps DELAY 0ms.ac3") video=audiodub(video,audio) video=video.SelectEven() #transitions are done here #resize for youtube goes here video=video.LRemoveDust_YV12(4,1) video
__________________
PC specs for bug reports: Intel Core i7-4790K @4Ghz Win10(Linux VM) PCI express NVIDIA RTX 2060 SUPER graphics card http://twitter.com/cwebdesign Last edited by cweb; 22nd August 2010 at 13:45. |
|
22nd August 2010, 13:59 | #2452 | Link |
Registered User
Join Date: Apr 2002
Location: Germany
Posts: 5,391
|
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.
__________________
- 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; 22nd August 2010 at 14:10. |
22nd August 2010, 18:48 | #2454 | Link |
Registered User
Join Date: Sep 2006
Posts: 82
|
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 |
23rd August 2010, 01:01 | #2455 | Link | |
Guest
Join Date: Jan 2002
Posts: 21,901
|
Quote:
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. Last edited by Guest; 23rd August 2010 at 01:05. |
|
23rd August 2010, 02:12 | #2456 | Link | |
Registered User
Join Date: Oct 2009
Location: crow-land
Posts: 540
|
Quote:
Last edited by hydra3333; 23rd August 2010 at 02:25. Reason: removed insane question |
|
23rd August 2010, 02:45 | #2459 | Link | |
Registered User
Join Date: Jun 2006
Posts: 260
|
Quote:
|
|
23rd August 2010, 03:26 | #2460 | Link |
Registered User
Join Date: Oct 2009
Location: crow-land
Posts: 540
|
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.
|
|
|