Portál AbcLinuxu, 6. července 2025 05:04

live stream tv(mplayer)->OggTheora

14.9.2005 15:18 | Přečteno: 3997× | Linuxové báchorky

Zdravim

Původně to měla být otázka do diskuze, ale jak už to tak bývý, tak problém se během psaní dotazu vyřešil sám, stačilo jen a pouhé RTFM.

Tedy vlastne spustit ffmpeg2theora bez parametrů a bylo to tam napsaný:


Live streaming from V4L Device:
         ffmpeg2theora --v4l /dev/video0 --inputfps 15 -x 160 -y 128 -o - \
                 | oggfwd iccast2server 8000 password /theora.ogg

Takže stačilo oba návody zkombinovat a voiallá:

ffmpeg2theora --v4l /dev/video0 --inputfps 25 -x 160 -y 128 -o - | ezstream -c /etc/ezstream/ezstream_moje.xml
Ezstream je nastavenej na /dev/stdin a překódování vypnuto.

Jinak jsem ještě zjistil, že formát mpeg-pes má souvislost s DBV vysíláním.

A tady je ta původní otázka:

-----------------------------

Zdravim

Snažím se rozjet live stramování obrazu z TV přes síť. Formát výstupního videa je mo vpodstatě volný, ale nesmí to být uzavřený formát, takže zbývá vlastně jen OggTheora.

Postupoval jsem podle návodu http://www.oddsock.org/guides/video.php a víceméně jsme to rozjel, ale mám problém s výstupem z mplayeru a jeho překódování pomocí ffmpeg2theora.

návod:

1) spustit icecast server, konfigurace v xml je jednoduchá:
icecast -c /usr/local/etc/icecast.xml

2) vytvořit fifo kam bude mplayer sypat svůj výstup
mkfifo grab.mpg (pro mplayer -vo mpegpes)
mkfifo stream.yuv (pro mplayer -vo yuv4mpeg)

3) spustit mplayer
mplayer tv:// -tv driver=v4l2:input=1:width=100:height=50 -vo mpegpes (-> grab.mpg)
mplayer tv:// -tv driver=v4l2:input=1:width=100:height=50 -vo yuv4mpeg (-> stream.yuv)

ezstream umí číst buď z roury (jako vstupní soubor se použije /dev/stdin) nebo z normálního souboru. Pokud mu předhodim klasický mpeg video a v ezstreamu zapnu překódování tak celá sestava funguje a video putuje přes síť i se zvukem. Když jako format použiju yuv4mpeg, tak mplayer zacne posilat data do roury, spustim ezstream a ten scodi mplayer a zakrici:

Connecting to http://localhost:8000/theora.ogg...SUCCESS.
Streaming /stream.yuv
Opening file (/stream.yuv)
Songinfo is (stream)
Unknown format THEORA, passing right on through!
Unable to open file /stream.yuv

Kdyz jako format dam mpegpes tak se zda jako by to fungovalo:

Connecting to http://localhost:8000/theora.ogg...SUCCESS.
Streaming /grab.mpg
Opening file (/grab.mpg)
Songinfo is (grab)
Unknown format THEORA, passing right on through!
Input #0, mpeg, from '/grab.mpg':
  Duration: N/A, bitrate: 104857 kb/s
  Stream #0.0[0x1e0]: Video: mpeg1video, yuv420p, 100x50, 25.00 fps, 104857 kb/s
  Pixel Aspect Ratio: 1.00/1   Frame Aspect Ratio: 2.00/1
  Resize: 100x50

Ale problem zrejme bude v tom silenym bitrate. Proto jsem tomu dal mrnavy format 100x50, ale bitrate se nezmenil. Pokud pri teto konfiguraci pouziju misto roury /grab.mpg normalni videosoubor tak to streamuje i se zvukem:

Connecting to http://localhost:8000/theora.ogg...SUCCESS.
Streaming /test.mpg
Opening file (/test.mpg)
Songinfo is (test)
Unknown format THEORA, passing right on through!
Input #0, mpeg, from '/test.mpg':
  Duration: 00:03:51.3, start: 0.333344, bitrate: 1236 kb/s
  Stream #0.0[0x1e0]: Video: mpeg1video, yuv420p, 320x240, 25.00 fps, 1098 kb/s
  Stream #0.1[0x1c0]: Audio: mp2, 44100 Hz, stereo, 112 kb/s
  Pixel Aspect Ratio: 1.00/1   Frame Aspect Ratio: 1.33/1
  Resize: 320x240
      0:00:06.57 audio: 47kbps video: 205kbps

Ezstream poustim takhle:

ezstream -c /etc/ezstream/ezstream_moje.xml

Zjevne je problem na vystupu z mplayeru. Ten napad s fifo jsem nasel zde: http://www.root.cz/clanky/avi-2-dvd-pod-linuxem/

V jiz zminenem navodu: http://www.oddsock.org/guides/video.php Je tam navod jak streamovat existujici mpeg soubor a na konci je teoreticka zminka o streamovani z webkamery. Je tam ale trochu rozdil. ezstream ma vypnuty prekodovani a ocekava na stdin data v OggTheora. Pred nim je v kolone ffmpeg2theora. Tohle jsem sice zkousel, ale z funkcniho hlediska nevidim rozdil, ezstream ma v konfiguraku taky konverzi pomoci ffmpeg2theora.

Nevite nekdo co s tim? Cilem je online konvertovat vystup z mplayeru do OggTheora.

Diky
Zdenek

       

Hodnocení: 100 %

        špatnédobré        

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

Komentáře

Nástroje: Začni sledovat (2) ?Zašle upozornění na váš email při vložení nového komentáře. , Tisk

Vložit další komentář

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.