您尚未登录。

楼主 # 2021-08-27 14:32:34

逸俊晨晖
会员
注册时间: 2018-08-29
已发帖子: 151
积分: 137.5

哪吒D1编译配置DLNA客户端进行B站投屏

基本思路:
DLNA客户端可以接收并播放以DLNA协议推送的流媒体
而B站可以将视频通过DLNA协议推送
所以我们给哪吒D1配置DLNA客户端 就可以实现在同一网络下B站投屏了
gmrender-resurrect是一个接收DLNA内容并用gstreamer播放的组件
我们用gmrender-resurrect就可以配置出一个DLNA客户端
我们已经实现了使用gstreamer1.0调用openmax硬解H264
B站通过DLNA投屏时会发送flv封装的H264流 类似于直播
也就是说 我们可以用gstreamer硬解B站投屏视频
但是在实践中发现gstreamer硬解B站投屏会出现闪屏现象 并且不能自动硬件缩放
为了避免这些问题 我查找了gmrender-resurrect和tplayer相关资料 将gmrender-resurrect进行了魔改 将原来gstreamer播放视频改成了tina自带的王牌播放器tplayer来播放视频 于是gmrender-resurrect便成了tprender

因为package里没有相关库 所以要手动交叉编译出tprender和DLNA的底层upnp库 附件里提供了编译完成的

演示环境搭建
用PhoenixSuit.exe烧录flash镜像
附件提供了配置好的flash镜像

进入d1系统 先配个wifi 我的是wifi是qwer 密码是1231232008 把wifi名和密码换成你的

wifi_connect_ap_test qwer 1231232008

注意要看一下ifconfig wlan0有没ip4地址 如果没有用下面命令获取一下

udhcpc -i wlan0

第一次运行wifi_connect_ap_test 会自动获取ip4地址 但是下次开机会自动连接wifi 但不会自动获取ip4地址 所以要检查一下

附件中提供了tprender_app 里面是编译好的tprender和upnp库
用adb把tprender_app发送到D1

adb push d:tprender_app /root/

进入目录

cd /root/tprender_app

把里面的库复制到系统路径

cp libs/* /usr/lib/

添加tprender执行权限

chmod +x tprender

开启DLNA客户端

./tprender -f "D1"

接下来可以用B站投屏了
操作提示
B站放视频时右上角有个TV图标 点它 再点投屏设备 就行了
B站更新到新版本才有投屏分辨率选择

演示视频
动画

1080P

验证平台
硬件 哪吒D1开发板
系统 tina1.01 带0730补丁

配置过程
因为tplayer是tina自带的 而tprender 和upnp在package要交叉编译
所以不需要配置sdk

tprender编译
附件中提供了魔改好的tprender源码 使用cmake构建工程 只需在源码目录的CMakeLists.txt里修改编译器、链接库、头文件的路径 然后再执行构建(注意 有个点)

cmake .

再执行编译

make

即可以编译出tprender

upnp编译
附件中提供了upnp源码 按照里面README.md编译出libupnp.so和libixml.so库即可

最近编辑记录 逸俊晨晖 (2021-08-27 16:04:28)

离线

楼主 #1 2021-08-27 14:56:28

逸俊晨晖
会员
注册时间: 2018-08-29
已发帖子: 151
积分: 137.5

Re: 哪吒D1编译配置DLNA客户端进行B站投屏

离线

#2 2021-08-29 16:29:38

哇酷小二
管理员
注册时间: 2020-04-22
已发帖子: 2,539
积分: 1902

Re: 哪吒D1编译配置DLNA客户端进行B站投屏

感谢楼主热心分享, 点击往期链接不迷路:

哪吒D1使用gstreamer硬解码
https://whycan.com/t_7078.html

哪吒D1编译配置DLNA客户端进行B站投屏
https://whycan.com/t_7091.html

哪吒D1运行lvgl8在24寸1080P显示器上渲染
https://whycan.com/t_7044.html

离线

页脚

工信部备案:粤ICP备20025096号 Powered by FluxBB

感谢为中文互联网持续输出优质内容的各位老铁们。 QQ: 516333132, 微信(wechat): whycan_cn (哇酷网/挖坑网/填坑网) service@whycan.cn