RTP载荷G711A/G711U/PCM/G726音频
《音视频应用开发系列文章目录》
编码RTP over G711A/G711U/PCM音频的大致过程
1.添加RTP12字节的头
2.添加payload(G711A/G711U/PCM/G726的真实数据)
RTP打包图
伪代码
void rtp_send_g711(char *data, int len){char buf[MTU];// fix buf[0~11] for rtp headmemcpy(&buf[0], &rtp_head, 12); // fix nalu datamemcpy(&buf[12], data, len);rtp_send(buf, len + 12);
}
RTSP->SDP
G711A:
v=0
o=username 1919893795 1 IN IP4
s=audio
i=
c=IN IP4 0.0.0.0
t=0 0
m=audio 0 RTP/AVP 8
a=rtpmap:8 PCMA/8000/1
a=control:track1
a=sendonly
G711U:
v=0
o=username 13293471 1 IN IP4
s=audio
i=
c=IN IP4 0.0.0.0
t=0 0
m=audio 0 RTP/AVP 0
a=rtpmap:0 PCMU/8000/1
a=control:track1
a=sendonly
G726:
v=0
o=username 990373985 1 IN IP4
s=audio
c=IN IP4 0.0.0.0
t=0 0
a=range:npt=0-
a=sendonly
a=control:*
m=audio 0 RTP/AVP 21
a=rtpmap:21 G726-32/8000/1 // G726-xx可取 16 24 32 40具体情况更改SDP
a=control:track1
RTP载荷G711A/G711U/PCM/G726音频相关推荐
- 基于live555的rtsp播放器之十八:G711a/G711u/G726转AAC
封装格式的主要作用是把视频码流和音频码流按照一定的格式存储在一个文件中.现如今流行的封装格式如下表所示: 此表来自雷神:[总结]视音频编解码技术零基础学习方法,由表可见: 1.除了AVI之外,其他封装 ...
- 标准G726音频解码和与H264视频封装为avi
avilib库并不能直接支持G726音频的封装,源码中只支持G711A.G711U和MULAW_PCM,但查看源码可发现,avilib其实也是将G711U等音频先解码为16位linear PCM,再将 ...
- H.264 视频的 RTP 载荷格式
本文是 IETF 的规范 RFC 6184 的一部分的翻译,该规范 地址.翻译这份文档,主要是为了编写一段用 RTP 传输 H.264 流的代码.本想在网上找一些文章完成任务了事的,但由于个人之前音视 ...
- NDK开发——FFmpeg实现视频转YUV、视频转RGB显示、音频转PCM、音频播放、音视频同步
项目演示 前提准备 编译FFmpeg+CMake并能运行,详细可见我博客 下载libyuv库并编译成libyuv.so库,用于实现转换RGB格式功能 FFmpeg库简介 avcodec:编解码,包含 ...
- 小猫爪:嵌入式小知识10-I2S,TDM,PCM等音频格式详解
小猫爪:嵌入式小知识10-I2S,TDM,PCM等音频格式详解 1 前言 2 I2S 3 Codec模式(左/右对齐) 3.1 左对齐(MSB对齐) 3.2 右对齐(LSB对齐) 4 DSP模式 5 ...
- RTP载荷H265(实战细节)
H264与H265协议详解 RTP载荷H264(实战细节) RTP载荷H265(实战细节) RTP包的结构: RTP头在 "RTP载荷H264(实战细节)"讲的很清楚了,不了解的可 ...
- window API播放pcm格式音频文件,函数waveOutOpen等
之前在我的博客中有一篇关于编写录音器的代码,可保存为pcm和wav格式,说白了其实两者是一个东西,只不过wav比pcm多了一个文件头,这个文件头一共占了44个字节.此处这个不是重点,重点是如何编写程序 ...
- Android 音视频开发(一):PCM 格式音频的播放与采集
什么是 PCM 格式 声音从模拟信号转化为数字信号的技术,经过采样.量化.编码三个过程将模拟信号数字化. 采样 顾名思义,对模拟信号采集样本,该过程是从时间上对信号进行数字化,例如每秒采集 44100 ...
- Java实现PCM格式音频转MP3或WAV
最近做语音合成的项目,需要把PCM格式的音频文件转换成MP3或WAV,记录一下. Java实现的PCM格式音频文件转换MP3格式 import java.io.FileInputStream; imp ...
最新文章
- Java多态详解(入门可看)
- dcba oracle,【转】dcba的文章:Oracle的SET UNUSED COLUMN操作到底做了什么?
- Open source robotics toolkits: use virtual arenas to test your robotics algorithms
- php warning: file_get_contents,Ecshop报警告:Warning: file_get_contents
- html表格以pdf格式导出到本地
- java解析json数组对象_JAVA中快速解析JSON对象里包含的JSON数组
- N个数依次入栈,出栈顺序有多少种?
- java webview 对象_Android – 将JSON对象从webview javascript传递给java
- 学了这几招,社交时人人都对你刮目相看(转载)
- java 日历选择天,如何使用Java日历从date中减去X天?
- 全国计算机等级一级考试套题,全国计算机等级考试一级试题及答案(10套)
- 笔记本外接2-3个屏幕
- 基于Myrocks和spider构建分布式数据库
- Transformer课程 业务对话机器人Rasa 3.x Reaching Out to the User
- 开关二极管IN4148
- Excel最大值和最小值的提取问题
- html中快速返回上一个页面,后退一步!
- 坚持#第370天~优酷视频使用PC端的优酷就可以下载下来了
- 如何通俗的理解函数的极限_函数的极限问题怎么解释更通俗易懂?初高中数学辅导...
- 付给铁匠的账单 数据结构
热门文章
- 小学生python游戏开发pygame--设置内容整理
- GBASE 8A 管理员手册(1)基础管理
- 华为畅享10plus可以升级鸿蒙系统,鸿蒙系统首批升级机型名单_华为鸿蒙系统升级机型名单时间表...
- Orcad17.4原理图导出PDF
- Ubuntu中安装cheat
- PS自动导出切图并在Unity中自动搭建UGUI
- android 软件卸载不了机,手机系统自带的那些软件不用却卸载不了,怎么办?
- 使用LVM对服务器磁盘进行扩容
- python如何升级?python3版本并且安装pip3
- 深度学习PyTorch、TensorFlow中GPU利用率与内存占用率很低的问题