分享一下四川电信 IPTV 190 个直播频道的组播地址表,用 udpxy 转换下就可以不需电信盒子在任何地方直接观看了

2017-08-29 10:24:19 +08:00
 zxp
https://gist.github.com/zxp/daf0233bfbdea16a28b086092b1bd20a
82396 次点击
所在节点    分享发现
153 条回复
zxp
2017-08-29 22:21:34 +08:00
电信各个省份的 IPTV 标准不一样的,所以需要抓一下机顶盒的包才能分析出具体的地址来,电信盒子里没有的直播频道当然也抓不到地址。据我所知只有广电的电视信号在涉外场合才会传输港澳和境外节目,知道频点手动在机顶盒输入也能搜索到香港台,但没有授权是无法观看的。电信的直播信号也是通过广电拿的,普通老百姓貌似都没有传港澳节目。
zxp
2017-08-29 22:37:38 +08:00
本来不通过 udpxy 转换也可以在家庭网络环境用 vlc 之类的播放软件直接通过组播 rtp 播放流的,但家庭网络环境通常来说对组播的支持不会太好,容易泛洪导致网络环境恶化,影响其它的应用,也无法在家庭以外的地方实现观看,转成 http 后就容易多了。
peppermint
2017-08-29 22:39:16 +08:00
@zxp 感谢,我去试试。是不是需要两个网卡呢?一个连宽带,一个连 iptv ?
zxp
2017-08-29 22:46:34 +08:00
是需要用两个网卡,一个连接家里的局域网,一个连光猫的 itv 口,连局域网的可以用无线
peppermint
2017-08-30 14:20:16 +08:00
@zxp 嗯,搞好了,谢谢哈。
jisibencom
2017-08-30 19:12:45 +08:00
看起来信息量很大,不懂是怎么个接法,又说是单位,又说家里
zxp
2017-08-30 19:55:22 +08:00
看图就知道如何接了

cnyang
2017-08-30 23:38:17 +08:00
@zxp 换了 N 个系统,ip 都能获取到,网关通的,dns 也通,就是组播一直透传不了,没搞懂是何问题
请问 lz,你 ping 上面那些组播地址能通吗,或者 224.0.0.1 ?
zxp
2017-08-31 08:15:52 +08:00
组播地址无法 ping,只能通过 igmp 协议去加组、离组和 tcp/udp 请求数据流,上面那些组播地址是四川成都电信用的,其它地方包括四川的某些地市也许不同,如果加组没有数据,那应该就是没有这个组播组。 @cnyang
zxp
2017-08-31 08:30:48 +08:00
你也可以试试把 239.93.0.0/16 路由指向到接 itv 的那个网卡上
mac2man
2017-08-31 09:06:02 +08:00
给你们看一个难度高点儿的 vendor_class_id
https://i.loli.net/2017/08/31/59a760a5b3e7f.jpg
mac2man
2017-08-31 09:07:14 +08:00
zxp
2017-08-31 09:41:22 +08:00
vendor-class-identifier rfc 定义是 string 类型,可以试试这样直接发送十六进制数据

send vendor-class-identifier 00:00:1f:39:01:....;
mac2man
2017-08-31 10:38:35 +08:00
@zxp 嗯,昨晚已经获得到 IP 了

频道的组播表,你是怎么获得的?一个个换台抓包出来的?
mac2man
2017-08-31 10:39:53 +08:00
@zxp 另外我看你写的是
http://192.168.2.2/rtp/239.93.0.184:5140

udpxy 的 url 规则不是 http://address:port/udp/mcast_addr:mport/ 么,rtp 是从何而来的?
mac2man
2017-08-31 10:57:51 +08:00
看到文档了
HTTP commands
--------------

udpxy responds to HTTP (GET) commands to receive data from
a dedicated multicast group and forward it to the initiating (HTTP)
connection.

The command to relay traffic is in the format as below:

http://address:port/cmd/mgroup_address[SEP]mgroup_port/

[SEP] ::= :|%|~|+|-|^
i.e:
http://ip:port/cmd/mgroup_address:mgroup_port/
http://ip:port/cmd/mgroup_address%mgroup_port/
http://ip:port/cmd/mgroup_address~mgroup_port/
......
http://ip:port/cmd/mgroup_address^mgroup_port/

are acceptable and should all work in the same manner.

cmd ::= udp | rtp
zxp
2017-08-31 11:34:37 +08:00
@mac2man 好像是这样的,命令是 udp,udpxy 会自动探测组播流的编码方式,rtp 就省了这一步
zxp
2017-08-31 11:35:44 +08:00
抓取 epg 脚本再转换一下就的到所有的地址了
mac2man
2017-08-31 13:01:46 +08:00
@zxp 感谢,已经搞定!
cnyang
2017-08-31 13:57:22 +08:00
@zxp 抱歉,理解成多播了,我是成都电信的,但还是没搞定,难道是因为没开电视业务的原因吗,按道理不需授权吧

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/386539

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX