Forum: Mikrocontroller und Digitale Elektronik gültiges SPDIF Signal erkennen CS8416 - Ideen ?


von Tishima (Gast)


Lesenswert?

Hallo!

Ich möchte ein gültiges SPDIF Signal z.B. von einem CD Player erkennen.
Ich möchte unterscheiden können ob der CD Player auch wirklich grade 
etwas abspielt oder nur eingeschaltet ist. Im eingeschalteten Zustand 
scheint der CD Player allerdings einen Leerstream per SPDIF Signal zu 
liefern, so das man nicht einfach überprüfen kann, ob ein Signal 
anliegt.
Dazu hab ich folgenden Baustein gefunden - CS8416 von Cirrus Logic

http://www.cirrus.com/en/products/pro/detail/P1005.html

Hat mit dem Teil schon jemand gearbeitet und kann mir sagen, ob soetwas 
machbar waere oder mit nem andreren Baustein.

Oder bin ich gezwungen den Audio Stream mit so einem Baustein zu 
verarbeiten und auf gültigkeit zu prüfen ?

Sinn:

Ich möchte eine Automatische Toslink Weiche bastelln, die mehrere 
Signale auf Gültigkeit prüft und nur das Signal mit "höchster" Priorität 
zum Verstaerker weitergibt.
Falls jemand ein Fertiggerät kennt, was diese Eigenschaften hat waere 
mir das auch recht. Ich hab lediglich Geräte gefunden die manuell oder 
per Fernbedienung umzuschalten sind.

mfg,
Bjoern

von Christian P. (kron)


Lesenswert?

Klingt ja interessant, wie willst du denn die Prioritäten der Signale 
setzen?

von Tishima (Gast)


Lesenswert?

Hallo!

Problematik ist, ich hab mittlerweile 4 Geräte mit Digitalem Ausgang und 
mein Verstaerker nur einen Eingang und die TOSLink Kabel umstecken 
nervt.

Die prioritaeten wollten ich den vier Eingängen zuorden d.h.
wenn ein gültiges Signal an Eingang 1 und 3 anliegt  - soll Eingang 1 
zum Verstaerker. Also mein Rechner soll ne höhere Priorität haben als 
der CD Player usw.

Ich hab auch bereits nen Prototypen der manuell umschalten kann bzw. das 
Signal prüft , da ist allerdings das Problem das die Geräte ein Signal 
liefern auch wenn sie eingeschaltet sind und das grösste Problem das die 
TOSLink Empfänger die Eigenschaften haben, das wenn Sie offen oder kein 
moduliertes Signal anliegt, die Ausgänge "floaten" und mir 
dazwischenfunken.
Also kann ich momentan nicht wirklich erkennen ob ein gültiges Signal 
anliegt.

gruß,
Bjoern

von Knut B. (Firma: TravelRec.) (travelrec) Benutzerseite


Lesenswert?

Der CS8416 ist die eierlegende Wollmilchsau, was SPDIF-Receiver angeht. 
Um diesen an Deinen Verstärker anschließen zu können, brauchst Du 
allerdings den Rückweg auf SPDIF, also den CS8406, einen 
SPDIF-Transmitter. Beide Bausteine lassen eine intensive Manipulation 
der Signale über ein Software-Interface (SPI und I2C) zu, welches 
allerdings einen Mikrocontroller erfordert. Der CS8416 ist in der Lage, 
den/die SPDIF-Streams zu erkennen und auszuwerten, ob es sich um Audio, 
Daten oder einen kaputten Stream handelt. Die ICs erlauben auch einen 
Stand-Alone-Betrieb ohne Controller, aber das hilft Dir bei Deiner 
Aufgabenstellung nicht weiter.
Beide Bausteine vereint und mit einem Sample-Rate-Converter 3:1 / 1:3 
gibt es übrigens als CS8420. Alle Bausteine sind auf Anfrage bei 
www.csd-electronics.de erhältlich.

Nachtrag: Mir fällt gerade ein, daß der CS8416 über eine 
TX-Bypass-Funktion verfügt. Mittels einer Logik, die die Eingänge des 
Multiplexers durchtastet und dabei den /AUDIO - pin auf einen gültigen 
Stream hin abfragt, könnte man ohne Controller Dein Vorhaben mit nur 
einem CS8416 im Hardware-Mode realisieren. Mit einem kleinen Controller 
kannst Du allerdings einige Bauteile sparen und flexibler bleiben.

von HolgerB (Gast)


Lesenswert?

Benutzt du den 8416 im Software-Mode? Dann kannst du Bit 1 vom Format 
Detect Status Register auslesen. (s. Datenblatt 14.12)

Im Hardware-Mode wird's schwierig, vielleicht hast du Glück und es tut 
sich an Pin 15 etwas.

von Düsentrieb (Gast)


Lesenswert?

mach manuell umschalten...
auto gibt problem: du kannst nicht erkennen, ob zb bei cd gerade pause 
zwischen tracks kommt, oder nix = stop;
selbst wenn du die frames dekodierst (zb mit dem cs..)
evtl geht "halb-autom." , du schaltest um, wenn aktiv irgendwas kommt; 
das geht mit ein paar hc-gattern und fertig!

von Stephan H. (stephan-)


Lesenswert?

oder ne Umschaltung per Fernbedienung.
Wäre wohl die einfachste Variante.

von Tishima (Gast)


Lesenswert?

@Travel Rec.

Das hört, sich schon nicht schlecht an.

Vom Prinzip hab ich bisher, 2 Multiplexer. 1 der die entsprechenden 
Signale switched und einer das "abzuhörende" Signal auf die 
nichtfunktionstüchtige Signalerkennung umschalten kann. Das Umschalten 
funktioniert einwandfrei, lediglich die Signalerkennnung geht nicht.
Mit dem CS8416 könnte ich nun anscheinend die gültigen SPDIF Streams von 
den nicht belegten TOSLink eingängen trennen, das würde mir auch schon 
reichen.

Ok, erstmal besten Dank für die anregungen.

gruß,
Bjoern

von Stephan (Gast)


Lesenswert?

Am besten baust du ein neuronales Netz, trainierst es und es 
funktioniert.
Dann musst du naehmlich nicht wissen wie so ein valides signal aussieht.

von Knut B. (Firma: TravelRec.) (travelrec) Benutzerseite


Lesenswert?

Stephan: am besten, Du sagst mal nichts ;-)

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.