Log in

View Full Version : vspipe Ignoring Contents of VPY Script


jbd5010
4th December 2020, 15:19
Hello, I have the following VapourSynth script:


import vapoursynth as vs
import havsfunc as haf
core = vs.get_core()
clip = core.ffms2.Source(source='T:\Captured\\LV_3.mpg')
clip = haf.QTGMC(clip, Preset='Slower', TFF=False)
clip = core.resize.Spline36(clip, 640, 480)
clip = core.std.Crop(clip, 8,8,0,4)
clip.set_output()


And I have the following batch file:

vspipe LV.vpy - | ffmpeg -i pipe: -i "T:\Captured\LV_3.mpg" -c:v libx264 -crf 18 "K:\LV3_1.mp4"


Within VapourSynth editor, when I open the preview window, my QTGMC, resize, and crop functions all work and the video looks the way I want it to. But when I run my BAT file, all of those are ignored and it's like I'm just running FFMPEG directly on the source file and not processing using the VPY script.

The only warnings I get when running FFMPEG are:


Format ADP detected with only a low score of 25, misdetection possible!


and...


Thread message queue blocking; consider raising the thread_queue_size option (current value: 8)



Any ideas?

Jukus
9th December 2020, 12:39
vspipe --y4m LV.vpy - | ffmpeg -i pipe: -c:v libx264 -crf 18 "K:\LV3_1.mp4"

Selur
11th December 2020, 09:50
If your source is video only I agree with Junkus. :)

Assuming that your input is not video only:
My guess is that your aim was to process the video using Vapoursynth and process the audio through ffmpeg.
Problem with you call is that you have two inputs, but you are not providing a mapping to what ffmpeg should do with the content. And you are also not specifying what should happen with the audio (so ffmpeg will use some default audio reencoding settings, which is probably not what you want.)
Thus FFmpeg probably simply only processes the second input and ignores the first.
-> you might want to read up on ffmpeg and mapping (https://trac.ffmpeg.org/wiki/Map) and ffmpeg and audio handling (https://trac.ffmpeg.org/wiki/Encode/HighQualityAudio).

Cu Selur