我是靠谱客的博主 秀丽棒棒糖,最近开发中收集的这篇文章主要介绍使用VLC源码在Ubuntu下播放https和http网络流并显示界面,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

一、安装Qt5.9.4。Qt官网下载linux安装包

  • ./qt-opensource-linux-x64-5.9.4.run

安装完成后,配置

  • export PKG_CONFIG_PATH=/opt/Qt5.9/5.9.4/gcc_64/lib/pkgconfig/:$PKG_CONFIG_PATH

注:新建qt程序,编译时会出现错误:cannot find -lGL,解决:安装qt必要的库libqt4-dev,sudo apt-get install libqt4-dev

二、安装FFmpeg。下载FFmpeg源码

  • ./configure
  • make
  • make install

安装完成后,配置

  • export PKG_CONFIG_PATH=/usr/local/ffmpeg/lib/pkgconfig/:$PKG_CONFIG_PATH

export PATH=/usr/local/ffmpeg/bin/:$PATH

  • export LD_LIBRARY_PATH=/usr/local/ffmpeg/lib/:$LD_LIBRARY_PATH

三、安装vlc3.0.7。官网下载源码。

  • ./configure --enable-run-as-root  (在root用户下可运行vlc)
  • make
  • make install

安装完成后,配置

  • export LD_LIBRARY_PATH=/usr/local/lib/:$LD_LIBRARY_PATH
  • vlc

注:这样才能显示vlc界面,之前一直显示不出vlc的界面

四、播放http报错,http://cctvalih5ca.v.myalicdn.com/live/cctv1_2/index.m3u8
Codec not supported:VLC could not decode the format "h264" (H264 - MPEG-4 AVC (part 10))
Codec not supported:VLC could not decode the format "mp4a" (MPEG AAC Audio)
解决:
sudo apt-get install libavcodec-dev 
sudo apt-get install libavformat-dev 
sudo apt-get install libswscale-dev
sudo apt-get install liba52-0.7.4-dev 

然后再重新编译vlc

五、播放https的报错https://cdn.letv-cdn.com/2018/12/05/JOCeEEUuoteFrjCg/playlist.m3u8报错,缺少解析https的插件
main error: TLS client plugin not available
access error: HTTP connection failure
解决:原因是缺少TLS客户端插件,因此需要将gnutls库编译进来。参考第六步或者参考https://www.cnblogs.com/siikee/p/4272104.html

六、编译安装gnutls。官网https://www.gnutls.org/download.html。先下载源码和依赖包源码。如下图

1、编译安装gmp。大整数运算库gmp全称是GNU Multiple Precision Arithmetic Library,即GNU高精度算术运算库。它的功能非常强大,接口很简单,文档详尽,有C风格的接口也有C++的精心封装后的接口,其中不但有普通的整数、实数、浮点数的高精度运算,还有随机数生成,尤其是提供了非常完备的数论中的运算接口,比如Miller-Rabin素数测试算法,大素数生成,欧几里德算法,求域中元素的逆,Jacobi符号,legendre符号等。 它本身提供了很多例子程序,学习过程非常快,很容易将它们集成到自己的代码中去。 

 

  • ./configure --enable-cxx
  • make
  • make install

注:在使用configure的时候要加上 --enable-cxx命令,否则报错不能使用c++库gmpxx.h

2、编译安装nettle

  • ./configure
  • make
  • make install

3、编译安装gnutls

  • ./configure --with-included-libtasn1 --with-included-unistring --without-p11-kit
  • make
  • make install

七、再次重新编译vlc,默认是--enable-gnutls的,不需要再配置
先将Qt5.9和FFmpeg的配置和库导入

  • export PKG_CONFIG_PATH=/opt/Qt5.9/5.9.4/gcc_64/lib/pkgconfig/:$PKG_CONFIG_PATH
  • export PKG_CONFIG_PATH=/usr/local/ffmpeg/lib/pkgconfig/:$PKG_CONFIG_PATH
  • export PATH=/usr/local/ffmpeg/bin/:$PATH
  • export LD_LIBRARY_PATH=/usr/local/ffmpeg/lib/:$LD_LIBRARY_PATH

  • ./configure --enable-run-as-root
  • make
  • make install

成功后运行界面,插件界面已经有tls的插件了。再次播放https链接,可正常观看。

最后

以上就是秀丽棒棒糖为你收集整理的使用VLC源码在Ubuntu下播放https和http网络流并显示界面的全部内容,希望文章能够帮你解决使用VLC源码在Ubuntu下播放https和http网络流并显示界面所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(66)

评论列表共有 0 条评论

立即
投稿
返回
顶部