今日同事报称 mplay播放 https音频不行, https的s当然是安全了. mplayer底层用的是ffmpeg,然后以来openssl提供安全机制.
在 18.04 (fx-tx-001)上, 使用 ffmpeg 3.3.4版本.
sudo apt-get install libssl-dev
./configure --prefix=/usr/local/ffmpeg3.3.4 --enable-openssl --enable-shared --disable-static
make -j4; sudo make install
然后在 /etc/ld.so.conf.d 加入一个 内容为 /usr/local/ffmpeg3.3.4/lib 的脚本.
或者直接 export LD_LIBRARY_PATH=/usr/local/ffmpeg3.3.4/lib:$LD_LIBRARY_PATH
./ffprobe https://音频URL即可.
其实分析了同事过程, 他们也编译了ssl和ffmpeg, 但是查看他们 echo $LD_LIBRARY_PATH竟然没有 新编译ffmpeg引入,
再深入一下发现他们也添加了 /etc/ld.so.conf.d 的一个conf, 但是在启动bashrc或者应用的时候又强制赋值了
$LD_LIBRARY_PATH.
LD_LIBRARY_PATH 系统环境的改变原则为
1. 系统里边没有, 我们特有的, 要加上.
2. 系统有, 我们特有需要覆盖的, 我们的要放在前面.
3. 系统有些和我们特有有名称冲突的, 需要重载 LD_LIBRARY_PATH , 直接覆盖即可.
另外一个如果确定要使用 这种命令行的系统调用的话, 完全可以通过有 ssl的工具先访问 https资源, 然后播放, 例如 wget -r --tries=10 "https://资源" 就是支持SSL的, 或者说直接调用web browser 指明 uri就好了.
其实直接在app内系统调用另外应用的方法用于方案评估或者初学入门可以, 做产品级应用不合适, 除非你确认写复制时的资源不会错乱.
阅读(3487) | 评论(0) | 转发(0) |