#Smoothie on Fedora

364 messages · Page 1 of 1 (latest)

onyx parrot
#

so atzur created me a script that worked for a while on fedora, but then it stopped (pretty sure its not a big issue in the script code, but i cant fix it myself), i will send the script and the error so that you can take a look at it

relevant pc specs:
Intel Core i5-11400F
ASRock RX 6700 XT Challenger Pro 12GB
Nobara Linux 36

#

wait no i cant send files

#

hm

#

okay heres the script

#

and heres the error

#

wait no

#

incorrect screenshot

#

okay this is the correct screenshot

#

vspipe blend.vpy - --y4m -a video="video.mp4" | ffmpeg -i - -i video.mp4 -map 0:v -map 1:a -c:v libx264 -preset medium -crf 17 -c:a copy output.mp4

#

this is the run command

leaden spruce
#

send the vpy file

#

do you know some amount of python?

onyx parrot
#

just the stuff you learn in school

#

which is basically bullshit

leaden spruce
#

find the vpy file

#

and fine that specific line

onyx parrot
#

well i sent it already

#

but this is it

#

the screenshot of it

leaden spruce
#

yeh remove .decode('utf-8')

onyx parrot
#

okay lets see

leaden spruce
#

just keep video = video

onyx parrot
#

okay we got further thanks

#

Deprecated option --y4m specified, use -c y4m instead

#

it spitted out this

#

i think i can figure it out

leaden spruce
#

does nothing

#

actually

#

if just vspipe not liking you using an old cmd arg

onyx parrot
#

yep i am

onyx parrot
#

maybe you can correct it cause it seems im not fixing it correctly

empty quartz
onyx parrot
#

cause if i correct it there is no error

#

it just says invalid data

#

is there any way i can catch the error?

empty quartz
#

it means that something broke

#

no clue what tho

#

you can try removing the ffmpeg part

#

ie everything after the pipe

onyx parrot
#

oh okay

#

HOLY FUCK

#

ITS SPAMMING LIKE SHIT

#

i force closed the terminal

#

vspipe blend.vpy - -c y4m -a video="video.mp4"
well i did this which means that it probably wasnt outputting anything

#

and i am too dumb to actually write the output

#

well it did it correctly i presume

#

but

#

the file size increased from 5.3MB to 1.2GB

empty quartz
#

try playing the video

empty quartz
onyx parrot
#

just as i would expect it to be

empty quartz
#

interesting

#

but ffmpeg wouldnt accept it?

onyx parrot
#

wdym

#

well with the ffmpeg args it failed while processing args

empty quartz
#

failed while processing args?

onyx parrot
#

i dont rememberus anymore

onyx parrot
onyx parrot
#

this is with da deprecated option fixed

empty quartz
#

gotta tell u i have no idea

#

but uh

onyx parrot
#

well something in the ffmpeg part

#

isnt there something obvious?

#

what about the args at start

#

-i - -i

empty quartz
#

and run the ffmpeg command by itself

#

after vspipe

#

see if that works

#
vspipe blend.vpy output.y4m -c y4m -a video="video.mp4"
ffmpeg -i output.y4m -i video.mp4 -map 0:v -map 1:a -c:v libx264 -preset medium -crf 17 -c:a copy output.mp4
onyx parrot
#

yes this worked

#

the file is now 992KB

#

and looks just a tiny bit worse than the 1.2GB file

#

@empty quartz atzurus and how do i make it so that it only blends, doesnt interpolate

#

cause just removing the newnum doesnt make it smooth cause it just cuts the frames down to 60

#

pretty sure it doesnt blend

empty quartz
#

comment this out

#

and replace every instance of ìnterp after that with src

#

actually thats complicated

empty quartz
onyx parrot
#

im not sure

#

do i keep ()?

empty quartz
#

what

onyx parrot
#

like im very confused

#

i can just send you the file

empty quartz
#
import vapoursynth as vs
from os import path

import havsfunc as haf
import weighting

core = vs.core

video = video

src = core.ffms2.Source(path.abspath(path.expanduser(video)))

interp = src

blended_frames = int(interp.fps / 60 * 1.27) # change 60 and 1.27 to fit your output fps / blur amount
if blended_frames % 2 == 0: blended_frames += 1

weights = weighting.equal(blended_frames)

blended = core.frameblender.FrameBlend(interp, weights)

out = haf.ChangeFPS(blended, 60) # again, change to fit output fps

out.set_output()
onyx parrot
#

okay thanks ima see

#

okay this is super fast and really good

#

atzurus ur da chadus

#

super epik extracool

#

but

#

how do i make it so that both commands the ffmpeg and da other thingus run at the same time

onyx parrot
#

cause the y4m file size is gigantic

empty quartz
#

you can delete it after

onyx parrot
#

well yes

#

but for a 887MB video that has 36 secs

#

its gonna be about 213GB file size

#

which is brutal

#

thats why i stopped my terminal

empty quartz
#

you could cut it up into parts and render them separately ig

onyx parrot
#

no extracool

#

but well at least its kinda working thanks

#

epik

#

@empty quartz i think i got it running

#

vspipe blend.vpy - --y4m -a video="video.mp4" | ffmpeg -i video.mp4 -i video.mp4 -map 0:v -map 1:a -c:v libx264 -preset medium -crf 17 -c:a copy output.mp4

empty quartz
#

nice

onyx parrot
#

well im testing the frame blending now

#

coz it doesnt seem smoothus at first

#

but at least it worke

#

thanks a lot atzurus extracool

#

wait no

#

it dont worke WHAT

#

dunno if i did something inkorrectly

#

but

#

the fps are set to 30

#

and the file size is identical to the one with 60fps and its also the same smoothness

#

doesnt look to me like 30fps

#

@empty quartz kan ya supportus now ples? extracool

onyx parrot
#

yeah i think i broke something

#

i replaced the blend.vpy file with the one from last time

#

and the output is still 380.3MB

#

and looks the same as everything else

#

sooooo there is something wrong

#

with this

#

vspipe blend.vpy - --y4m -a video="video.mp4" | ffmpeg -i video.mp4 -i video.mp4 -map 0:v -map 1:a -c:v libx264 -preset medium -crf 17 -c:a copy output.mp4

empty quartz
onyx parrot
empty quartz
#

ffprobe

#

mpv

#

mediainfo

#

anything

onyx parrot
#

ffprobe says its still at 240fps

#

and hasnt blended down

empty quartz
#

are you checking the right video

onyx parrot
#

well there are 3 videos that are the same

empty quartz
#

are you editing the right blend.vpy

onyx parrot
#

meanwhile the blend.vpy file has changed 3 times

empty quartz
#

this one has a dot

#

this doesnt

onyx parrot
#

ohhhhh

#

well that was the issue

#

im frikkin dumb

#

well lets rename stuff ig

#

i knew this must have been a simple issue

#

okay there is a bunch of weirdness in my terminal now but it looks like its working idk

empty quartz
#

youre outputting to stdout again

onyx parrot
#

FUk

#

but

#

there is an output.mp4 file being generated

#

so whats wrong

#

ima wait for it to complete i think xD

#

occasionally it shows this

#

but yeah, its really fast

#

i guess thats the output to stdout

#

vspipe .blend.vpy - --y4m -a video="video.mp4" | ffmpeg -i video.mp4 -i video.mp4 -map 0:v -map 1:a -c:v libx264 -preset medium -crf 17 -c:a copy output.mp4

#

well i did this

#

so where is the part that i should fix

#

that prints out stuff into stdout

empty quartz
#

that dash

onyx parrot
#

okay kool

#

and is it an issue now, should i close the terminal and try again?

empty quartz
#

what

onyx parrot
#

like is the video going to be blended and stuff like it should be

#

even if the command is broken

leaden spruce
onyx parrot
#

fug

#

what should i replace it with?

leaden spruce
#

but since there is no | it directs to stdout

#

| ffmpeg *

onyx parrot
#

wait wha?

#

dont i have it there?

#

im pretty sure i dont understand

leaden spruce
#

vspipe blend.vpy - --y4m -a video="video.mp4" | ffmpeg -i video.mp4 -i video.mp4 -map 0:v -map 1:a -c:v libx264 -preset medium -crf 17 -c:a copy output.mp4

onyx parrot
#

okay thangus

leaden spruce
#

the | tells the terminal to redirect the stdin to ffmpeg

empty quartz
leaden spruce
empty quartz
#

idk im tired and wanna play ow you deal with this topito

leaden spruce
#

me want to play Halo

onyx parrot
#

my cpu fan is skreamingus

#

i have and offtopik question

#

kan i somehow figure out my cpu tdp in linux?

leaden spruce
onyx parrot
#

i googled a bunch of times inb4

#

dats why i asked you

leaden spruce
#

idk

onyx parrot
#

maybe if you had a better solutionus

leaden spruce
#

cpupower-monitor

onyx parrot
#

FRIKKIN PINIS

#

I FORGOT THE DOT BEFORE blend.vpy

leaden spruce
#

i removed that

onyx parrot
#

well lets do it again

#

ig

leaden spruce
#

thats why it worked

onyx parrot
#

no

#

cause my blend.vpy file is called .blend.vpy

#

so dunno

#

ima rename it just in case

#

well lets rerun

leaden spruce
#

cant you just create a bash file

#

and pass input vid and output vid to the commands

onyx parrot
#

now its doing this stuff again when its using blend.vpy

onyx parrot
leaden spruce
#

just use the fuckin command i gave you

onyx parrot
#

vspipe blend.vpy - --y4m -a video="video.mp4" | ffmpeg -i video.mp4 -i video.mp4 -map 0:v -map 1:a -c:v libx264 -preset medium -crf 17 -c:a copy output.mp4 well this one

#

and?

leaden spruce
#

yes

onyx parrot
#

i know you wanna play halo

#

i also wanna play minekraftus

#

but i kant do this stuff myself

leaden spruce
#

let make py script later

#

ok i will make asap

onyx parrot
#

thanks a lot xD

leaden spruce
#

verify if that cmd is working

#

do you have python installed?

onyx parrot
#

i think i should

#

how do i verify

leaden spruce
#

by running the command

onyx parrot
#

just sudo dnf install python3

#

ah okay

#

yep

onyx parrot
#

so i just go into the python shell

#

and write this ye?

leaden spruce
#

no

#

check those cmds work in normal bash

onyx parrot
#

well they should

#

they are working but only partially

#

they do everything but they dont interpolate nor blend the video

#

it basically just runs the ffmpeg command

#

if i understand it correctly

leaden spruce
onyx parrot
#

config issue where

#

this is blend.vpy

leaden spruce
#

basically how blur frames are generated
(interpolation fps/output fps) * blur intensity

#

use that equation

onyx parrot
#

use where

leaden spruce
#

if my interpolation fps is 960 and output is 60 and intensity is 1

#

then blurframes generated are 16

onyx parrot
#

okay so what do i do

leaden spruce
#

increase this shit

#

can you send me the script

onyx parrot
#

yep

leaden spruce
#

just copy and paste the contents here

leaden spruce
#
import vapoursynth as vs
from os import path
import havsfunc as haf
import weighting

# Config
# Set this value to your input video FPS.
Input_FPS = 240

# Interpolation
Use_GPU=True
Interpolation_FPS=960
Interpolation_Preset='medium' 
Interpolation_Tuning='weak'
Interpolation_Algo=23

# Frameblending
Frameblend_FPS=60
Frameblend_Intensity=1.27

# Don't touch anything beyond this point unless you need to
core = vs.core
video = video
src = core.ffms2.Source(path.abspath(path.expanduser(video)))

interp = haf.InterFrame(src,
    GPU=Use_GPU,
    NewNum=Interpolation_FPS, # interp fps
    Preset=Interpolation_Preset, # speed
    Tuning=Interpolation_Tuning, # quality
    OverrideAlgo=Interpolation_Algo
)

blended_frames = int((interp.fps / Input_FPS) * Frameblend_Intensity) # change 60 and 1.27 to fit your output fps / blur amount
if blended_frames % 2 == 0: blended_frames += 1

weights = weighting.equal(blended_frames)

blended = core.frameblender.FrameBlend(interp, weights)

out = haf.ChangeFPS(blended, Frameblend_FPS) # again, change to fit output fps

out.set_output()
#

is this readable now

#

OHH

#

now ik why

onyx parrot
#

niiiice

leaden spruce
#

wait don't copy yet

onyx parrot
#

kool

#

so it should worke now?

leaden spruce
#

read the comments

leaden spruce
#

set to whatever fps you record at

onyx parrot
#

okay kool

#

thanks so ima test

#

nope still not doink it

#

its just doing da ffmpeg thingus

#

vspipe blend.vpy - --y4m -a video="video.mp4" | ffmpeg -i video.mp4 -i video.mp4 -map 0:v -map 1:a -c:v libx264 -preset medium -crf 17 -c:a copy output.mp4

#

i think dis is incorrect

leaden spruce
#

send a video or screenshot

onyx parrot
#

well i cant really do a proper screenshot

#

but i guess ima do a few

#

gimme a sec

#

i guess this should be enough, if you want more just tell me

onyx parrot
#

but ima tell you what works

#

but it makes files immensely big

#

vspipe .blend.vpy .output.y4m -c y4m -a video="video.mp4"

#

ffmpeg -i .output.y4m -i video.mp4 -map 0:v -map 1:a -c:v libx264 -preset medium -crf 17 -c:a copy output.mp4

#

but the y4m file can be 1.2GB for a 5MB video.mp4

#

which means for a 800MB 30 second video, its gonna be about 200GB

#

and i think thats unusable

leaden spruce
#

frameblending occurs

#

reducing the filesize

empty quartz
#

what are u saying

#

y4m is large

onyx parrot
#

i mean atzur said he has no idea

#

because the double thingus command was working inb4

#

vspipe blend.vpy - --y4m -a video="video.mp4" | ffmpeg -i - -i video.mp4 -map 0:v -map 1:a -c:v libx264 -preset medium -crf 17 -c:a copy output.mp4

#

this was working this summer

#

but now it doesnt work unless i replace ffmpeg -i - -i video.mp4 with fffmpeg -i video.mp4 -i video.mp4 and when it does work, it doesnt do anything other than the ffmpeg command

#

@empty quartz

#

its fixed

#

i just had to put Use_GPU=False

#

instead of True

#

frikuus

#

and its working with the old command

#

and not being big

#

and stuff like that

#

my bad

empty quartz
#

oh

onyx parrot
#

extra good news guys

#

wait i should probably post this in a different channel

#

but i gotta say its working EPIKUS

onyx parrot
#

ripus i wanted to send da files but it dont worke

#

ima upload them to a site

onyx parrot
#

but ya dont know which one is which xD

#

okay now ya do

leaden spruce
#

why the interpolation value so low

onyx parrot
onyx parrot
leaden spruce
#

go higher

onyx parrot
#

ye but i wont use this script anyway

#

cause it hasnt got the uhm

#

forgor how they are called

#

masks

#

yes masks

leaden spruce
onyx parrot
empty quartz
onyx parrot
#

thats super epikus

#

that would be like

#

official smoothie level

#

no?

#

i think so at least

empty quartz
onyx parrot
leaden spruce