hang átvitele másik gépre wlan-on

 ( d3xt3r | 2012. április 25., szerda - 12:41 )

Olyant vajon lehet csinálni, hogy wifin keresztül egy linuxos gépre átviszem a hangot amit alapból kiadna a gép, majd onnét ki egy hangszóróra? Onnét jutott ilyesmi eszembe, hogy itthon notebookot használok, és szeretném teljesen kábelmentessé tenni a dolgokat, alapból is megy egy masina, (samba, ftp, torrent etc) és azt használhatnám erre is akár, feltéve ha ilyent lehet. Ötlet a megvalósításra?

Hozzászólás megjelenítési lehetőségek

A választott hozzászólás megjelenítési mód a „Beállítás” gombbal rögzíthető.

Streaming?

icecast pl jó erre?

Plan 9 operacios rendszeren ez egy alapveto kernel szolgaltatas. :)

pulseaudioval lehet

--
NetBSD - Simplicity is prerequisite for reliability

és pl egy win7, vagy egy winxp? ott hogyan oldjam meg?

shoutcast, icecast, winamp, vlc

Van Windows-ra is bináris.

Mivel vezetékes hálózaton én is szerettem volna hasonlót csinálni, de nem találtam kész megoldást, pont a nyárra van nálam tervbe véve egy Linux-Windows megoldás összelapátolása. Az elv annyi lenne, hogy mindkét rendszeren egy loop eszközről "rögzítené" a hangot egy kliens program, UDP-n küldené ki a hálón, a lejátszó gépen pedig a szerver egy normál programként adna ki hangot, mondjuk alsa-ra.

Erős a gyanúm, hogy a DNF-re fog hajazni a projekt, de az is lehet, hogy nem... Mindenesetre ha megcsinálom, majd szólok.

nem értem minek újra feltalálni valamit

Eszemben sincs. Sőt, nagyon boldog lennék, ha mondaánl valami olyan programot, ami gyógyír a bajomra, és nem kellene súlyos tízórákat eltöltenem azzal, hogy megértsem, hogyan működik a hangrendszer.
Íme a kritériumok:
A server fusson Linux-on, a kliens Linux-on és Windows-on is (pulseaudio már itt kilőve).
Legyen transzparens, azaz bármely program, amit futtatok, ugyanúgy működjön, mintha a helyi hangkártyáre küldene hangot.
Legyen kicsi a késleltetés, mondjuk a 10ms-os nagyságrendben. (Játék 6 csatornás hangját kellene kiküldeni egy olyan laptopról, ahol csak analóg kimenet van, se optika, se hdmi)

Kifejezetten rövid lista, azt' mégse találtam semmit, ami tudja ezeket.

ezek alapján szinte a legtöbb streaming program tökéletes a számodra, leszámítva a 10ms nagyságrendet, ami technikailag lehetetlen

Ezen jókat szoktak vitatkozni körülöttem az emberek, de szerintem a 10ms nagyságrendbe még a 60-70 is belefér (a 100 lenne már a következő), és lehet, rosszul látom, de ez szerintem abszolút megközelíthető. Ha mégsem, akkor egy érdekes hobbi projekt lesz, amiből ismét tanultam valamit.

Konkrét tapasztalatod is van esetleg, hogy melyik program működik?
Én VLC-t próbáltam elsőre befogni erre a feladatra, ott minimálisra vett pufferekkel is rémesen nagy volt a késleltetés, valahol 1s környékén. Ez számomra még filmnézés céljára is borzasztó.

Ha csak szimplán megpróbálod mindenféle varázslat nélkül a bemenetet a kimenetetre húzni hangkártyák esetében, már ott több szokott lenni, mint 10ms és akkor még csak nem is puffereltél legalább 1 frame-et, aminek egyenes következménye a recsegő hang. Ha hálózaton próbálod ezt átküldeni, akkor valami low latency protokoll kell, pl.: udp, de viszont itt is szükséged van pár frame pufferelésére. Jön a szerver része, a bejövő adatokat puffereled, továbbküldöd. Kliens oldalon ismétled ugyan ezt. Vagyis csak 3x pufferelsz, alsóhangon 10ms környékén, a network latency-t még bele sem számoltuk a programok logikai részéről nem is beszélve.
Az a latency célhardware-el megvalósítható, programból necces

Egyre jobban kezd érdekelni a téma. Azt hiszem, már csak a hecc kedvéért is meg fogom csinálni, nagyon kíváncsi vagyok rá, mit lehet a dologból kihozni.

wifin keresztül

Három eset van:
- vagy nem rádiós cuccot használsz (Ethernet kábel)
- vagy bevállalod a másodperces nagyságrendű késleltetést (azaz lenyomod a play gombot, és mondjuk 1-2 sec múlva szólal meg a hangszóró)
- vagy nem fog stabilan menni.

Az utóbbi esetre kisérleteztük ki VL-el a JACK audiot, ami WIFI-n kb. használhatatlan. Végül a lejátszó távvezérlése mellett döntöttünk, az megbízhatóbbnak bizonyult.

Én a helyedben mégiscsak rápróbálnék a PulseAudio-ra, Linux alatt pöpec, simán megy, hogy a laptop hangja az asztali gépre szerelt erősítőn szóljon, wifin keresztül. Windóz buildek meg igenis vannak, pl. http://www.freedesktop.org/wiki/Software/PulseAudio/Ports/Windows/Support, GUI nincs hozzá, de ettől függetlenül próbáld ki szerintem.

Esetleg bluetooth hangátvitel? Az is tud olyat hogy a párosított eszközön játsszon le hangot.

akkor meg -1 usb port, vamint 2db bluetooth kell, linuxon meg kb még soha nem használtam kékfogat ilyen célra.

En igen, de azert hagyott nemi kivanni valot maga utan.