ffplay - Nie można znaleźć pliku przy użyciu lavfi [duplikat]


4

To pytanie ma już odpowiedź tutaj:

Mam problem z używaniem lavfi w ffplaycelu zastosowania filtrów.

Po prostu próbuję uzupełnić jeden film i nałożyć inny film w wyściełanym obszarze.

Moje dane wyjściowe polecenia i konsoli są następujące:

ffplay -f lavfi "movie=h:\test.mpg,pad=704:770:0:0[padded];movie=h:\test2.mpg[2];[padded][2]overlay=shortest=1:x=0:y=490[1]"

ffplay version N-69920-g8bc8001 Copyright (c) 2003-2015 the FFmpeg developers
  built with gcc 4.9.2 (GCC)
  configuration: --enable-gpl --enable-version3 --disable-w32threads --enable-av
isynth --enable-bzlib --enable-fontconfig --enable-frei0r --enable-gnutls --enab
le-iconv --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --
enable-libfreetype --enable-libgme --enable-libgsm --enable-libilbc --enable-lib
modplug --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrw
b --enable-libopenjpeg --enable-libopus --enable-librtmp --enable-libschroedinge
r --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame --en
able-libvidstab --enable-libvo-aacenc --enable-libvo-amrwbenc --enable-libvorbis
 --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-
libx265 --enable-libxavs --enable-libxvid --enable-lzma --enable-decklink --enab
le-zlib
  libavutil      54. 18.100 / 54. 18.100
  libavcodec     56. 22.100 / 56. 22.100
  libavformat    56. 22.100 / 56. 22.100
  libavdevice    56.  4.100 / 56.  4.100
  libavfilter     5. 11.100 /  5. 11.100
  libswscale      3.  1.101 /  3.  1.101
  libswresample   1.  1.100 /  1.  1.100
  libpostproc    53.  3.100 / 53.  3.100
[Parsed_movie_0 @ 0000000000399480] Failed to avformat_open_input 'd'
[lavfi @ 0000000000396a60] Error initializing filter 'movie' with args 'd:test.mpg'
movie=d:\test.mpg,pad=704:770:0:0[padded];movie=d:\test2.mpg[2];[padded][2]overlay=shortest=1:x=0:y=490[1]: No such file or directory

Aby uprościć rzeczy, pojawia się ten sam błąd, gdy próbuję radykalnie uprościć polecenie, aby:

ffplay -f lavfi "movie=d:/test.mpg"

Mam nadzieję, że po prostu używam złej składni, aby określić lokalizację plików tutaj w lavfi.


Po pierwszym „.mpg” masz przecinek, a po drugim średnik; czy mają to być przecinki czy średniki?
— RockPaperLizard

Pokaż pełne dane wyjściowe konsoli.
— llogan

Dodałem wyjście konsoli. Mam nadzieję, że to pomoże znaleźć odpowiedź. Dzięki!
— occvtech

Pokaż zrzut jako tekst zamiast zrzutu ekranu. W każdym razie dane wyjściowe konsoli są tekstowe. Tekst jest przeszukiwalny, mniejszy w bajtach, a zawartość można łatwo skopiować w celu przetestowania.
— llogan

Dodałem tekst. Czy jest odpowiednio sformatowany, czy jest lepszy sposób? Jeszcze raz dziękuję za wszelką pomoc!
— occvtech

Odpowiedzi:


4

Dwie rzeczy:

  • Twoje nawiasy i cytaty są błędne. Miałeś "][1]na końcu, ale byłoby to o jedną nawias za dużo i powinieneś zamknąć cytat tylko na samym końcu.

  • W przypadku systemu Windows należy dwukrotnie usunąć dwukropek w moviefiltrze. W przeciwnym razie zostanie zinterpretowany jako separator opcji. Nie wiem dlaczego dokładnie, ale bilet nr 2166 o tym wspomina .

To powinno działać:

ffplay -f lavfi "movie=d\\:/test.mpg,pad=704:770:0:0[padded];movie=d\\:/test2.mpg[2];[padded][2]overlay=shortest=1:x=0:y=490[1]"


OK, zamykamy się !! Właśnie wypróbowałem całą różnorodność znaków cudzysłowu i nic nie działało. Za każdym razem pojawia się ten sam błąd. Próbowałem jednak skopiować test.mpg do c:\users\userkatalogu (moja bieżąca domyślna płyta CD), a teraz polecenie ffplay -f lavfi "movie=test.mpg"działa. Nie mogę go uruchomić z D (co jest ważne dla moich potrzeb), ale wygląda na to, że zbliżamy się. Wszelkie inne przemyślenia na temat formatowania ścieżki? Dzięki jeszcze raz!
— occvtech

2
Rozumiem, zobacz moją zaktualizowaną odpowiedź. Potrzebujesz ucieczki od podwójnego ukośnika.
— slhck 21.04.15

To zrobiło !! Dzięki za pomoc!! Mam jednak inne pytanie: tracę możliwość przewijania wideo za pomocą lavfi. Wiem, że to dlatego, że próbuje dodawać filtry i dekodować w locie. Czy jest coś takiego? Może przez inny filtr ... lub tworząc jakiś indeks? Dzięki jeszcze raz!
— occvtech
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.