Easyx图形库应用(视频编解码和网络传输)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】

本身easyx只是一个图形库,我们可以在上面做各种各样图形的开发。不管是仿真,还是教学、游戏等场景,都有很多的应用。还有一部分同学,可能会用它做多媒体开发,特别是视频的开发。既然是视频开发,那么就会涉及到视频编码、解码、采集、网络传输、硬件加速等内容。下面我们就来分别说一说怎么用库+easyx做视频开发。

1、libx264

**libx264是一个编码库。主要是把yuv文件编码成h264文件。**当然,这种编码的方式,是纯cpu的软件编码。ffmpeg没有自带的h264编码器,所以通常大家还是习惯用libx264做编码。如果是嵌入式平台,一般会用硬件加速来实现h264编码。除了h264之外,还有h265,也是类似的道理。

不过有一点需要注意下,libx264编码之前,需要先把文件转成yuv420才能开始压缩编码,而不是大家认为的RGB彩色文件。yuv只有rgb文件一半大小。目前已经有很多编译好的libx264库可以使用,下面的地址就是其中之一,

复制代码
https://github.com/ShiftMediaProject/x264/releases

2、ffmpeg

ffmpeg是经典的视频处理库。它可以处理视频,也可以处理音频,还是处理不同格式文件之间的转换。实际使用的时候,大家还是比较习惯用它来做解码动作,特别是各种已经生成的h264、h265文件,用ffmpeg解码还是很方便的。官方也提供了不同平台编译好的库,有兴趣的同学可以下载下来看一看,

复制代码
https://www.ffmpeg.org/download.html

3、opencv

opencv的作用,我们也说过,一方面它可以提供各种图象处理的算法。另外一方面,我们可以用它来采集图象,比如说usb camera的采集等等。当然,如果是具体的平台,比如windows,可以用direct show采集,linux平台则用v4l2采集。只是用opencv采集,会比较简单方便一点。

另外一方面,前面说过,h264的编码需要rgb转成yuv。这一点用cv::cvtColor很容易实现。

复制代码
https://opencv.org/releases/

4、rtsp

rtsp是一种网络协议。大家可以理解成,等音视频编码好之后,怎么用协议把这些音视频送出去。那么rtsp&rtp就是负责帮助我们来实现这些事情。这类协议的学习,一方面可以通过阅读相关协议资料来实现;另外一方面可以通过查看开源代码和抓包的形式来处理,这样效果更好一些。比如,github上就有一些开源代码,讲解如何通过rtsp传递固定h264文件。大家如果稍微结合一下libx264库和opencv库,很容易可以用来做rtsp推流处理。

复制代码
https://github.com/PHZ76/RtspServer/tree/master

5、soc mpp/mdp

上面说的都是软件编解码。但如果是嵌入式设备,很多时候是需要硬件编解码的帮助。比如说,usb camera拿到数据之后,先mjpeg decode成yuv文件,然后encode成h264文件,最终通过rtsp送出去。**这里面decode和encode很多时候,都是硬件ip实现的,ffmpeg也只是提供一个框架。**不少ipcam都是通过类似mpp、mdp的平台来实现的。比如,海思就是mpp。这是大家都比较喜欢海思的原因,用起来比较简单,大部分都是硬件加速的内容,cpu只负责配置就行。事实上,不少ipcam soc的cpu都是arm a7,自身也确实做不了什么复杂的音视频运算。

复制代码
https://wiki.t-firefly.com/zh_CN/Core-3559AV100-JD4/mpp.html
相关推荐
ℳ₯㎕ddzོꦿ࿐5 天前
告别延迟:HLS (m3u8) 实时转 FLV 全栈方案实战
视频编解码
霜雪i6 天前
ISP模式
视频编解码·h.266
CheungChunChiu6 天前
视频编解码与 GOP 结构详解
linux·视频编解码
深圳市友昊天创科技有限公司10 天前
友昊天创推出8K ,4K 120Hz 100米延长器方案
音视频·实时音视频·视频编解码
深圳市友昊天创科技有限公司10 天前
ASM4242 雷电扩展坞 CV4242 PCIE扩展坞
音视频·实时音视频·视频编解码
深圳市友昊天创科技有限公司10 天前
友昊天创推出延长器方案GSV5600+HDBase VS010**/VS100**
音视频·实时音视频·视频编解码
TEL1892462247714 天前
IT6227:USB-C(DP Alt 模式)及电源传输控制器 内置 4 通道 DP 1.4 转 HDMI 2.1 转换器
音视频·实时音视频·视频编解码
小咖自动剪辑17 天前
视频去水印与去字幕教程:免费去水印软件与去字幕工具推荐
人工智能·音视频·实时音视频·视频编解码
TEL1892462247718 天前
IT6225B:USB-C(DP Alt 模式)及电源传输控制器 内置双通道 DP 1.4 转 HDMI 2.0 转换器
音视频·实时音视频·视频编解码
小脑斧要动脑19 天前
视频编解码开发工具合集
视频编解码