Digitális kimenet minősége, eredetei hang továbbítása

Fórumok

Sziasztok,
szeretnék házimozit működtetni számítógépről, amely gépnek van egy olyan alaplapja, aminek van egy digitális kimenete. Elvileg ennek a kimenetnek, minden koódolás, átalakítás nélkül át kellene adnia a jelet, de valami nem stimmel benne, ugyanis az erősítő PCM 2.1-es jelet kap, ha TV-ről nézem, akkor átmegy megfelelő formátumba (DTS, Dolby, stb, illetve 5.1).

Kérdésem, ha azt szeretném megoldani, hogy a számítógép is így adja át a jelet (5.1 vagy akár 7.1, illetve megfelelő formátumban), akkor milyen hangkártyát kellene vennem a gépembe?

Sajnos ilyen infot nem igazán találok a hangkártya specifikációkban, hogy digitális kimenetnél milyen jeleket továbbít adott hangkártya...

Köszi!

Kalmi

Hozzászólások

Először is, elektromos, vagy optikai a kimenet?

---------------------------------------------------------------
Ritkán szólok hozzá dolgokhoz. Így ne várj tőlem interakciót.

Én nem így csinálnám. Az alaplapi optika és koax digitális kimenetek általában eléggé csapnivaló minőséget adnak.
Ha van a gépen HDMI kimenet, annak hangját át lehet küldeni egy házimozi erősítőbe, onnan a képet szintén HDMI tovább a TV-be.

Ennél már csak az adhatna jobb kép és hangminőséget ha a számítógép csak tároló, DLNA média megosztó szerepet látna el és mondjuk egy jobb minőségű blu-ray lejátszó játszana róla hálózatban zenét, filmet.

-1

Bakker, digitális kimenetről van szó! Ezen a csatornán a minőség NEM ROMLIK, mert DIGITÁLIS. Ha van a vételi oldalon jel, akkor az tökéletesen megegyezik a feladó oldalon küldöttel.

Ha valahol minőségromlás lép fel, akkor meg kell nézni, hogy melyik komponens kódolja át a jelet.
- lehet, hogy a számítógépen futó szoftver eleve átkódolja, mikor kihelyezi a DIGITÁLIS kimenetre. Ebben az esetben a lejásztó szoftver a ludas. A kulcsszó: S/PDIF Passthrough
- lehet, hogy a közbeiktatott erősítő kódolja át, amennyiben van ilyen.

Ez így szép elmélet, igen. A gyakorlat meg nagyon sokszor, főleg a kommersz szinteken egészen mást hoz.
Az elméletet valamikor én is kiválóan megtanultam. Aztán néha néztem a gyakorlatban hogy most meg mi van.

Külön érdekes mikor egy készüléken kétféle digitális kimenet is van, meg van a fogadó amin szintén van kétféle. És a két esetben nem kicsit, hanem jelentősen más hangot kapsz. Ilyenkor is él a csak digitális tehát hiba ott nem lehet tézis?

Oké, megkövetlek :)

Nem kellene HUP-oznom, ha kicsit ideges vagyok, a "digitális" és a "minőségromlás" szavak egy mondatban használata vörös posztó számomra, amióta néhány vájtfülű megpróbálta nekem megmagyarázni, hogy miért is van létjogosultsága egy speciális rezgéselnyelő állványnak CD olvasó esetén, természetesen borzasztó drágán.

Az alaplapi digitális kimenetekkel a gond szerintem az lesz, hogy ezen digitális buszoknak egyrészt kicsi a sávszélességük, másrészt meg S/PDIF van rajtuk, ami sztereóhoz még jó, de multichannel output vagy nem fog menni, vagy a beépített AC3 vagy DTS enkóder szar, már ha van egyáltalán.

Ellenben a HDMI-n levő audio csatorna már megfelelő, itt már eléggé sok adat átfér: 1.4-es HDMI-n 768kbit átcsorog, ez 96Kbit 7.1-es csatornakiosztásnál, tömörítetlen esetben.

Hát én azért csak csatlakoznék az előttem szólóhoz a -1-el, mert nem igazán van ebben mágia. Egy PC esetén szoftveresen szépen be lehet állítani, hogy mi menjen ki az optikán, vagy digit. rca-n, hogy az egy alaplapi akármi, vagy egy drágább kártya, az kb. tényleg mindegy. Ezeken az interfaceken a multichannel HD audio, dolby atmos és hasonló cullangok nem mennek, és pont. Viszont DTS-ig bezárólag oké minden, romlás pedig max abból adódhat, hogy a HDMI-n átmennek a fent említett HD izék, a toslinken meg csak a DTS.

Viszont mindkettőre DTS-t küldve teljesen kizárt, hogy bármilyen minőségeltérés legyen, ha mégis van, akkor az a lejátszó sw sara, vagy esetleg a fogadó oldal túl dzsunka, és rosszabb DAC van a toslink/rca oldalon mint a HDMI-n. Ha erre gondoltál, akkor egyetértek a második commenteddel, de ebből akkor sem következik az, hogy az optikai és koaxiális kimenetek csapnivalóak.

Nekem pl. van egy Focal rendszerem, ami csak optikát és digitális rca-t tud fogadni, köszöni szépen, nagyon szépen szól sztereóban, és filmek alatt is. Nyilván csak DTS-ig bezárólag, de ezt meg megoldja neki a Kodi.

Mi a layout?

számítógép - erősítő - TV?

Mert akkor bizony az erősítő fogja meghatározni, hogy mit kap a TV, és nem a számítógép. Akár újra is kódolhatja, csomagolhatja az adatfolyamot, amit a bemeneten kap.

Az, hogy egy adott hangkártya optikai kimenetén mi megy, az meg konfigurálható. Szabvány szerint S/PDIF kimenet az DTS és PCM audiót tud, semmi mást. De ez nem jelenti azt, hogy a hangkártyád tud DTS kódolású jelet adni az S/PDIF kimeneten. Lehet, hogy csak PCM-et tudsz belőle kiszedni.

A hangkártya beállításoknál állítsd be az S/PDIF Passthrough opciót, illetve a lejátszóprogram környékén is érdemes körbenézni, hogy mi a helyzet.

Ha pedig játszani akarsz 5.1-en/7.1-en, akkor a windóz hangbeállításoknál be kell állítani, hogy a digitális kimenetet használja, és hány csatornán. Linuxon dettó.

Szóval:
- milyen oprendszer?
- milyen alaplap?
- mi mivel van összedugva? (PC->TV->Erősítő vagy PC->Erősítő->TV)

Igen, én is sokáig ebben a hittben voltam, de az erősítőmhöz telepítettem egy alkalmazást, ami feketén-fehéren megmutatta a különbséget, hogy pl: a TV 5.1-et ad le DTS-ben, optikai kábelen keresztül, míg a számítógép 2.0 PCM-mben küldi csak a jelet. Továbbá a fő problémám (állításom) nem az volt, hogy a "jel romlik", hanem nem az, hogy a nem megfelelő a formátumom, amit kellene kapnom, pl: a KODI-val lejátszok egy filmet 7.1 DTS-ben, de csak 2.0 érkezik meg.

A HDMI-s dolgot nem próbáltam, de most megnézem, eddig egy picit féltem, hogy megy a kép és hang is az erősítőbe és utána a TV-be, de lássuk az eredményt. Amúgy az erősítőm (Onkyo HT-R990)

Igen, tényleg működik a HDMI. Egy kicsit meglepő, hogy nem hangkártya kell a jó hanghoz... Továbbá azt gondoltam, hogy az Optikai kiement, az a legjobb minőség, de nagyot tévedtem.

Ebből következés képpen, esetlegesen egy video kártya, tudna javítani valamit a hangon, vagy ez lehet a maximum, amit ki lehet hozni, bármilyen rendszerből is?

Nem tudom műszakilag igazolni csak gyakorlati tapasztalatokkal, lehet hogy az optika önmagában jó dolog, de mindenképpen ott van egy oda-vissza konverzió, aminek a megvalósítása kommersz oldalakon biztos hogy a létező legolcsóbb technikákkal van megoldva.

Lehet hangkártya jó a jó hanghoz, sőt ha mondjuk sztereó zene a cél akkor persze bőven vannak lehetőségek felfelé, leginkább külső profi stúdiós, felsőbb hifi hangeszközökkel, akár a milliós árszintekig is. Sok hangcsatornás mozihoz mozis erősítőkkel szerintem a HDMI-nél nincs értelme tovább keresgélni. Egy dedikált VGA kártya esetleg abban jobb hogy nem eszik a RAM-ból, ha ez lehet szempont. Meg nem feltétlenül, de néha azért előfordul hogy a dedikált VGA kártyákból jobb képminőség jön ki mint az integráltakból. Talán ezekért érdemes lehet egy próbát tenni vele.
A következő minőségi szint a dedikált lejátszó készülék, mondjuk egy hálózatképes blu-ray lejátszó és így a számítógép csak DLNA média megosztó szerepet vállal a dologból. Néha kicsit, néha nem kicsit jobb képminőségeket lehet kapni egy külön lejátszóval. Főképp ha nem csak full HD filmeket nézel egy full HD Tv-n, hanem néha benéznek alacsonyabb felbontású anyagok is a DVD szintig lefelé. A blu-ray lejátszók cél média chip, hardware video felkonvertálása nem kicsit jobb képminőséget ad mint egy számítógép.

Na a VGA vonalon viszont vitatkoznék ismét. Amennyiben HDMI a csaltakozás (vagy DVI-D), akkor a jel itt is digitális, azaz a videokártya minősége itt nem számít. Analóg csatlakozók esetén (D-Sub VGA ill. DVI-I analóg) már nagyon nem mindegy, milyen az analóg áramkör a kártyában. Konzumer kártyák esetén mindegyik fos, amivel eddig találkoztam.

A video forrás dekódolását meg lehet oldani szoftveresen ill. hardveresen is. A szoftveres is lehet 2-féle: tisztán CPU, vagy CPU+GPU shaderekkel. Eddig kb. mindegy, hogy mi a hardver, ha nem túl régi a shader nyelv, amit ismer.

A hardveres megoldás mostanában egyre több kártyában benne van, ez fix funkciós ASIC a kártyákra integrálva. Intelnél ezt hívják QuickSync Video-nak pl. Na ez az, amiben viszont minőségbeli eltérések vannak az egyes kártyák között.

Az integrált videók RAM fogyasztása azt hiszem manapság bőven elhanyagolható, média lejátszás esetén pláne (néhány 10 MByte ez esetben!)

Ami érdekelne, hogy miféle post-processinget tud egy Blu-Ray lejátszó (a célhardverével), amit szoftveresen egy PC (akár tisztán CPU, akár GPU-val megtámogatva) ne tudna - a jelenlegi lejátszóprogramokkal :)

Anélkül hogy egyelőre bele mennék technikai részletkérdésekbe, a következőre próbálnék rávilágítani.
A kép és hangminőségi kérdéseket két mondhatni teljesen ellentétes irányból lehet megközelíteni, értelmezni.
Az egyik a műszaki indítás. Amikor leginkább arról van szó hogy tájékozódunk a műszaki irányokból, majd eldöntjük ezen ismeretekből hogy eleve hol egyáltalán nem lehet probléma és onnantól azzal a kérdéskörrel nem foglalkozunk mert úgyis hibátlan. Így volt valamikor a CD lemez megjelenésével is az elején, az audio CD hangminősége hibátlan tézisekkel, műszaki indoklásokkal. Aztán később persze sok minden kiderült róla, hogy azért mégse. De lehetne még sok hasonló példát hozni.
Aztán van a történet másik oldala, amikor az ember elsősorban megtapasztal dolgokat, különbségeket, hibákat esetleg és onnan indulva kezdi keresni a műszaki okokat. Erre is lehet sok példát hozni, már annak aki eleget tapasztalt már. És persze innen indulva is elviheti magát az ember az erdőbe.

Szóval mindezeket figyelembe véve én valószínűleg kevésbé fogok neked műszaki indokokkal, magyarázatokkal szolgálni hogy két digitális kimenet ugyanarra a monitorra kötve miért is adhat különböző minőségű képet. Legfeljebb találgathatok olyanokat például hogy a környezeti zajok vétele és befolyása a chipek működésére, a tápáramok stabilitási problémái, különbségei és annak jelre gyakorolt hatása, időzítési anomáliák mindezek miatt is stb. Ebbe is bele lehetne menni. De van egyszerűbb módja is az igazolásnak, amikor az ember gyakorlatban demonstrálja hogy van eltérés és az a technika lehet hogy elméletben igen, de a gyakorlati megvalósításokban az egyéb körülmények miatt már nem.

Szerintem a célgépek cél média chipjeiben jobban működő videó felskálázás lehet mint amiket egy általános processzorral szoftveresen meg lehet csinálni.
Hol van például egy VLC média lejátszóban videó felskálázás?

A HDMI-n tapasztalható képminőség különbségek mindig szoftveresek. Ez nem mágia, és nem kell azonnal a "környezeti zajokra" kenni, ha nem értünk/ismerünk valamit. A (200,34,34) RGB kódú piros ugyanolyan lesz, mindegy milyen forrásból jön, ha pedig sérül a jel az átvitelkor, akkor a kódolásból adódóan igencsak láthatóan zajos lesz a kép (élénk csíkok mindenhol), illetve a normálisabb monitor/tv ilyenkor lekapcsolja a teljes képet, a hiba ugyanis detektálható (de nem javítható).

Példa szoftveres problémára: az újabb Intel driverek, illetve az NVidia driverek (widózon és linuxon is) előszeretettel használják a "15-235" Limited RGB üzemmódot alapból, mivel réges-régen előfordultak olyan TV-k, amiknek ez kellett. Ilyenkor természetesen sokkal bénábbnak néz ki, mintha a teljes "0-255" Full RGB tartományt használná a 8 bitből, még akkor is, ha a TV tudja ezt kompenzálni. Természetesen át lehet őket kapcsolni, de az egységsugarú júzer ezt nem ismeri. AMD driverek nem ilyen szemetek. A gamma beállítások is eltérnek. Az sem mindegy, hogy sRGB vagy xvYCC 4:4:4 vagy milyen egyéb mód az alapértelmezett kimeneti formátum. Meg hogy van-e underscan/overscan. Ezek mind átállíthatóak.

VLC-t nem használok, annál sokkal jobb lejátszók is vannak, pl. windózon az MPC-HC és utódai, linuxon/windózon MPV, stb. Ezekben van normális "felskálázás", sőt. A frame sync-el sincs baj, ha a lejátszó át tudja kapcsolni a frissítési frekit a lejátszás indításakor. Az mpv-ben a frame interpoláció kimondottan mókás, de ezt a huncutságot speciel LG TV szoftverében is láttam már. Vajon bluray lejátszókban van ilyen? Ja, amelyik mpv-t használ belül, abban lehetne...

A bluray lejátszók előnye, hogy kényelmesek, megnyomod a gombot és kész, működik. Semmi baj ezzel, nem kell érteni hozzá, nem kell szoftvereket basztatni, simán ez lesz a legjobb megoldás a legtöbb embernek. De hogy képminőségben és hasonlóban felsőbbrendűek lennének-e a szoftveres megoldásokkal szemben, abban erősen kételkedem. Főleg úgy, hogy a blu-ray lejátszókban is szoftver fut. És mint ahogy a "felskálázás" algoritmusok is sokszor a videokártya hardverén futnak - ettől hívhatjuk azt is hardveresnek?

Miért él az emberek fejében az a tévhit, hogyha hardveres, akkor az biztos jobb, mint a szoftveres? Ráadásul ezek a határok sem élesek, tekintve hogy a mai x86 CPU-kban levő AVX utasításkészlet igencsak hajaz a hardver DSP-k utasításkészletére. Ha a DSP szoftver az előbbin fut, az szoftveres, ha az utóbbin, az hardveres? A GPU-n futó algoritmus most szoftveres vagy hardveres?

"Az elmélet és a gyakorlat között elméletileg nincs, gyakorlatilag viszont van különbség" szösszenetet meg én is ismerem.

Miért él az emberek fejében az a tévhit, hogyha hardveres, akkor az biztos jobb, mint a szoftveres?
Tán azért, mert több hibás szoftvert láttak. Ugye, azon még az AVX utasításkészlet sem sokat segít. :-D

Hardver - szoftver példa:
Legyen a feladat 32 vagy 64 bites adatok mozgatása.
Ehhez egy 8 bites CPU egy algoritmust szoftveresen hajt végre.
A 32 bites CPU az első feladatra teljes, a másodikra részleges "DSP utasítást" tud végrhajtani, de szoftveres támogatással.
A 64 bites CPU mindkét feladatot "DSP utasításokkal" hajtja végre, de szoftveresen.
A "valódi hardver DSP" a DMA vezérlő. Egyszer megadod az első vagy a második feladatnak megfelelő üzemmódot, utána mindent a hardver csinál.
Ebből is látszik, hogy az összes többinél el lehet rontani az algoritmust, míg a hardver DSP esetén legfeljebb rossz üzemmódot választhatsz ki.
Persze, ha szerinted minden szoftver és minden algoritmus eredendően tökéletes, akkor nem mondtam semmit. ;) Természetesen láttam már hibásan tervezett hardvert is.

A DSP-DMA összemosást fejtsd ki bővebben kérlek, mert én nem értem. Amennyire én tudom, a DSP: digitális jelfeldogozó processzor, míg a DMA vezérlő: a perifériák és a memória közötti adatmozgatásra való cél vezérlő (illetve az Intel 8237A tud memória-memória mozgatást is, ha jól emlékszem) . Az előbbi feldolgozza/átalakítja a jelet, az utóbbi mozgatja.

"Természetesen láttam már hibásan tervezett hardvert is." hehe, elég mostanában figyelemmel kísérni az Intel és ARM CPU-k vesszőfutását (Spectre, Meltdown és társai)
Illetve ha körbenézel a linux forrásban a driverek környékén, megdöbbentő mennyiségű (!) workaround található bennük a hardveres hibák kiküszöbölésére.

A különbség az, hogy a hardveres hibákat sokkal nehezebb (ezáltal drágább is) kijavítani, ráadásul nem mindig lehet. Ezért szoftveresen küszöbölik ki amit lehet, és ebből a júzer csak azt látja, hogy lám a szoftverfrissítés megoldotta...

Ez csak egy példa, example, Beispiel, etc volt. Írtam is. Bár nem gondoltam, hogy ennyire bonyolult felfogni. :(

Kicsit részletesebben megfogalmazva: A hardver, szoftver, algoritmus, DSP szoftver, DSP utasítás stb. fogalmak eltérésének megértéséhez; vegyünk egy olyan egyszerű példát, amit az is meg tud érteni, akinek fingja sincs egy DSP mibenlétéről.
A példában, hasonlatban, metafórában, etc
- a feladat: adatmozgatás,
- a DSP az a szerkezet, amely önállóan képes végrehajtani a feladatot, (adod az inputot, nem csinálsz semmit és jön az output)
- az összes többi pedig valamilyen szoftver, algoritmus segítségével, nehezen vagy könnyítetten ugyanazt megoldja (adod az inputot, műveleteket végzel, adod az outputot).

Tehát ez nem összemosás, hanem egy végletekig egyszerűsített példa, hasonlat, metafora, etc. A hasonlatot több helyen idézőjelllel (") jelöltem. A példa szempontjából (adatmozgatás) a DMA vezérlő "az adatmozgatás DSP-je", vagy a memcpy(src,dst,count,size) függvény "DSP-s megvalósítása". Ráadásul megfelelő hardverrel kiegészítve (amelynek megadhatod a kívánt műveletet), megvalósítható a for ciklus szerű blokkmásolás, vagy a while true szerű végtelen adatmozgatás, akár több/változó szószélességgel, és memória és io között is. Ehhez csak specifikálni kell a műveletet és a paramétereket, utána a DMA teszi a dolgát. Mint a hardver DSP. A memcpy() mögött meg szoftver és algoritmus rejtőzik. A DMA-hoz képest egy CPU által végrehajtott "DSP funkció. (Mégegyszer: ez csak hasonlat.)

Már folyik rólam a víz! Remélem érted.

"A HDMI-n tapasztalható képminőség különbségek mindig szoftveresek."
Nem állítottam ennek ellenkezőjét. Csak azt hogy az integrált és a kártyás eszközök között látható különbségek vannak. A többi spekuláció volt. Nem végeztem mérés jellegű teszteket ez ügyben, nincs is lehetőségem rá. Szóval lehet akár softwares is.
Viszont volt látható képminőségi különbség két Nvidia kártya között is. Igaz volt köztük néhány év, ha jól emlékszem egy generáció különbség.

Az MPV felskálázást ki fogom próbálni. Van lehetőségem összevetni blu-ray lejátszó hasonló képességével.

Igen, a kész lejátszók nagy előnye hogy bekapcsolod és azonnal használod. Míg a számítógépes eszközöket néha sok időt bele tolva kell konfigurálni mire kijön valami hasonlónak mondható eredmény.
A cél gépekben nem általános processzor, hanem cél média processzor végzi a munkát. Itt például gondolom nincs olyan szintű operációs rendszer a vele járó mindenféle processzek, azok ütemezési feladata, a hardware ütemezés stb. területeken olyan komplex igény mint egy PC-nél. Ez pedig kihathat az időzítésre is. A kép és a hang főképpen erősen időzítés érzékeny.
Egy operációs rendszer a saját software óráját nem tudja idő helyesen üzemeltetni, hiszen szinkronizálás igénye van folyamatosan.
Ez a rész számomra leginkább a hang oldalon megtapasztalható. Egy jó célgéphez képest bármilyen Win, Apple, Linux PC észlelhetően szétcsúszottabb, pontatlanabb hangot, zenét produkál. Mondhatni több mint 10 éve ezt tapasztalom, ez idő alatt nem kevés fajta technikát letudva mindenféle létező szintekről. Szóval nem tévhit, elég hosszú idő óta elég sok gyakorlati megtapasztalásból ered.