Добрый день, пожалуйста, очень нужна помощь.
Накладываю на видео водяной знак:
with (
tempfile.TemporaryFile("wb", delete=False, suffix=".png") as watermark_file,
tempfile.TemporaryFile("wb", delete=False, suffix=".webm") as video_file):
watermark_file.write(buff.read())
В временной папке создаю файл в который записываю водяной знак из io.BytesIO и файл куда ffmpeg должен записать результат
(
ffmpeg
.input(str(path))
.output(
video_file.name,
vf=f"movie='{watermark_file.name}' [watermark]; [in][watermark] overlay='{overlay}' [out]"
)
.global_args('-copyts')
.run()
)
с помощью библиотеки ffmpeg-python работаю не на прямую с консолью.
Проблема в том, что при запуске .run() к консоль выводит следующее:
[Parsed_movie_0 @ 00000196cbe1fd40] Failed to avformat_open_input 'C'
[AVFilterGraph @ 00000196cd660c80] Error initializing filters
[vost#0:0/libvpx-vp9 @ 00000196cbe1f800] Error initializing a simple filtergraph
Error opening output file C:\Users\smeta\AppData\Local\Temp\tmp_a4zid9y.webm.
Error opening output files: No such file or directory
Но если я скопирую из temp файл с водяным знаком и закину в рабочую область:
vf=f"movie='{'test.png'}' [watermark]; [in][watermark] overlay='{overlay}' [out]"
то все работает как надо. Т.е. по видимому проблема с путем к водяному знаку, и я не понимаю что мне делать.
Прошу помощи