windows media player upnp

upnp协议

wmp的upnp协议是即插即用协议,涉及到dlna协议,在windows10里面可以把文件右键播放到设备,这个时候其实是dlna协议,内容很是丰富,和普通的upnp协议有区别,下面谈上两个不常用的命令
播放到

1、订阅 subscribe

SUBSCRIBE /upnphost/udhisapi.dll?event=uuid:2f2d7356-d17c-49cf-876f-5dcbc561265a+urn:upnp-org:serviceId:AVTransport HTTP/1.1
Cache-Control: no-cache
Connection: Close
Pragma: no-cache
User-Agent: Microsoft-Windows/10.0 UPnP/1.0
NT: upnp:event
Callback: <http://192.168.1.144:2869/upnp/eventing/zjzxaybvby>
Timeout: Second-1800
Host: 192.168.1.108:2869

HTTP/1.1 200 OK
Server: Microsoft-Windows/10.0 UPnP/1.0 UPnP-Device-Host/1.0 Microsoft-HTTPAPI/2.0
Timeout: Second-300
SID: uuid:222e1e1a-3801-4144-bea5-51f31c458220
Date: Sat, 21 Aug 2021 00:58:59 GMT
Connection: close
Content-Length: 0

订阅信息也是一个callback 信息,需要订阅者准备一个http server地址,windows media player 会向该地址发送响应的信息。比如播放器停止,开始等等的状态,这个是有用的,可以及时了解播放器的状态。

2、GetTransportInfo

GetTransportInfo 也是我不常常碰到的一个,很少用,不过确实可以用,wmp 就会发这个信息

POST /upnphost/udhisapi.dll?control=uuid:2f2d7356-d17c-49cf-876f-5dcbc561265a+urn:upnp-org:serviceId:AVTransport HTTP/1.1
Cache-Control: no-cache
Connection: Close
Pragma: no-cache
Content-Type: text/xml; charset="utf-8"
User-Agent: Microsoft-Windows/10.0 UPnP/1.0 Microsoft-DLNA DLNADOC/1.50
FriendlyName.DLNA.ORG: MS-BXGVPAQUGSSC
SOAPAction: "urn:schemas-upnp-org:service:AVTransport:1#GetTransportInfo"
Content-Length: 400
Host: 192.168.1.108:2869

<?xml version="1.0"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"><SOAP-ENV:Body><m:GetTransportInfo xmlns:m="urn:schemas-upnp-org:service:AVTransport:1"><InstanceID xmlns:dt="urn:schemas-microsoft-com:datatypes" dt:dt="ui4">0</InstanceID></m:GetTransportInfo></SOAP-ENV:Body></SOAP-ENV:Envelope>
HTTP/1.1 200 OK
Content-Length: 652
Content-Type: text/xml; charset="utf-8"
Server: Microsoft-Windows/10.0 UPnP/1.0 UPnP-Device-Host/1.0 Microsoft-HTTPAPI/2.0
EXT: 
Date: Sat, 21 Aug 2021 06:24:12 GMT
Connection: close

<?xml version="1.0"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"><SOAP-ENV:Body><m:GetTransportInfoResponse xmlns:m="urn:schemas-upnp-org:service:AVTransport:1"><CurrentTransportState xmlns:dt="urn:schemas-microsoft-com:datatypes" dt:dt="string">STOPPED</CurrentTransportState><CurrentTransportStatus xmlns:dt="urn:schemas-microsoft-com:datatypes" dt:dt="string">OK</CurrentTransportStatus><CurrentSpeed xmlns:dt="urn:schemas-microsoft-com:datatypes" dt:dt="string">1</CurrentSpeed></m:GetTransportInfoResponse></SOAP-ENV:Body></SOAP-ENV:Envelope>

问题 和 总结

wmp无法播放h264的rtsp 协议,这个是个问题,但是他的架构非常精锐,两个服务,一个播放器,把media center建立起来了,值得我们学习
1 upnp 协议服务
2 ssdp协议服务
3 wmp 播放器

而 vlc呢,非常厉害,把服务直接集成到了播放器中,也越来越完善!vlc 2.0
upnp协议

可以这么说,中国要做出vlc 这样的一个播放器,还需要一定的核心技术和时间的。我的打算:是把vlc 和 kodi 以及 wmp 结合起来,做一个国产化的播放器,但是说国产化,很难,毕竟很多还不是我们自己做的,一步一个脚印吧。

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

qianbo_insist

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值