一、myRtspClient音频解析架构 AudioTypeBase是处理解析各种编码的音频数据的接口类。处理MPA数据的MPEG_Audio类和处理g711-mulaw的PCMU_Audio类均从AudioTypeBase继承而来。AudioTypeBase最重要的接口为CopyData,它的作用 ...
分类:
其他好文 时间:
2018-04-18 23:45:06
阅读次数:
405
一、H264传输封包格式的2个概念 (1)组包模式(Packetization Modes) RFC3984中定义了3种组包模式:单NALU模式(Single Nal Unit Mode)、非交错模式(Non-interleaved Mode)和交错模式(Interleaved Mode)。 “单N ...
分类:
其他好文 时间:
2017-10-14 20:02:03
阅读次数:
665
RtspClient是基于jrtplib实现的,目前仅支持h264格式,后续将不断迭代优化,加入对其他格式的支持,并且将实现RTSP的服务端。 RtspClient的功能是接收服务端过来流,然后写入到当前目录的MediaReceived.h264文件中,可直接用播放器播放。用户参考main.cpp, ...
分类:
其他好文 时间:
2017-10-14 15:07:45
阅读次数:
250
最近使用jrtplib来接收RTP包,然后解码播放 发现解码出来的是绿屏,马赛克 于是开始排查 首先直接用wireshark抓进来的包,转为可以被vlc播放的文件 操作如下 http://blog.csdn.net/liangxiaozhang/article/details/17143869 看到 ...
分类:
其他好文 时间:
2017-10-13 00:30:37
阅读次数:
182
一、差异 本地音视频数据格式和用来传输的音视频数据格式存在些许差异,由于音视频数据流到达客户端时,需要考虑数据流的数据边界、分包、组包顺序等问题,所以传输中的音视频数据往往会多一些字节。 举个例子,有时候一个媒体分包数据量很大(比如H264的一个分包常常会有2-4K),而大多数网络的MTU(最大传输 ...
分类:
其他好文 时间:
2017-09-23 20:09:47
阅读次数:
249
当RTSP客户端向RTSP服务端发送完PLAY命令后,RTSP服务端就会另外开启UDP端口(SDP协商定义的端口)发送RTP媒体流数据包。这些数据包之间会间隔一段时间(毫秒级)陆续被发送到RTSP客户端,此时RTSP客户端可以调用GetMediaData等接口获取媒体流数据。 一、uint8_t * ...
分类:
其他好文 时间:
2017-08-24 22:34:39
阅读次数:
641
RtspClient类是myRTSPClient函数库所有特性集中实现的地方。 主要为用户提供: 1. RTSP协议通信接口函数,如DoOPTIONS(); 2. RTSP账号、密码设置函数,如SetUsername(); 3. 音视频码流接收函数,如GetVideoData()。 本篇主要介绍Rt ...
分类:
其他好文 时间:
2017-07-09 12:32:19
阅读次数:
288
该篇内容简单的将前两篇内容组合在一起,创建了2个线程,分别播放音频和视频。 至此,“解码篇”内容告一段落,接下来将介绍myRTSPClient的具体实现,以便可以更好的理解音视频的传输机制。 注: 1, 示例源码编译需要SDL和ffmpeg,具体可参见解码视频的附录二; 2, 博主编译环境为 x86 ...
分类:
其他好文 时间:
2017-06-14 02:10:52
阅读次数:
174
myRTSPClient主要可以分成3个部分: 1. RTSPClient用户接口层; 2. RTP 音视频传输解析层; 3. RTP传输层。 “RTSPClient用户接口层”: 包含所有myRTSPClient的外显特性,包括与RTSP服务器交互接口和音视频数据提取接口,直接供用户使用。 “RT ...
分类:
其他好文 时间:
2017-06-08 00:08:46
阅读次数:
279
1、进入JThread-1.2.1文件夹 2、./configure --prefix=/home/suxuandong/Documents/qth264/hi3516/jrtpjthreadhisi/JThread-1.2.1/build -host=arm-hisiv300-linux CC=a ...
分类:
系统相关 时间:
2017-02-25 13:24:54
阅读次数:
967