Log in

View Full Version : MP_Pipeline fixes desired


gispos
2nd August 2021, 22:33
That with MP_Pipeline and the LWLibavVideoSource index files under Win10 is a disaster.
No error message, the programs simply stop and wait for feedback from avisynth.

I have a lot of scripts that I process automatically and don't get any feedback.
Can someone change that, please. At least one error message should appear.

pfmod? :)

Even then it is still a cramp. I don't want to have to hoard a collection of index files.
Why does the parameter cache=False actually not work under Win10 with MP_Pipeline :confused:

pinterf
4th August 2021, 08:28
Of course pfmod :). Provide me a basic avs script that should throw the error.
When there is a crash somewhere inside I can probably catch it. (dunno when, holiday+office rush between holidays)

PS: Running in admin mode did not help?

gispos
4th August 2021, 18:22
Of course pfmod :). Provide me a basic avs script that should throw the error.
When there is a crash somewhere inside I can probably catch it. (dunno when, holiday+office rush between holidays)

PS: Running in admin mode did not help?
I couldn't think of a better one. Sorry. :)

I've already tried and started AvsPmod or VDub2 as admin, no success.
MP_Pipeline_slave.exe takes up 40 MB of memory without doing anything. And everything is waiting for a return.

Why is cache=False ignored? There were no problems with it under Win7 :confused:


MP_Pipeline("""
### inherit start ###
SourceFile = "Your source"
### inherit end ###

LWLibavVideoSource(SourceFile, cache=False)

# ### prefetch: 64, 32
### ###
### platform: Win32
HDRAGC(coef_gain=1.0, max_gain=3.0,min_gain=1.0,coef_sat=1.0,max_sat=9.0,min_sat=0.0,avg_lum=128,avg_window=24,corrector=1.0,
\reducer=0.0,response=100,protect=2,mode=2,passes=4,black_clip=0.0,shift=0,shift_u=0,shift_v=0,freezer=-1,shadows=true,debug=0)
### platform: Win64
### ###
audio=LWLibavAudioSource(SourceFile, cache=False)
audioDub(last, audio)
return last
""")

pinterf
5th August 2021, 10:22
I couldn't think of a better one. Sorry. :)

I've already tried and started AvsPmod or VDub2 as admin, no success.
MP_Pipeline_slave.exe takes up 40 MB of memory without doing anything. And everything is waiting for a return.

Why is cache=False ignored? There were no problems with it under Win7 :confused:


MP_Pipeline("""
### inherit start ###
SourceFile = "Your source"
### inherit end ###

LWLibavVideoSource(SourceFile, cache=False)

# ### prefetch: 64, 32
### ###
### platform: Win32
HDRAGC(coef_gain=1.0, max_gain=3.0,min_gain=1.0,coef_sat=1.0,max_sat=9.0,min_sat=0.0,avg_lum=128,avg_window=24,corrector=1.0,
\reducer=0.0,response=100,protect=2,mode=2,passes=4,black_clip=0.0,shift=0,shift_u=0,shift_v=0,freezer=-1,shadows=true,debug=0)
### platform: Win64
### ###
audio=LWLibavAudioSource(SourceFile, cache=False)
audioDub(last, audio)
return last
""")

Have you tried without "return last"?

gispos
5th August 2021, 18:09
Have you tried without "return last"?
Just tried. Does not work too.
The only thing that helps is an existing index file, even if you create an empty file with the name of the index file it doesn't help.

Stereodude
5th August 2021, 19:00
I thought we covered this in another thread some time back. You have to index the file the first time not using MP_Pipeline, and then you use MP_Pipeline after that. You can use a very basic script that just opens the file.

From memory there's some sort of timeout that gets triggered internally in MP_Pipeline and LWLibavVideoSource returns something other than a video source during indexing.

gispos
5th August 2021, 19:18
In the past, it was discussed that creates the index in Mp_Pipeline does not work.
Which is not so bad. But that the parameter cache=false is ignored is extremely disturbing.

cache=false works under Win7 and XP

pinterf
6th August 2021, 09:12
In the past, it was discussed that creates the index in Mp_Pipeline does not work.
Which is not so bad. But that the parameter cache=false is ignored is extremely disturbing.

cache=false works under Win7 and XP
MP_Pipeline's master/slave initial handshake communication happens internally through stdin/stdout.
The indexer process is spoiling its messages (creating lwi index ##) into stdout and that confuses MP_Pipeline.
If somehow you would prevent LWLibavVideoSource from sending its progress status to stdout I think it would work fine.

EDIT:
why it works on one machine and not on others: probably a lucky timing issue, I guess.

gispos
6th August 2021, 15:58
If somehow you would prevent LWLibavVideoSource from sending its progress status to stdout I think it would work fine.

And does that have any other side effects?
Maybe best as an additional parameter in LWLibavVideoSource?

pinterf
6th August 2021, 21:25
And does that have any other side effects?
Maybe best as an additional parameter in LWLibavVideoSource?
I've made a modification which made it work fine, but could not understand fully why my change worked, plus run out of time so I can help you only in two weeks.

gispos
6th August 2021, 22:01
I've made a modification which made it work fine, but could not understand fully why my change worked, plus run out of time so I can help you only in two weeks.
Can wait :goodpost:
Thanks

gispos
10th August 2021, 23:21
Asd-g fixed the problem. Thank you!
https://github.com/HomeOfAviSynthPlusEvolution/L-SMASH-Works/releases

Edit: Indexing in MP_Pipeline is now also possible