[RESOLVED] MPLS: CLI parsing
Re: MPLS: CLI parsing
"Stalled process":
It happened once again. This time I saw in the task manager that there is below the dgindexnv process also a related "audio detection mismatch" process. But I was not able to find that window (double click in task manager usually brings the window to the front) so it seems that it was hidden. I have now to check if MeGUI hides that window (it should not as I have already seen it several times in the past). Workaround is to implement the "ResponseOnAudioMismatch" in the ini. ==> only a to-do on my side but FYI as well
It happened once again. This time I saw in the task manager that there is below the dgindexnv process also a related "audio detection mismatch" process. But I was not able to find that window (double click in task manager usually brings the window to the front) so it seems that it was hidden. I have now to check if MeGUI hides that window (it should not as I have already seen it several times in the past). Workaround is to implement the "ResponseOnAudioMismatch" in the ini. ==> only a to-do on my side but FYI as well
Re: MPLS: CLI parsing
Progress report:
Root cause found (sort of at least). If there is no dgindexnv.ini available I always get the progress report. If the default ini is available (only started dgindexnv.exe once and close it without changes) I do not get a progress report for any of my test files.
It seems to be related to "StrictAVC=0" - as soon as I remove that line I do get a progress.
EDIT: StrictAVC=1 is also not working
Btw. if the INI file is empty the process will crash and also dgindexnv.exe cannot be started:
0xC0000409 STATUS_STACK_BUFFER_OVERRUN (-1073740791)
Root cause found (sort of at least). If there is no dgindexnv.ini available I always get the progress report. If the default ini is available (only started dgindexnv.exe once and close it without changes) I do not get a progress report for any of my test files.
It seems to be related to "StrictAVC=0" - as soon as I remove that line I do get a progress.
EDIT: StrictAVC=1 is also not working
Btw. if the INI file is empty the process will crash and also dgindexnv.exe cannot be started:
0xC0000409 STATUS_STACK_BUFFER_OVERRUN (-1073740791)
Re: MPLS: CLI parsing
Bad license: Yes, there is code to detect a debugger (used as an anti-crack method). If it is causing problems you can't work around then let me know and I can provide a special build for you without that check.
Stall: I have never seen a popup-window get hidden or covered so am thinking it is something MEGUI-related. In any case, the INI change should avoid it.
Progress: I checked the handling of StrictAVC and it looks irrelevant to progress reporting. Can you delete your INI file, then open and close DGIndexNV? That should re-create a default INI file. Use that one. If the issue still happens we can go from there. Please test both without MEGUI and through MEGUI. I had no problems getting progress with the INI file present, nor did gonca.
Stall: I have never seen a popup-window get hidden or covered so am thinking it is something MEGUI-related. In any case, the INI change should avoid it.
Progress: I checked the handling of StrictAVC and it looks irrelevant to progress reporting. Can you delete your INI file, then open and close DGIndexNV? That should re-create a default INI file. Use that one. If the issue still happens we can go from there. Please test both without MEGUI and through MEGUI. I had no problems getting progress with the INI file present, nor did gonca.
Re: MPLS: CLI parsing
Bad license & stall: thanks for you help, in my eyes both issues can be closed.
Progress:
I used this command line for all the tests without MeGUI (= in a cmd prompt):
1. I deleted the dgindex.nv.ini, command started
Result: progress shown
And... dgindexnv.ini created at 100% automatically
2. command started again with the dgindexnv.ini created before
Result: no progress
3. I deleted dgindexnv.ini again, started dgindexnv.exe, waited ~5sec, closed it. dgindexnv.ini now available, command started again
Result: no progress
4. I removed the line "StrictAVC=0" in the ini, command started again
Result: progress shown
And ... StrictAVC=0 available again in the ini
5. run command again
Result: no progress
Progress:
I used this command line for all the tests without MeGUI (= in a cmd prompt):
Code: Select all
"D:\MeGUI\tools\dgindexnv\dgindexnv.exe" -i "D:\test.mkv" -o "D:\test.dgi" -h
Result: progress shown
And... dgindexnv.ini created at 100% automatically
2. command started again with the dgindexnv.ini created before
Result: no progress
3. I deleted dgindexnv.ini again, started dgindexnv.exe, waited ~5sec, closed it. dgindexnv.ini now available, command started again
Result: no progress
4. I removed the line "StrictAVC=0" in the ini, command started again
Result: progress shown
And ... StrictAVC=0 available again in the ini
5. run command again
Result: no progress
Re: MPLS: CLI parsing
Here is my full ini:
Code: Select all
Version=
Window_Position=870,284
Info_Window_Position=100,100
Process_Priority=2
Playback_Speed=3
AVS_Template_Folder=
AVS_Template_File=template.avs
AVS_Template_File_Index=0
AVS_Enable_Template=1
AVS_Overwrite=0
Full_Path_In_Files=1
MRUList[0]=D:\test.mkv
MRUList[1]=
MRUList[2]=
MRUList[3]=
Enable_Info_Log=1
Loop_Playback=0
AVC_Extension=264
MPG_Extension=m2v
VC1_Extension=vc1
HEVC_Extension=265
Deinterlace=0
UsePF=0
AlwaysCrop=1
UseD3D=0
Snapped=0
ResponseOnAudioMismatch=0
Enable_Audio_Demux=1
CUDA_Device=255
Decode_Modes=0,0,0,0
Full_Info=1
Bare_Demux=0
Disable_Encrypted_Audio_Warning=0
Fine_Cropping=0
Force_Zoom=0
StrictAVC=0
Re: MPLS: CLI parsing
Weird. I couldn't make it happen but then I remembered you are using 32-bit. So when I tried with 32-bit I am seeing the problem. Strange it would only fail with 32-bit. Firing up the debugger...
Re: MPLS: CLI parsing
OK, re-download 117 and the problem should be fixed. I was sscanf'ing a %d into a bool (strict_avc) and apparently that works in 64-bit but not 32-bit. In 32-bit it was overwriting an adjacent variable that controls progress reporting. Changed the variable to an int and all is well.
Thanks for bringing these matters to light and for helping to debug them.
Thanks for bringing these matters to light and for helping to debug them.
Re: MPLS: CLI parsing
Thank you very much! I tested the scenario from above and everything works now as expected
If related may I ask you to please slipstream those two things (progress and MPLS upper case) also into DGDecodeIM?
If related may I ask you to please slipstream those two things (progress and MPLS upper case) also into DGDecodeIM?
Re: MPLS: CLI parsing
Sure, I will take care of that now. Note that DGDecIM does not have the strict_avc option.
Re: MPLS: CLI parsing
Thank you very much! If I may raise one last point
In the DGI file in line 4 (EDIT: Nevermind, it is always 4 for NV and IM) the path to the indexed file is written. Sometimes not the full path is used but a relative one. Can this be changed to be always the full path? If not it is not an issue for me, I only have to adjust my program.
EDIT2:
Scenario:
d:\temp1\test.mkv
d:\temp2\test.dgi
line4 will read:
..\temp1\test.mkv
instead of:
d:\temp1\test.mkv
In the DGI file in line 4 (EDIT: Nevermind, it is always 4 for NV and IM) the path to the indexed file is written. Sometimes not the full path is used but a relative one. Can this be changed to be always the full path? If not it is not an issue for me, I only have to adjust my program.
EDIT2:
Scenario:
d:\temp1\test.mkv
d:\temp2\test.dgi
line4 will read:
..\temp1\test.mkv
instead of:
d:\temp1\test.mkv
Re: MPLS: CLI parsing
There's an INI file option to enable it: Full_Path_In_Files=1. It is enabled by default for a new INI file.
It should be working fine, please advise if not.
It should be working fine, please advise if not.
Re: MPLS: CLI parsing
Yes, indeed. I should read the help first
If I delete the ini and have it created again by the GUI it is "Full_Path_In_Files=1".
However in order to set "ResponseOnAudioMismatch=1" for the very first start I write if no ini is found a new ini only with this line. If this ini is parsed with a CLI command at the end of the indexing a new INI will be written which contains "Full_Path_In_Files=0". Not sure if this is advised at all what I am doing...
EDIT: While comparing an INI file which has been created by CLI based on the INI with my one line and a proper INI created by the GUI these lines have a different value (values from my "CLI" INI):
EDIT2: And I noticed that writing only "ResponseOnAudioMismatch=1" in the ini will still popup the dialogue. So it is not detected as proper ini. I have to write therefore everything. So the issue above is not valid anymore (except you want to change the ini read procedure).
If I delete the ini and have it created again by the GUI it is "Full_Path_In_Files=1".
However in order to set "ResponseOnAudioMismatch=1" for the very first start I write if no ini is found a new ini only with this line. If this ini is parsed with a CLI command at the end of the indexing a new INI will be written which contains "Full_Path_In_Files=0". Not sure if this is advised at all what I am doing...
EDIT: While comparing an INI file which has been created by CLI based on the INI with my one line and a proper INI created by the GUI these lines have a different value (values from my "CLI" INI):
Code: Select all
Window_Position=0,0
Info_Window_Position=0,0
Process_Priority=0
Playback_Speed=0
AVS_Template_Folder=1
AVS_Template_File=
AVS_Enable_Template=0
Full_Path_In_Files=0
Enable_Info_Log=0
HEVC_Extension=hevc
AlwaysCrop=0
Enable_Audio_Demux=0
CUDA_Device=0
Full_Info=0
Re: MPLS: CLI parsing
The INI file has to have all its entries and in the proper order.
Is there anything I need to do?
Is there anything I need to do?
Re: MPLS: CLI parsing
No, thanks. I have now written the complete ini file with all its default values and it is working fine.
Re: MPLS: CLI parsing
Sweet, then I'll mark this resolved.
Re: [RESOLVED] MPLS: CLI parsing
Thanks again, I did also my work within MeGUI:
Code: Select all
2786 [DGIndex* Indexer] all: support absolute paths in the index files when written with Full_Path_In_Files=0
IM/NV: ensure that ResponseOnAudioMismatch=0 is not set (if set, it will be set to 1)
Re: [RESOLVED] MPLS: CLI parsing
Onward and upward for you in 2018!
Maybe you meant Full_Path_In_Files=1? If not, maybe I am confused.
Maybe you meant Full_Path_In_Files=1? If not, maybe I am confused.