Zitat
Original von LarsAC
Wie kann man denn einfach alles rauspusten was über den Kanal so kommt?
Lars
Mit dvbsnoop.
Mit VDR oder szap auf VIVA tunen und "dvbsnoop -s sec 1809" eingeben. Dann bekommt man alles rausgepustet
Anscheinend werden in dem Stream neben dem EPG noch andere Daten übertragen. Laut "EPG Reader" Source sind für den EPG nur Datagramme mit der MAC Adresse 01:00:5e:02:02:xx (xx=01..07) relevant. Das sieht dann z.B. so aus:
MACaddrbyte/DeviceID 1: 1 (0x01) => MAC-Address/DeviceID: 01:00:5e:02:02:04
IP_datagram_bytes
0000: 45 00 05 a0 00 00 40 00 fc 11 7a 63 0a e1 11 02 E.....@...zc....
0010: e1 02 02 04 0e 4b 12 68 05 8c db ae 00 01 01 05 .....K.h........
0020: 14 09 00 00 00 29 00 6b 2c 20 33 30 20 4d 69 6e .....).k, 30 Min
0030: 2e 29 0d 0a 40 45 3a 31 31 3a 33 30 20 6e 61 6e .)..@E:11:30 nan
0040: 6f 0d 0a 39 32 30 0d 0a 40 53 3a 28 5a 75 6b 75 o..920..@S:(Zuku
0050: 6e 66 74 73 6d 61 67 61 7a 69 6e 2c 20 33 30 20 nftsmagazin, 30
0060: 4d 69 6e 2e 29 0d 0a 40 45 3a 31 32 3a 30 30 20 Min.)..@E:12:00
0070: 4d 44 52 20 75 6d 20 7a 77 f6 6c 66 0d 0a 38 31 MDR um zw.lf..81
0080: 30 0d 0a 40 53 3a 28 4c e4 6e 64 65 72 6d 61 67 0..@S:(L.ndermag
0090: 61 7a 69 6e 2c 20 36 30 20 4d 69 6e 2e 29 0d 0a azin, 60 Min.)..
00a0: 40 45 3a 31 33 3a 30 30 20 49 6d 20 4c 61 6e 64 @E:13:00 Im Land
00b0: 20 64 65 73 20 4d 61 6d 6d 75 74 73 0d 0a 32 33 des Mammuts..23
00c0: 30 0d 0a 40 53 3a 46 6f 6c 67 65 20 32 2f 32 8a 0..@S:Folge 2/2.
00d0: 28 46 69 6c 6d 2c 20 34 35 20 4d 69 6e 2e 29 0d (Film, 45 Min.).
00e0: 0a 40 45 3a 31 33 3a 34 35 20 48 69 65 72 7a 75 .@E:13:45 Hierzu
00f0: 6c 61 6e 64 65 0d 0a 41 31 30 0d 0a 40 53 3a 4b lande..A10..@S:K
0100: 6c 65 69 6e 20 2d 20 61 62 65 72 20 6f 68 6f 2d lein - aber oho-
0110: 4b 6c 65 69 6e 2d 42 65 72 6c 69 6e 8a 28 46 69 Klein-Berlin.(Fi
0120: 6c 6d 2c 20 31 35 20 4d 69 6e 2e 29 0d 0a 40 45 lm, 15 Min.)..@E
0130: 3a 31 34 3a 30 30 20 44 61 62 65 69 20 61 62 20 :14:00 Dabei ab
0140: 7a 77 65 69 0d 0a 38 31 30 0d 0a 40 53 3a 28 4d zwei..810..@S:(M
0150: 69 74 74 61 67 73 6d 61 67 61 7a 69 6e 2c 20 33 ittagsmagazin, 3
0160: 30 20 4d 69 6e 2e 29 0d 0a 40 45 3a 31 34 3a 33 0 Min.)..@E:14:3
Alles anzeigen
Zunächst kommen 24 Bytes IP-Header. Das Transportprotokollfeld ist 0x11, also UDP, d.h. es folgen noch 8 Bytes UDP-Header. Damit sollte es ab Position "0020" mit den eigentlichen Daten losgehen.
Laut Source ist das Datagramm folgendermassen aufgebaut:
// Byte0-3: Unknown
// Byte4: Value Day --> Date:current Day
// Byte5: Value Month--> Date:current Month
// Byte6-7: Zero
// Byte8-9: (Word) Current data package (begins with zero)
// Byte10-11: (Word) Total packages count
// Byte12-end: epg-data
Das passt nicht ganz. Im Dump geht es gleich mit Byte 4 (Day) los. Die 4 "Unknown Bytes" beziehen sich wahrscheinlich auf den UDP-Header.
0020: 14 09 00 00 00 29 00 6b 2c 20 33 30 20 4d 69 6e
Day -> 0x14 (20 dez), Month -> 09, Current Package 0x29 (wird fortlaufend inkrementiert), Total Package 0x6b und dananch kommen die EPG Infos.