DVB-H and dvbnet / MAC-broadcast address

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

I am looking for help on receiving DVB-H.
I get to the point where the encapsulated IP is attached to a network interface (as dvb0_0 using dvbnet -p <portnr>). At this stage I am able to dump the UDP-packets received using tcpdump. But I am not able to get that IP-multicast into VLC.

I believe the problem is related to the fact that normally IP-multicast uses the Ethernet broadcast address (ff:ff...) while in dvb-h the destination mac is (partly) replaced by the dvb-h time slicing information . Therefore the traffic is only received by the network interface when it is in promiscuous mode (when using tcpdump), but not when a normal program (like vlc) is trying to get multicast frames out of it.

My idea then was to modify dvbnet so that it replaces the "broken" ethernet destination (is contains timeslicing-infos) by "ff:ff" so that it goes through the network interface. But the actual code of dvbnet does actually not handle the received data, the only thing that program does is some ioctl(fd_net).

Any idea who I could get the ethernet-multicast out even when the destination mac is wrong?
Any idea how I could modify (the kernel) so that I could overwrite the faulty mac?

I could not find any description on how to receive dvb-h on the web. The are some mailing on how to find SDP files, but that was not such a big thing (dvbsnoop  -b <pid> ..).


Thanks for help,

Dietmar


Some of my debug output:

tzap <service>
dvbsnoop 1140
dvbsnoop V1.4.00 -- http://dvbsnoop.sourceforge.net/

------------------------------------------------------------
SECT-Packet: 00000001 PID: 1140 (0x0474), Length: 996 (0x03e4)
Time received: Fri 2007-03-30 00:15:34.630
------------------------------------------------------------
0000: 3e b3 e1 0d e1 c1 00 00 0c 80 00 00 45 00 03 d4
>...........E...
0010: 68 70 00 00 07 11 d3 96 ac 16 05 0d e1 e1 e1 0d
hp..............
0020: c0 12 04 4c 03 c0 dd f5 80 e0 5a 1e fa b3 d3
8d ...L......Z.....
(...) 03d0: 8e 91 da df 06 f9 42 54 2c 90 bf 5e 2a 7f f7
c0 ......BT,..^*...
03e0: 9c ee 8a fd ....

PID: 1140 (0x0474)
Guess table from table id...
DSM-CC DATAGRAM-decoding....
Table_ID: 62 (0x3e) [= DSM-CC - private data section // DVB datagram]
section_syntax_indicator: 1 (0x01)
private_indicator: 0 (0x00)
reserved_1: 3 (0x03)
Section_length: 993 (0x03e1)
MACaddrbyte/DevicdID 6: 13 (0x0d)
MACaddrbyte/DeviceID 5: 225 (0xe1)
reserved_2: 3 (0x03)
payload_scrambling_control: 0 (0x00) [= unscrambled]
address_scrambling_control: 0 (0x00) [= unscrambled]
LLC_SNAP_flag: 0 (0x00)
current_next_indicator: 1 (0x01) [= valid now]
Section_number: 0 (0x00)
Last_Section_number: 0 (0x00)
MACaddrbyte/DeviceID 4: 12 (0x0c)
MACaddrbyte/DeviceID 3: 128 (0x80)
MACaddrbyte/DeviceID 2: 0 (0x00)
MACaddrbyte/DeviceID 1: 0 (0x00) => MAC-Address/DeviceID:
00:00:80:0c:e1:0d
IP_datagram_bytes
0000: 45 00 03 d4 68 70 00 00 07 11 d3 96 ac 16 05 0d
E...hp..........
0010: e1 e1 e1 0d c0 12 04 4c 03 c0 dd f5 80 e0 5a
1e .......L......Z.
0020: fa b3 d3 8d 00 00 01 e0 3c 41 8e 0c 0a 7e e3
7a ........<A...~.z
(..)
--


dvbnet -p 1140

fconfig dvb0_0 up

tcpdump --n -i dvb0_0 -s0

00:25:16.377328 IP 172.22.5.13.49172 > 225.225.225.13.1102: UDP,
length 192
00:25:16.377575 IP 172.22.5.13.49172 > 225.225.225.13.1102: UDP,
length 183
00:25:16.379331 IP 172.22.5.13.49170 > 225.225.225.13.1100 : UDP,
length 1472
---
some sdp (not related, from a different service):
dvbsnoop 1201
(...)
v=0
o=- 1284305069 1139040522 IN IP4 192.168.250.2
s=realtimeaudio
c=IN IP4 226.226.0.2
a=control:*
a=range:npt=0.0-
a=ISMA-compliance:1,1.0,1
a=mpeg4-iod: "data:application/mpeg4-iod;base64,AoEHAA///w///wN
+AAFAYGRhdGE6YXBwbGljYXRpb24vbXBlZzQtb2QtYXU7YmFzZTY0LEFTb0JLQUtmQXlRRDZ
BVUVEVUFWQUFZQUFBZ1RNQUFCdFlBR0VBQkVBQUNzUkFBQXJFUWdJQUFBQUFNPQQNAgUAAQA
AAAAAAAAAAAYJAQAAAAAAAAAA"
m=audio 9030 RTP/AVP 101
b=AS:112
a=rtpmap:101 mpeg4-generic/44100/2
a=control:trackID=1000
a=fmtp:101 streamtype=5; profile-level-id=15; bitrate=112000;
config=1210; sizelength=13; indexlength=3; indexdeltalength=3;
profile="" mode=AAC-hbr
a=mpeg4-esid:1000
(...)
vlc -vvvv  thisservice.sdp
_______________________________________________
linux-dvb mailing list
linux-dvb@xxxxxxxxxxx
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb

[Index of Archives]     [Linux Media]     [Video 4 Linux]     [Asterisk]     [Samba]     [Xorg]     [Xfree86]     [Linux USB]

  Powered by Linux