Jestem więc w stanie transkodować osobne pliki wideo i audio w jeden plik filmowy, na przykład:
ffmpeg -ss 0 -lowres 0 -r 24 -i dcp/picture.mxf -vf "xyz2rgb" -i mov/sound.wav -ac 2 -ab 256k -vb 3000k -t 10 -y mov/movie.mp4
I zobacz i usłysz wynikowy film tak:
ffplay -ss 0 -lowres 1 -vf "xyz2rgb" mov/movie.mp4
Jednak, aby uniknąć konieczności transkodowania filmu i dźwięku razem w jednym pliku, zanim będzie można go zobaczyć, chciałbym po prostu odtworzyć dwa osobne pliki razem. O ile mi wiadomo, ffplay nie pozwala łączyć dwóch różnych plików (prawda?).
Czytając te fora, wydaje się, że możesz przesłać wyjście ffmpeg do ffplay . Poniżej jest tak blisko, jak mam. Nie jest tak blisko. :( Informacje o filmie są wyraźnie przenoszone, ale jest to zielony „śnieg” w odpowiednim rozmiarze klatki, z nutami rzeczywistych zdjęć tańczących w okropnym zielonym śniegu. W ten sposób wiem, że coś z rzeczywistych danych obrazu przenosi , po prostu nie wyświetla się poprawnie.
I nie ma dźwięku. Dźwięk nie przenosi się (nie sądzę). Teraz ... utknąłem. Poniższe sugestie sugerują, co próbuję zrobić, ale to nie działa:
ffmpeg -ss 0 -lowres 0 -r 24 -i dcp/picture.mxf -vf "xyz2rgb" -i mov/sound.wav -f rawvideo - | ffplay -f rawvideo -vf "xyz2rgb" -s 1998x1080 -
źródło
ffplay
. Również ma swoją mocrgb48le
jako format piksela (ze względu na filtr), aleffplay
zakłada sięyuv420p
, więc trzeba także określić, że:ffplay -f rawvideo -s 500x270 -pix_fmt rgb48le -
. Co do segfault: nie mam pojęcia… może mógłbyś gdzieś stworzyć i przesłać mały plik testowy?To nie transkoduje strumieni:
-map 1:1
= drugi plik, strumień 1 (zwykle audio).-c copy
=-c:v copy -c:a copy
. Domyślnie zmiksowany plik jest tak długi, jak dłuższy plik, ale-shortest
byłby tak długi, jak plik krótszy.źródło
Dla moich celów pozwala to na szybki przegląd zawartości DCP (Digital Cinema Package), który można zbudować za pomocą narzędzi open source . DCP używa przestrzeni kolorów xyz, więc musisz mieć zainstalowany filtr wideo xyz , w przeciwnym razie nie będziesz mógł go użyć w powyższej linii. (W porządku, będzie wyglądał na mocno zabarwiony na pomarańczowo, nie zobaczysz prawdziwych kolorów.)
Dodałem kodek mpeg2video b / c, chociaż obniżając jakość, jest niski i buforuje trochę, więc działa płynniej na moim komputerze. (Z jakiegoś powodu bez transkodowania najpierw otrzymuję tylko stopklatkę z sekwencji mjpeg jpeg2000 karmiącej się z MXF z szybkością 125 Mb / s, chyba że zacznę od „- ss 0”, czyli na samym początku plik.) Na maszynie BARDZO SZYBKIEJ, bez określania kodeka (usuń „-c: v mpeg2video”), pełnego rozmiaru („-lores 0”) i rozpoczynając od 0 (-ss 0), możesz teoretycznie przejrzeć kino 2K jakość DCP dokładnie taka, jaka jest. Poza wszelkimi specjalnymi instrukcjami zawartymi w plikach XML - napisy lub inne programy. Ale ogólnie. (BTW „-ac: 2” downmixuje 5.1 do 2.0 - chociaż możesz mieć sprzęt obsługujący odsłuch 5.1, w takim przypadku użyj „-c: kopia”.)
Dzięki Matthiasowi z Belle-Nuit i slhck powyżej za PACJENTOWNIE przeprowadzanie mnie przez to. Dziękuję Ci!!!! To jest całkiem przydatne. W rzeczywistości uratował mnie przed potencjalnie zawstydzającym pokazem filmowym w niedzielnym wieczorem w teatrze Aero. Moja numeracja sekwencji obrazów była poza sekwencją - znalazłem to i naprawiłem!
Wow, wszystko to dla jednego wiersza poleceń, który wiedział;)
Cheereo - b worldpoop.com
źródło