Jak zrobić -vf „movie =…” wskazuje na inny folder w FFmpeg

2

Próbuję oznaczyć film znakiem wodnym innego filmu umieszczonego w innym folderze.

Źródło wideo [video.mov] znajduje się w folderze podobnym do

x:\test1\

Nakładka wideo [overlay.mov] jest umieszczona w

x:\test2\

Używam tego polecenia:

ffmpeg.exe -y -i x:\test1\video.mov -vf "movie=x:\test2\overlay.mov [watermark]; [in][watermark] overlay=0:0 [out]" x:\test3\video_overlay.mov

Ale pojawia się komunikat o błędzie

Missing key or no key/value separator found after key 'test2overlay.mov'

Podczas umieszczania wszystkich plików w tym samym folderze i korzystania z tego:

ffmpeg.exe -y -i video.mov -vf "movie=overlay.mov [watermark]; [in][watermark] overlay=0:0 [out]" video_overlay.mov

wszystko dziala.

Jak więc uzyskać filtr wideo, aby załadować plik nakładki z innego folderu w systemie Windows?

evilheinz
źródło

Odpowiedzi:

2

Pozbądź się moviefiltra źródłowego i użyj -filter_complex(używany do filtrowania z wieloma wejściami) zamiast -vf(używany do filtrowania z jednym wejściem). Teraz możesz po prostu wymienić swoje dane wejściowe jak zwykle, a następnie powiedzieć każdemu z filtrów, z którymi danymi wejściowymi chcesz pracować.

Ponieważ masz tylko dwa dane wejściowe, możesz po prostu zrobić:

ffmpeg.exe -i x:\test1\video.mov -i x:\test2\overlay.mov -filter_complex overlay x:\test3\video_overlay.mov

Będzie to to samo, co:

ffmpeg.exe -i x:\test1\video.mov -i x:\test2\overlay.mov -filter_complex "[0:0][1:0]overlay[out]" x:\test3\video_overlay.mov

Uzyskać najnowszą kompilację ffmpeg jeśli twój nie obsługuje -filter_complexw Zeranoe FFmpeg Buduje i zobaczyć FFmpeg Filtry Dokumentacja aby uzyskać więcej informacji.

Llogan
źródło
Dzięki, dobrze działa! Niestety nie działa to z ffmbc, którego chcę używać do kodowania ProRes4444.
@evilheinz Jestem rozczarowany brakiem połączenia z ffmbc do ffmpeg. Powinienem o tym
pomylić
Tak, nawet nowo wydana wersja 0.7rc8 nie działa przy użyciu opcji -filter_complex. Jedynym obejściem, jakie mogłem wymyślić, byłoby skopiowanie pliku ffmbc.exe do tego samego folderu, co wideo nakładki i uruchomienie go z tego miejsca. Ale ponieważ planowałem użyć innego interfejsu użytkownika jako interfejsu dla ffmbc, nie jest to najlepsza opcja ...
evilheinz
0

Jak wspomniano w bilecie # 2166 , musisz podwójnie uciec z dwukropka:

movie=x\\:/test1/video.mov
slhck
źródło
-1

Chociaż @ LordNeckbeard jest rozwiązaniem, którego osobiście bym użył (ponieważ uważam, że jest bardziej czytelny), problem może być związany z tymi ukośnikami. Spróbuj użyć movie=x:/test2/overlay.movzamiast tego.

FFmpeg został opracowany przede wszystkim dla systemów * nix, gdzie \jest używany jako znak zmiany znaczenia, a nie jako separator; a ponadto łańcuchy filtrów / wykresy filtrów ffmpeg są szczególnym przypadkiem, dlatego należy je zacytować.

zła
źródło
Powoduje to ten sam błąd „Brak klucza lub brak klucza / wartości”, ale tym razem z „/test2/overlay.mov”
evilheinz