2013-03-13 13 views
8

Mam serwer z 16 wejściami do karty przechwytywania wideo i chcę przesyłać strumieniowo je za pomocą ffmpeg, czy możliwe jest wyjście z kolejnego strumienia, który jest kolażem 4x4 z 16 unikatowych kanałów?Jak połączyć wiele strumieni ffmpeg w jeden kolaż 4x4?

Edytuj: Dodanie nagrody, ponieważ nie przesłano jeszcze żadnej działającej odpowiedzi - nagrodzi ją jako pierwszą, która może pokazać kod w celu utworzenia siatki 4x4 z 16 kanałów na żywo (urządzenie wejściowe to http: // localhost: 8090 /x.mpg gdzie x = liczba 0-15, 352 x 288 wideo w formacie MPEG1VIDEO, kolor YUV420P przy 24-30 FPS) - lub kod, który prowadzi mnie do tego rozwiązania - dane wyjściowe będą znajdować się pod adresem http: // localhost: 8090/all.mpg i będzie strumień 1408x1152 mpg na żywo.

+0

możliwy duplikat [najlepszego sposobu na połączenie 16 transmisji na żywo w kolażu 4x4 na żywo w systemie Linux] (http://stackoverflow.com/questions/15390530/best-way-to-combine-16-live-streams-into -a-live-4x4-collage-in-linux) – Hasturkun

+1

To nie jest duplikat, pochylałem się w stronę ffmpeg, ale zapytałem, czy istnieje lepszy sposób w innym wątku, aby sprawdzić, czy istnieje. Ten wątek jest konkretny, jak wykonać kolaż na żywo w ffmpeg. – CoryG

Odpowiedz

7

Myślę, że szukasz filtra nakładki ffmpeg, tutaj jest documentation z kilkoma przykładami. Kopia przykładu 2x1 znajduje się poniżej, ale musisz wprowadzić poprawki do formatu strumienia, rozmiarów ramek i innych paneli.

ffmpeg -i left.avi -i right.avi -filter_complex " 
nullsrc=size=200x100 [background]; 
[0:v] setpts=PTS-STARTPTS, scale=100x100 [left]; 
[1:v] setpts=PTS-STARTPTS, scale=100x100 [right]; 
[background][left]  overlay=shortest=1  [background+left]; 
[background+left][right] overlay=shortest=1:x=100 [left+right] 
" 

Alternatywnie, istnieje również sposób na wygenerowanie mosiaka z VLC.

+0

Czy istnieje sposób użycia filtra nakładki jako strumienia wyjściowego? – CoryG

+1

Tak, dane wyjściowe filtru można podłączyć do strumienia, tak jak każde inne wyjście ffmpeg. Dokładna konfiguracja przesyłania strumieniowego może być kompleksową odpowiedzią, w zależności od wymagań, ale zobacz http://ffmpeg.org/trac/ffmpeg/wiki/StreamingGuide – Digikata

+3

Zobacz także [wielokrotna nakładka wejściowa w siatce 2x2] (https://ffmpeg.org/trac/ffmpeg/wiki/FilteringGuide#multipleinputoverlayin2x2grid) przykład na [FFmpeg Community Contributed Documentation Wiki] (https://ffmpeg.org/trac/ffmpeg/wiki). – LordNeckbeard

Powiązane problemy