mikrocontroller.net

Forum: Digitale Signalverarbeitung / DSP AC-3 (Dolby Digital) "Preamble" auf IEC60958 ("SPDIF")


Autor: T. H. (pumpkin) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Moin,

ich beschäftige mich gerade mit der Decodierung von AC-3 Bitstreams die 
per SPDIF übertragen werden. Für's erste habe ich den AC-3 Bitstream in 
den DSP geladen und geguckt, was ich bekomme. Was ich beobachte, deckt 
sich wie erwartet mit dem Standard [1]. Der Datenstrom startet mit dem 
Sync-Word 0x0B77:

DVB-Receiver     DVD-Player
 .                .
 .                .
0000             0000
0000             0000
0000             0000
0000             0000
0000             0000

F872             F872
4E1F             4E1F
0001             0001
3800 <- Diff. -> 3000

0B77 <- Start -> 0B77
2C9B <-  CRC  -> 7191
 .                .
 .                .

Vor dem Sync-Word 0x0B77 kommen vier weitere 16 Bit-Werte, die bis auf 
ein Bit bei beiden getesteten Quellen (DVB-Receiver und DVD-Player) 
gleich sind. Nun finde ich keinerlei Info über diese "Preamble" des 
Datenstroms. Genau genommen gehört sie nicht zum AC-3 Datenstrom, die 
Übertragungsstrecke wird von der Spezifikation nicht berücksichtigt. 
Also denke (*) ich, dass es vom SPDIF-Standard abgedeckt wird (dem 
Empfänger wird z.B. mitgeteilt ob es sich um PCM oder etwas anderes 
handelt) [2]. Nur leider ist der nicht offen (jedenfalls finde ich 
nichts dazu). Hat jemand Quellen zur Hand?

[1]_http://www.dolby.com/uploadedFiles/English_(US)/Pr...
[2]_http://www.hardwarebook.info/S/PDIF#Multi_channel_...

*) So ganz richtig scheint mir das aber auch nicht zu sein, SPDIF ist ja 
die Hardware. Was ich beobachte gehört ja scheinbar zu einem Protokoll - 
aber welchem?

Autor: T. H. (pumpkin) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
T. H. wrote:
> So ganz richtig scheint mir das aber auch nicht zu sein, SPDIF ist ja
> die Hardware. Was ich beobachte gehört ja scheinbar zu einem Protokoll -
> aber welchem?

Vllt hilfts ja mal jemanden weiter:

Richtig vermutet. Das steht wohl im IEC61937, diesen Standard bekommt 
man aber ebenso wenig für lau im Netz. Ganz nett ist es hier erklärt:

  http://www.braindex.com/patent_pdf/patents/US6804655.pdf
  http://www.patentstorm.us/patents/6804655/fulltext.html

In a conventional synchronous IEC61937 data stream, the basic data frame
structure includes a header, typically composed of four preambles
(Pa,Pb,Pc,Pd), the payload itself, and a string of padding bits (zeros).
The first two preambles (Pa and Pb) are constants 0xF872 and 0x4E1F are
used for synchronization, while the third preamble Pc carries control
information including a payload type identifier. Preamble Pd sets the
length of the payload, up to 65535 bits.

Pa, Pb und Pd sind also klar. Pc ist laut [1]:

  Dolby Digital  0x0001
  DTS-1 (512)    0x000B
  DTS-2 (1024)   0x000C
  DTS-3 (2048)   0x000D

MPEG konnte ich nicht finden.

[1] http://www.dtek.chalmers.se/groups/dvd/dist/conversion.c

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.