音视频
文章平均质量分 68
他过江
分享C/C++/Linux/Qt/音视频/FFmpeg/OpenCV等相关技术。
展开
-
RTP分析
RTP(A Transport Protocol for Real-Time Applications–实时传输协议,rfc3550)原创 2023-04-04 14:39:01 · 1659 阅读 · 0 评论 -
RTSP分析
client第一次发送DESCRIBE请求时不带授权信息,server返回401并且头部中包括字段realm是领域,通常是服务器名称或者域名。nonce是一个随机的字符串,在每个身份验证请求中都会不同。后续client发送的请求都要带上字段MD5使用32位小写值MD5在线计算当用不同的命令请求时需要重新计算response。server也需要用同样的方法计算response,然后校验client发送的response是否正确,正确则认证通过。原创 2023-04-04 14:25:43 · 560 阅读 · 0 评论 -
H.264编码分析--NALU,帧和GOP,视频序列
视频编码是为了压缩视频。1个未压缩的1小时的1080p的视频(1秒25帧)占用大小:192010804360025=746,496,000,000字节,即700G左右一部小电影这么大,我们的网络带宽和硬盘容量怎么承受的了。所以视频和图片这些大文件都是经过压缩的。而H.264就是一种经典的视频编码(压缩)标准。原创 2023-03-28 11:28:10 · 2080 阅读 · 0 评论 -
简单的RTSP播放器
简介windows平台,纯视频流播放,暂不支持音频。局域网延迟在200到300毫秒。开发环境WIN10VS2017Qt5.12.9FFmpeg4.3.1 64位github地址效果图原创 2022-02-20 18:20:52 · 2280 阅读 · 0 评论 -
QtAV编译和使用
环境:x64 QtAV1.13 Qt5.12.10 VS2017 FFmpeg4.3.2编译步骤:git clone https://github.com/wang-bin/QtAV.gitcd QtAV && git submodule update --init可以下载官方推荐的FFmpeg依赖包:https://sourceforge.net/projects/qtav/files/depends/QtAV-depends-windows-x86%2Bx64.原创 2021-03-10 22:08:25 · 1097 阅读 · 0 评论 -
记录FFmpeg遇到的问题
1. 推流rtsp到EasyDarwin的时候,如果断网了或EasyDarwin进程没启动则avformat_write_header会一直阻塞 然后线程会一直阻塞在avformat_write_header解决方法: AVFormatContext设置中断回调,回调函数中判断avformat_write_header是否超时,超时则退出阻塞参考链接由于设置了中断回调,故所有阻塞函数都要重置超时时间,否则这些函数会调用失败。例如: 超时中断会导致av_interleaved_write_fr原创 2021-02-06 00:19:56 · 1877 阅读 · 4 评论 -
Qt USB摄像头支持热插拔
1.注册USB摄像头插拔事件bool util::registerDevNitification(QWidget *widget){#if 1 static const GUID GUID_DEVINTERFACE_LIST[] = { // GUID_DEVINTERFACE_CAMERA_DEVICE { 0x65E8773D, 0x8F56, 0x11D0, { 0xA3, 0xB9, 0x00, 0xA0, 0xC9, 0x22, 0x3.原创 2021-01-31 18:03:47 · 1346 阅读 · 0 评论