AC-3 (Dolby Digital) "Preamble" auf IEC60958 ("SPDIF")

OP Persönliche Seite #979913
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:

1
DVB-Receiver     DVD-Player
2
 .                .
3
 .                .
4
0000             0000
5
0000             0000
6
0000             0000
7
0000             0000
8
0000             0000
9

10
F872             F872
11
4E1F             4E1F
12
0001             0001
13
3800 <- Diff. -> 3000
14

15
0B77 <- Start -> 0B77
16
2C9B <-  CRC  -> 7191
17
 .                .
18
 .                .

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)/Professional/Technical_Library/Technologies/Dolby_Digital_(AC-3)/a_52b.pdf
[2]_http://www.hardwarebook.info/S/PDIF#Multi_channel_audio_and_S.2FPDIF

*) 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?
OP Persönliche Seite #980356
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

1
In a conventional synchronous IEC61937 data stream, the basic data frame
2
structure includes a header, typically composed of four preambles
3
(Pa,Pb,Pc,Pd), the payload itself, and a string of padding bits (zeros).
4
The first two preambles (Pa and Pb) are constants 0xF872 and 0x4E1F are
5
used for synchronization, while the third preamble Pc carries control
6
information including a payload type identifier. Preamble Pd sets the
7
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

Eine eigene Frage? Dieser Thread ist über 18 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.