![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
音视频编解码
科学帝威
志存高远,行胜于言
展开
-
论如何是用RTP打包H264数据(发送单包的情况,分包发送还需要另外分析)
论如何是用RTP打包H264数据原创 2015-07-25 10:32:22 · 1576 阅读 · 0 评论 -
H264文件通过RTP封装推送给VLC播放之sdp文件如何写?
H264文件通过RTP封装推送给VLC播放之sdp文件如何写原创 2015-07-24 18:29:43 · 3196 阅读 · 0 评论 -
VLC详细的使用说明以及配置说明综合示范实例精通VLC开发
一、简介VLC的全名是Video Lan Client,是一个开源的、跨平台的视频播放器。VLC支持大量的音视频传输、封装和编码格式,完整的功能特一、简介vlc的全名是Video Lan Client,是一个开源的、跨平台的视频播放器。VLC支持大量的音视频传输、封装和编码格式,完整的功能特性列表可以在这里获得http://www.videolan.org/vlc/featur转载 2015-07-25 13:51:25 · 639 阅读 · 0 评论 -
关于RTP中的时间戳问题
关于RTP中的时间戳问题转载 2015-07-24 20:09:43 · 733 阅读 · 0 评论 -
vlc在ubuntu15.04下安装成功(解决sudo apt-get build-dep vlc失败问题)
1、安装vlc编译中的一些工具sudo apt-get install git libtool build-essential pkg-config autoconf2、获取源码 wget ftp://ftp.videolan.org/pub/videolan/vlc/2.0.6/vlc-2.0.6.tar.xz tar xvJf vlc-2.0.6.tar.xz原创 2015-07-22 21:10:40 · 3105 阅读 · 0 评论 -
PES分组字段
packet_start_code_prefix(24)开始码字为0X00 00 01stream_id(8)原始流的类型和数目,取值从1011 1100到1111 1111之间。各值含义具体见13818-1。PES_packet_length(16)表示从此字节之后PES包长(单位字节)。0表示PES包长不限制,且只能用原创 2015-08-01 17:15:50 · 2720 阅读 · 0 评论 -
x264中bs.h文件部分函数解读
本文结合写入、读取码流函数介绍哥伦布编码方式。//读取字节结构体typedef struct Tag_bs_t{unsigned char *p_start; //缓冲区首地址(这个开始是最低地址)unsigned char *p; //缓冲区当前的读写指针 当前字节的地址,这个会不断的++,每次++,进入一个新的字节u转载 2015-07-21 18:24:30 · 735 阅读 · 0 评论 -
移植lame-3.99.5库
1、下载lame源码: http://sourceforge.net/projects/lame/files/lame tar -zxvf lame-3.99.5.tar.gz 2、./configure CC=arm-linux-gcc--host=arm-linux--target=linux--disable-shared--prefix=$PWD/output原创 2015-08-29 16:18:26 · 1972 阅读 · 0 评论 -
关于RTP打包h264的时间戳要注意的问题
RTP打包H264的时间戳,由于H264标准说明是90000/帧率,所以得出的时间戳要乘以9/10,否则如果发送到VLC端播放的话,播放速度会变慢,累积延迟。转自 http://blog.csdn.net/jiangyoujishiyou/article/details/8059655#comments转载 2015-07-24 20:27:24 · 1693 阅读 · 0 评论 -
关于RTP时间戳及多媒体通信同步的问题/H264关于RTP协议的实现
http://www.rosoo.net/a/201101/10776.htmlhttp://hi.baidu.com/fairygardenjoy/blog/item/e56c5cca95829e37b600c88e.htmlH264关于RTP协议的实现:http://www.rosoo.net/a/201108/14896.htmlRTP协议包头的格式:10~16 Bit为PT转载 2015-07-24 20:29:01 · 630 阅读 · 0 评论 -
基于linux下libvlc的二次开发
hTs.h/* Project by qiuliangbin copyright 2015-2018*//* Just for learning; *//* Function:Use Rtp Transmition send Ts to VLC Media player*/#include #include #include #inc原创 2015-08-05 13:09:12 · 4224 阅读 · 1 评论 -
阐述H264裸流与TS流之间的关系(一)
H264(ES)如何打包成H264(PES)一直在网上搜集各种资料,心累啊!下面由九把锁为你们阐述TS和H264之间不为人知的关系,还真是比较复杂。一、总的大致关系图这个我也不知道是在哪个CSDN高手那弄来的图,帮了我很大的忙,上图时间到:1、如何提取一帧ES数据, 就是这么简单,So Easy...#include "stdafx.h"#include #原创 2015-07-20 15:33:32 · 15790 阅读 · 3 评论 -
wireshark如何筛选协议包
1、根据目的地址或者源地址过滤(udp.port==xxx,tcp.port == 554等)可以过滤出有用的UDP、TCP包,2、可以Decode AS 成RTP或者RTSP。3、如果知道SDP信息,在分析RTP时,还可以用Edit—>Preferences在Protocols里面选H264等,直接可以解析成H264的Pay Load,是不是IDR Slice的信息也都可以看到了原创 2015-09-28 14:17:42 · 7012 阅读 · 0 评论 -
ubuntu12.04 安装VLC,在root用户下不能使用的问题
安装方法:sudo add-apt-repository ppa:videolan/stable-dailysudo apt-get updatesudo apt-get install vlc当然root用户,前面不加sudo. 添加ppa源的时候(add-apt-repository ppa:videolan/stable-daily),有可能会导入密钥失败.可能是网络转载 2015-07-22 12:04:12 · 995 阅读 · 0 评论 -
论如何是用RTP打包H264数据(发送分包发送分析)
问:为什么要分包发送?解、网络带宽的原因分包代码,情况如下: else if(n->len>1500) { //得到该nalu需要用多少长度为1400字节的RTP包来发送 int k=0,l=0; k=n->len/1400;//需要k个1400字节的RTP包 l=n->len%1400;//最后一个RTP包的需要装载的字节数原创 2015-07-25 11:36:45 · 1739 阅读 · 0 评论 -
H.264 RTP PAYLOAD 格式
H.264 视频 RTP 负载格式1. 网络抽象层单元类型 (NALU)NALU 头由一个字节组成, 它的语法如下: +---------------+ |0|1|2|3|4|5|6|7| +-+-+-+-+-+-+-+-+ |F|NRI| Type | +---------------+F:转载 2015-07-25 10:13:33 · 466 阅读 · 0 评论 -
PCM转MP3音频文件(借助lame库)
pcm2mp3.c#include #include #include #define INBUFSIZE 4096#define MP3BUFSIZE (int) (1.25 * INBUFSIZE) + 7200int encode(char* inPath, char* outPath) { int status = 0; lame_global_flags* gfp原创 2015-08-24 13:31:36 · 5897 阅读 · 2 评论 -
TS流如何经过RTP封装及其vlc通过打开sdp文件的方式接收
头文件hTs.h:/* Project by qiuliangbin copyright 2015-2018*//* Just for learning; *//* Function:Use Rtp Transmition send Ts to VLC Media player*/#include #include #include原创 2015-08-10 16:42:13 · 3530 阅读 · 2 评论 -
TS通过UDP的方式传送给VLC(下面为服务端代码),客服端接收方式:udp://@:5678
/* Project by qiuliangbin copyright 2015-2018*//* Just for learning; *//* Function:Use Rtp Transmition send Ts to VLC Media player*/#include #include #include #include原创 2015-08-10 16:32:09 · 3831 阅读 · 1 评论 -
H264视频的sps和pps解析和哥伦布编码
本人根据http://blog.csdn.net/simongyley/article/details/8517817整理所得,有错误请大家指正。这是原作者的的 h264视频的sps和pps解析代码下载地址在http://download.csdn.net/detail/gyley2/5008185用来表示非负整数的k阶指数哥伦布码可用如下步骤生成:将数字以二进制形式写出,去掉最低转载 2015-07-21 15:25:14 · 1177 阅读 · 0 评论 -
H.264无符号整数指数哥伦布码编码
我在阅读x264/common/bs.h,读到如下面的一个函数时,搜到了这篇文章,因为我要在代码里把文章作为注解,所以转过来放在我博客上,如果放别人的链接,可能原文日后会不存在了。 static inline int bs_read_ue( bs_t *s ){ int i = 0; while( bs_read1( s ) ==转载 2015-08-11 17:36:44 · 664 阅读 · 0 评论 -
x264中bs.h文件部分函数解读
本文结合写入、读取码流函数介绍哥伦布编码方式。1 写入码流函数bs_write:1) static inline void bs_write( bs_t *s, int i_count, uint32_t i_bits )该函数的作用是:向s里写入i_bits流的后i_count位,s以字节为单位,所以够8个位就写下个(注意i_bits的单位是uint32_t)。sta转载 2015-08-11 17:38:12 · 565 阅读 · 0 评论 -
H2642PES
H264转化为PES的函数,以后会完善原创 2015-07-20 11:17:38 · 1009 阅读 · 0 评论 -
vlc内部运行机制以及架构分
VLC架构剖析1. VideoLan简介1.1 videolan组成Videolan有以下两部分组成:VLC:一个最主要的部分,它可以播放各种类型的媒体文件和流vlc架构剖析1. VideoLan简介1.1 videolan组成Videolan有以下两部分组成:VLC:一个最主要的部分,它可以播放各种类型的媒体文件和流媒体文件,并且可以创造媒转载 2015-07-25 13:49:07 · 1112 阅读 · 0 评论 -
SDP: Session Description Protocol(会话描述协议) (RFC2327)
SDP: Session Description Protocol(会话描述协议) (RFC2327)翻译 2015-07-24 18:45:44 · 1828 阅读 · 0 评论 -
VLC框架分析
转自 http://weiyinchao88.iteye.com/blog/1414207功能部份:VLC媒体播放器的核心是libvlc ,它提供了界面,应用处理功能,如播放列表管理,音频和视频解码和输出,线程系统。所有libvlc源文件设在的/src目录及其子目录:# config/ :从命令行和配置文件加载配置,提供功能模块的读取和写入配置# control转载 2015-07-25 13:44:45 · 3244 阅读 · 0 评论 -
ubuntu下ffmpeg编译安装 -只支持h264解码,输出为yuv420
0、下载gitsudo apt-get install git1、下载FFmpeg源码:sudo git clone git://source.ffmpeg.org/ffmpeg.git ffmpeg2、下载yasmsudo apt-get install yasm3、configuresudo ./configure --prefix=/usr/local/F原创 2015-09-12 15:24:18 · 1197 阅读 · 0 评论