有鉴于此,博主整理了几个盛行的音视频开源框架,分别对它们概要解释如下:
一、打算机视觉库OpenCVOpenCV全称Open Source Computer Vision Library,它是一个跨平台打算机视觉和机器学习软件库,可运行于Linux、Windows、Android和MacOS等操作系统。
OpenCV的官网地址为https://opencv.org/,它在Github上的源码托管入口页面为https://github.com/opencv/opencv。截止2024年8月4日的Github统计,OpenCV项目的星标数为7.73万,副本数为5.57万。

OpenCV在编程实践中的用法紧张有下列三种:
1、通过Python脚本利用OpenCV
先实行下面命令安装OpenCV的Python支持库。
pip install opencv-python
然后在Python代码的开头通过下面语句导入OpenCV库:
import cv2
接着即可在Python代码中调用OpenCV的各种处理函数了。
2、通过Qt在桌面程序中集成OpenCV
先把OpenCV的C++支持库下载到本地目录,再打开Qt的C++工程的CMakeLists.txt,在文件内容的qt_add_executable之前添加下面几行配置,表示指定OpenCV库的头文件目录和库文件目录。
# 添加头文件的所在目录include_directories(opencv/include)# 指定lib文件的链接目录link_directories(opencv/lib)
接着把下面这行配置:
target_link_libraries(test_opencv PRIVATE Qt${QT_VERSION_MAJOR}::Widgets)
改成下面几行配置,目的是引入链接新增的OpenCV库文件:
# 设置名叫opencv-libs的库凑集,指定它包括哪些so库文件set(opencv-libs opencv_world480)target_link_libraries(test_opencv PRIVATE Qt${QT_VERSION_MAJOR}::Widgets ${opencv-libs})
接着即可在C++代码中导入OpenCV的头文件,并调用OpenCV的各种处理函数了。
3、通过Android Studio在移动App中集成OpenCV
首先下载OpenCV的源码包,解压后找到OpenCV-android-sdk目录,该目录下有两个子目录,分别是和samples和sdk。个中sdk为库工程,App利用OpenCV前都要引用该库工程;samples是样例工程,下面有多少范例模块。
接着把上面的sdk目录集成到Android Studio的App工程中。
若大家以为看文章不过瘾,可以去B站看音视频开拓视频教程,给大家整理了一个几十小时的视频教程合集(内含:FFmpeg、RTSP、RTMP、SRS流媒体做事器、编解码、推拉流、音视频通话等项目实战教程),还有配套课件资料给大家哦。↓↓↓见下面↓↓点击↓↓
点击不雅观看音视频开拓视频教程→「链接」
二、打算机图形库学习教程LearnOpenGLLearnOpenGL是一个开源的OpenGL教程,可供初学者学习如何利用OpenGL来创建3D图形和动画。LearnOpenGL既供应了实体的英文书本,也供应了免费的英文电子版PDF,官网的电子版PDF下载链接为https://learnopengl.com/book/book_pdf.pdf。
LearnOpenGL的官网地址为https://learnopengl.com/,它在Github上的源码托管入口页面为https://github.com/JoeyDeVries/LearnOpenGL。截止2024年8月4日的Github统计,LearnOpenGL项目的星标数为1.07万,副本数为0.27万。
三、多媒体处理框架FFmpegFFmpeg全称Fast Forward MPEG,意思是快速节制MPEG,它是一个开源的跨平台多媒体处理框架,可运行于Linux、Windows、Android和MacOS等操作系统。FFmpeg不仅能够处理音频、视频文件,还能处理图像、字幕等文件,可谓功能刁悍。
FFmpeg的官网地址为https://ffmpeg.org/,它在Github上的源码托管入口页面为https://github.com/FFmpeg/FFmpeg。截止2024年8月4日的Github统计,FFmpeg项目的星标数为4.41万,副本数为1.19万。
FFmpeg在编程实践中的用法紧张有下列三种:
1、在命令行中运行FFmpeg
在Linux系统上编译与安装FFmpeg,即可天生三个可实行程序,分别是ffmpeg、ffplay、ffprobe。接着即可在命令行中实行干系的音视频处理操作。
2、通过Qt在桌面程序中集成FFmpeg
先在Windows系统上编译出FFmpeg的dll动态库。再给Qt的C++工程集成前面编译好的dll动态库及其头文件。接着即可在C++代码中调用FFmpeg供应的各种API。
3、通过Android Studio在移动App中集成FFmpeg
四、视频录制直播工具OBS StudioOBS Studio全称Open Broadcaster Software Studio,它是一个开源的跨平台实时流媒体和屏幕录制工具,可运行于Linux、Windows和MacOS等操作系统。
OBS Studio的官网地址为https://obsproject.com/,它在Github上的源码托管入口页面为https://github.com/obsproject/obs-studio。截止2024年8月4日的Github统计,OBS Studio项目的星标数为5.8万,副本数为0.78万。
五、音视频播放器VLC media playerVLC media player是一款开源的跨平台多媒体播放器及框架,可以播放险些全部多媒体文件,以及 DVD、音频 CD、VCD 及各种流媒体协议的直播地址。
VLC media player的官网地址为https://www.videolan.org/,它在Github上的源码托管入口页面为https://github.com/videolan/vlc。截止2024年8月4日的Github统计,VLC media player项目的星标数为1.35万,副本数为0.5万。
除了供用户播放媒体文件之外,VLC media player还常常被开拓者用来调试音视频文件格式是否精确,以及网络上的流媒体数据是否精确传输。由于凡是VLC media player无法打开的音视频文件,险些肯定是文件内部编码或封装出了问题;凡是VLC media player无法播放的流媒体地址,险些肯定是流媒体数据涌现缺失落,或是网络状况不佳。