Stream convert (atalakittas)

Fórumok

Sziasztok

Van egy fedora 10 es stream szerverunk (icecast2 es darkice) ami egy kocsmabol a koncerteket fogja onlineban streamelni. Ezt persze a kocsma honlapjan elerheto lessz. Viszont szeretnenk video-t is adni hozza (ip kamera rtsp protocol). A hangot es kepet nem muszaj szinkronizalni (lehet elcsuszas kozottuk) de szeretnenk a hangot ezen keresztul adni, a minoseg miatt, viszont a video stream protocoljat a web designer nem tudja flash ben hasznalni (rtsp -t nem kezel a flash - ezt mondta) Szoval ha lenne valami megoldas hogy ezt a video streamet a szerverre atvegyuk (pl vlc vel) es ezt valami mas formatumba tovabb adjuk (amit a flash kezel). Persze ha a hangot is be tudnank tolni alaja, az lenne a tokeletes. Van valakinek valami otlete hogy egyaltalan meg lehet-e valositani es ha igen mivel es hogyan? (en kozbe a vlc-t nezegetem hogy tud-e ilyent) Elore is koszonom a hozzaszolasokat - velemenyeket. (akar azt is hogy ne foglalkozzak vele mert tul nehez vagy lehetetlen es nem lessz stabil)

Hozzászólások

Legegyszerűbb, ha ffserver-t és ffmpeg "feladót" használsz a feladathoz, ugyanis ebből lehet közvetlen Flash formátumban stream-elni, s ezt a design-er már gond nélkül tudja integrálni.
Egyetlen dologra kell figyelni, hogy az ffservert és az ffmpeget forrásból telepítsd, mert pl. Ubuntu-s csomaggal szívtam eleget.

Ne rtps-ezz, ffserverben én sem nagyon tudtam azt belőni, viszont a sima flash stream tökéletesen megy. Itt a konf, hátha másnak is jól jön:


Port 8090
BindAddress 0.0.0.0
MaxClients 302
MaxBandwidth 100000
#CustomLog -
#NoDaemon

[Feed feed1.ffm]
File /tmp/feed1.ffm
FileMaxSize 150000
#ACL allow 127.0.0.1
[/Feed]

[Stream stream.flv]
Feed feed1.ffm
Format flv
Videostrongc flv
VideoFrameRate 25
VideoSize 320x240
VideoBitRate 80
VideoBufferSize 256
VideoQMin 8
VideoQMax 14
VideoGopSize 200
PreRoll 15
#StartSendOnKey
Audiostrongc libmp3lame
AudioBitRate 32
AudioChannels 1
[/Stream]

# Server status

[Stream stat.html]
Format status
ACL allow localhost
ACL allow 192.168.0.0 192.168.255.255
[/Stream]

[Redirect index.html]
URL http://www.atedomained.hu/
[/Redirect]

A stream-et úgy éred el, hogy

http://atedomained.hu:8090/stream.flv

Ezt pedig már egyszerűen be lehet ágyazni egy weblapba, például egy flowplayer lejátszóba.

A feladás pedig úgy megy, hogy

ffmpeg -i /dev/video0 http://atedomained.hu:8090/feed1.ffm

No persze ha nem távol van a szerver, hanem ugyanaz capture-öl, akkor egyszerűen az ffmpeg-nél a domain helyére a

/tmp/feed1.ffm

azaz

ffmpeg -i /dev/video0 /tmp/feed1.ffm

útvonalat adod meg.

Gyakorlatilag ennyi.

Én írtam még egy kis alkalmazást is, ami wget-el 15 másodpercenként leszedi a

http://atedomained.hu:8090/stat.html

oldalt, ki-grep-eli a
feed1.ffm(input) 91.82.197.253 HTTP/1.1 RECEIVE_DATA 112k 88776 41959k
sort, s ha a feltöltött mennyiség kilobyte értékében nem tapasztal változást, azaz áll a stream, akkor egy script segítségével újraindítja a BIX-ben heverő szerver ffserver részét, majd a feladó gépen az ffmpeg-et, így automatizálva önmagát. Sajnos a feladógép helyén elég instabil a net, így szükségessé vált, de helyi hálón, vagy egyazon gépen belül történő stream-feladás esetén nem jelentkezett ez a gond.

Szerk.: a "[" "]" jeleket cseréld ki "<" ">" jelekre, csak itt a portál nem jeleníti meg másképp.

Ezt nagyon szepen leirtad. Koszonom. Tenyleg ertheto akar egy howto. Be is raktam de elakadtam.
Ezt adja

/etc/ffserver.conf:17: Incorrect keyword: 'Videostrongc'
/etc/ffserver.conf:27: Incorrect keyword: 'Audiostrongc'

Gondolom a formatumokkal van baj. Vagy ujra kell forditsam a ffmpeg et mert valamit nem engedelyeztem. Ujraforditom es meglatom mit mond ...
--
The worst or stupidest ideas are always the most popular.

Bocsi, egy f*** voltam, véletlenül beleírtam a jelzett soroknál hülyeségeket a konfba :)
Javítotott verzió, tedd be ezt:


Port 8090
BindAddress 0.0.0.0
MaxClients 302
MaxBandwidth 100000
#CustomLog -
#NoDaemon

[Feed feed1.ffm]
File /tmp/feed1.ffm
FileMaxSize 150000
#ACL allow 127.0.0.1
[/Feed]

[Stream stream.flv]
Feed feed1.ffm
Format flv
Video flv
VideoFrameRate 25
VideoSize 320x240
VideoBitRate 80
VideoBufferSize 256
VideoQMin 8
VideoQMax 14
VideoGopSize 200
PreRoll 15
#StartSendOnKey
Audio libmp3lame
AudioBitRate 32
AudioChannels 1
[/Stream]

# Server status

[Stream stat.html]
Format status
ACL allow localhost
ACL allow 192.168.0.0 192.168.255.255
[/Stream]

[Redirect index.html]
URL http://www.atedomained.hu/
[/Redirect]

Viszont néhány javaslat: az ffserver konfigját ne az etc-be rakd, hanem a home-ba. A doksijában ajánlják is, gondolom van valami bug benne.
Ekkor módosul egy kicsit az ffserver indítása:

ffserver -f /home/user/ffserver.conf

Második: fordításkor engedélyezd az mp3-mat.

./configure --enable-libmp3lame
make
make install

Elvileg ezek után már nagy gond nem lehet.
Először elindítod az ffservert, majd utána az ffmpeg-et.