streams

轻便的gb28181协议中的rtp+ps格式视频流的封装和解析

packet

packet实现ps的相关封装和解析,

example/enc

通过joy4来读本地视频文件,然后调用RtpTransfer对象进行封装ps。

example/dec

截取了部分ps封装码流,通过RtpParsePacket进行解析,验证

// ps + system + map + sps + pps
0x00, 0x00, 0x01, 0xba, 0x5e, 0xee, 0x05, 0x55, 0x74, 0x01, 0x0e, 0xb3, 0x37, 0xfe, 0xff, 0xff,
0x00, 0xeb, 0xc1, 0x62, 0x00, 0x00, 0x01, 0xbb, 0x00, 0x12, 0x87, 0x59, 0x9b, 0x04, 0xe1, 0x7f,
0xe0, 0xe0, 0x80, 0xc0, 0xc0, 0x08, 0xbd, 0xe0, 0x80, 0xbf, 0xe0, 0x80, 0x00, 0x00, 0x01, 0xbc,
0x00, 0x5a, 0xfa, 0xff, 0x00, 0x24, 0x40, 0x0e, 0x48, 0x4b, 0x01, 0x00, 0x13, 0x37, 0xc7, 0x3e,
0xa7, 0x9f, 0x00, 0xff, 0xff, 0xff, 0x41, 0x12, 0x48, 0x4b, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05,
0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x00, 0x2c, 0x1b, 0xe0, 0x00, 0x28,
0x42, 0x0e, 0x07, 0x10, 0x10, 0xea, 0x07, 0x80, 0x04, 0x38, 0x11, 0x10, 0xc0, 0x00, 0x1c, 0x21,
0x44, 0x0a, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0x2a, 0x0a, 0x7f, 0xff,
0x00, 0x00, 0x07, 0x08, 0x1f, 0xfe, 0xf0, 0x87, 0x0c, 0x9a, 0x36, 0x23, 0x00, 0x00, 0x01, 0xe0,
0x00, 0x26, 0x8c, 0x80, 0x07, 0x27, 0xbb, 0x81, 0x55, 0x5d, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x01,
0x67, 0x4d, 0x00, 0x2a, 0x96, 0x35, 0x40, 0xf0, 0x04, 0x4f, 0xcb, 0x37, 0x01, 0x01, 0x01, 0x40,
0x00, 0x01, 0xc2, 0x00, 0x00, 0x57, 0xe4, 0x01, 0x00, 0x00, 0x01, 0xe0, 0x00, 0x0e, 0x8c, 0x00,
0x03, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x01, 0x68, 0xee, 0x3c, 0x80, 0x00, 0x00, 0x01, 0xe0,
0x00, 0x0e, 0x8c, 0x00, 0x02, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x01, 0x06, 0xe5, 0x01, 0x67, 0x80

https://github.com/max-min/streams

感谢作者!

轻便的gb28181协议中的rtp+ps格式视频流的封装和解析的更多相关文章

  1. 多媒体开发之---h264中 的RTP PAYLOAD 格式

    H.264 视频 RTP 负载格式 1. 网络抽象层单元类型 (NALU) NALU 头由一个字节组成, 它的语法如下: +---------------+      |0|1|2|3|4|5|6|7 ...

  2. H.264 RTPpayload 格式------ H.264 视频 RTP 负载格式(包含AAC部分解析)

    H.264 RTPpayload 格式------ H.264 视频 RTP 负载格式 1. 网络抽象层单元类型 (NALU) NALU 头由一个字节组成, 它的语法如下: +------------ ...

  3. [转]使用wireshark分析TCP/IP协议中TCP包头的格式

    本文简单介绍了TCP面向连接理论知识,详细讲述了TCP报文各个字段含义,并从Wireshark俘获分组中选取TCP连接建立相关报文段进行分析. 一.概述 TCP是面向连接的可靠传输协议,两个进程互发数 ...

  4. MQTT-SN协议乱翻之消息格式

    前言 紧接着上篇初步介绍,本文为第二篇,主要梳理MQTT-SN 1.2协议中定义的消息格式. 通用消息格式 消息头 其它可变部分 2/4字节表示 N字节组成 消息头部 长度 消息类型 1或3个字节 1 ...

  5. 流媒体协议介绍(rtp/rtcp/rtsp/rtmp/mms/hls)

    RTP           参考文档 RFC3550/RFC3551 Real-time Transport Protocol)是用于Internet上针对多媒体数据流的一种传输层协议.RTP协议详细 ...

  6. [转]流媒体协议介绍(rtp/rtcp/rtsp/rtmp/mms/hls)

    [转]流媒体协议介绍(rtp/rtcp/rtsp/rtmp/mms/hls) http://blog.csdn.net/tttyd/article/details/12032357 RTP       ...

  7. Protocol buffer序列化及其在微信蓝牙协议中的应用

    Protocol buffer是Google出品的一种轻便高效的结构化数据存储格式,可对结构化数据进行序列化,并具有语言无关.平台无关等特点,在通信协议和数据存储等领域已经得到广泛的应用.目前其已经提 ...

  8. 转 关于Https协议中的ssl加密解密流程

    关于Https协议中的ssl加密解密流程 2016年09月28日 09:51:15 阅读数:14809 转载自:http://www.cnblogs.com/P_Chou/archive/2010/1 ...

  9. 流媒体协议介绍(rtp/rtcp/rtsp/rtmp/mms/hls

    http://blog.csdn.net/tttyd/article/details/12032357 RTP           参考文档 RFC3550/RFC3551 Real-time Tra ...

随机推荐

  1. SQL—事物

    [选择题]以下哪个选项是DBMS的基本单位,是构成单一逻辑工作单元的操作集合. A.进程 B.SQL C.事务 D.文件 分析: (1)一个事务包含一个或多个SQL语句,是逻辑管理的工作单元(原子单元 ...

  2. [CSP-S模拟测试]:糊涂图(概率DP)

    题目传送门(内部题76) 输入格式 第一行输入三个空格隔开的整数$n,m,s$表示随机加一条边之前的糊涂图的点数,边数,以及起点的编号. 接下来$m$行,每行两个空格隔开的整数$a,b$表示从$a$到 ...

  3. kvm中添加VNC密码

      #virsh edit 虚机名 <graphics type='vnc' port='5901' autoport='no' listen='0.0.0.0' keymap='en-us'/ ...

  4. percona-toolkit 工具介绍

    percona-toolkit 工具介绍 percona-toolkit 是一组高级命令行工具的集合,用来执行各种通过手工执行非常复杂和麻烦的mysql和系统任务.这些任务包括: 检查master和s ...

  5. cookie格式化

    #coding=utf- import requests url = 'http://www.baidu.com' f=open(r'cookies.txt','r') cookies={} for ...

  6. 洛谷P4127同类分布

    传送 我们要在dfs的板子里记录哪些量呢?当前填的所有数的和sum?当前填的数构成的数值all? sum可以留下,数值就扔掉叭.数值最大是1e18,要是留下,在g数组里有一维的大小是1e18.也许可以 ...

  7. qbzt day2 下午

    内容提要 高精 矩阵 筛法 先是高精除法 注意细节 高精度开方:神奇的竖式 以小数点为分界线,每两个位砍一刀 87654.321-->08|76|54|.32|1 大概就是先对第一位开方,然后相 ...

  8. 二十六、python中json学习

    1.json序列介绍:提供4个关键字:dumps,dump,loads,load(与pickle用法完全相同) 语法:f.write(bytes(json.dumps(dict),encoding=& ...

  9. 【C++进阶:STL常见性质3】

    STL3个代表性函数:for_each(), random_shuffle(), sort() vector<int> stuff; random_shuffle(stuff.begin( ...

  10. PHP 的源码编译安装

    PHP 架构和安装扩展的几种方式 PHP 三大模块: SAPI:接受并处理请求. Zend Engine:PHP 的核心,负责分析 PHP 代码并转为 opcode,然后在 Zend VM 虚拟机上执 ...