音视频/流媒体/ffmpeg
文章平均质量分 69
青丶空゛
一歩ずつ歩み続けてはじめて千里の遠くに行き着けるし.
(如果个别文章图片不见了,建议访问我的博客园找对应文章,[https://www.cnblogs.com/ailumiyana],懒癌又犯了,懒得改了 哈哈)
展开
-
webrtc QOS笔记一 Neteq直方图算法浅读
webrtc qos of neteq histogram原创 2023-02-16 17:23:35 · 740 阅读 · 0 评论 -
opengl helloworld vscode 调用glfw 绘制三角形
opengl helloworld vscode 调用glfw 绘制三角形原创 2022-07-06 18:22:28 · 745 阅读 · 0 评论 -
[ffmpeg][issues] bit_equal_to_one out of range: 0, but must be in [1,1]
[ffmpeg][issues] goav Dictionary crash double free4.2版本ffmpeg在英伟达440驱动上编码,并使用h265 bsf 比特流滤镜写SEI的时候出现的一个 issues,[AVBSFContext @ 0x558a46855680] bit_equal_to_one out of range: 0, but must be in [1,1]. [AVBSFContext @ 0x558a46855680] Failed to read unit 0 (原创 2021-08-19 18:01:06 · 544 阅读 · 0 评论 -
ffmpeg protocol concat 进行ts流合并视频的时间戳计算及音画同步方式一点浅析
ffmpeg protocol concat 进行ts流合并视频的时间戳计算及音画同步方式浅析文章目录ffmpeg protocol concat 进行ts流合并视频的时间戳计算及音画同步方式浅析audio 10 video 5s 衔接测试audio 5s video 10s 接着音频短的片尾斜街一段小结ffmpeg 有三种常见的视频合并方式: demuxer,protocol,filter这里有介绍它的使用 :http://trac.ffmpeg.org/wiki/Concatenate#dem原创 2020-12-26 18:37:20 · 2537 阅读 · 2 评论 -
ffmpeg中的像素格式是如何存储的(AVPixFmtDescriptor)
ffmpeg中的像素格式是如何存储的ffmpeg的像素存储方式描述主要定义在了pexdesc.h中,下面看看这个结构体./** * Descriptor that unambiguously describes how the bits of a pixel are * stored in the up to 4 data planes of an image. It also stores the * subsampling factors and number of components.原创 2020-06-19 00:47:49 · 1820 阅读 · 0 评论 -
如何在ffmpeg中添加一个简单的filter
如何在ffmpeg中添加一个简单的filter文章目录如何在ffmpeg中添加一个简单的filterfilter大体写法yuv模型测试graph dump大体步骤如下:1. 编写filter文件, 比如vf_xxx.c, 放在libavfilter目录下2. 在libavfilter/allfilters.c +++ extern AVFilter ff_vf_xxx3. 修改libavfilter/Makefile +++ OBJS-$(CONFIG_XXX_FILTER) +=原创 2020-06-14 19:04:49 · 1111 阅读 · 0 评论 -
ffmpeg转码步骤源码实现的一点点浅析
ffmpeg转码步骤源码实现的一点点浅析ffmpeg转码过程对解码的处理封装在process_input()中(process_input()->decode_video()->decode()->avcodec_send_packet()),转码过程中ffmpeg会通过avformat库一包一包的读取avpacket经过avcodec_send_packet()往内部解码器送原始音视频压缩包、这里也提一下,我们都知道avpacket 和 avframe 是ffmpeg的通用帧封装 ,原创 2020-06-02 22:43:30 · 749 阅读 · 0 评论 -
mp4封装格式各box类型讲解及IBP帧计算
mp4封装格式各box类型讲解及IBP帧计算文章目录mp4封装格式各box类型讲解及IBP帧计算boxftyp boxmoov boxmvhd box (Movie Header Box)trak box (Track Box)tkhd(track header box)mdia (Track Media Structure)mdhd (Media Header Box)PTS和DTS的计算I P B 帧的概念stts(Decoding Time to Sample Box)ctts(Compositio原创 2020-05-17 22:24:34 · 1615 阅读 · 0 评论 -
[整理] FFmpeg官方文档树
扫了一遍官方文档,整理张官文树。当然还有很多细节,可以慢慢沿着树根填,有需要可以联系我要ProcessON源文件,我尽量给个最新的出来。官文 : http://ffmpeg.org/documentation.html...原创 2020-03-25 14:29:47 · 308 阅读 · 0 评论 -
intel硬件视频加速技术简单整理
硬件视频加速技术文章目录硬件视频加速技术intel 硬件加速技术intel 的开源媒体栈**`VA-API`**安装样例**`Intel Quick Sync(QSV)`**API支持情况vaapi/mfx比较安装样例硬件视频加速(Hardware video acceleration) 通过让显卡编解码视频,从而减轻cpu负担并且还能节省电源。在linux上的几种实现:Video Ac...原创 2020-03-09 18:05:39 · 2507 阅读 · 0 评论 -
网络流媒体协议的联系与区别(RTP RTCP RTSP RTMP HLS)
网络流媒体协议的联系与区别(RTP RTCP RTSP RTMP HLS)文章目录网络流媒体协议的联系与区别(RTP RTCP RTSP RTMP HLS)简结RTP RTCP RTSP 区别与联系RTSP、RTMP、HLS 区别与联系关于直播流媒体各协议层次图基于RTP的流式媒体RTPRTCPRTSPRTSP请求例RTMPRTMP扩展HLS简结RTP RTCP RTSP 区别与联系RT...原创 2020-03-07 22:47:44 · 1359 阅读 · 0 评论 -
RTMP协议推流交互流程
RTMP协议推流交互流程文章目录RTMP协议推流交互流程RTMP协议推流流程RTMP握手RTMP建立连接RTMP建流&PlayWireshark抓个RTMP流想了解下直播常见协议RTMP,可是看着网文,头疼,这里记录下RTMP协议推流播放的交互流程,细节可以再看规范,感觉会舒服一些。RTMP(Real Time Messaging Protocol 实时消息传输协议)RTMP是由...原创 2020-03-05 17:52:43 · 1522 阅读 · 0 评论 -
2019年终总结&小半年流媒体服务器开发经验总结
2019年终总结&小半年流媒体服务器开发经验总结文章目录2019年终总结&小半年流媒体服务器开发经验总结19年开发小结流媒体服务框架设计登录服开发ffmpeg音视频服务开发音视频控制流媒体服务开发小结rtp处理视频的合成&音视频缓冲区音视频编码回顾19展望20时间转瞬即逝,转眼间19年已经过去了,人愈来愈来老,却不见人心和物质的提升,期望2020年能有一个崭新的自己。...原创 2020-01-06 23:13:42 · 2636 阅读 · 3 评论 -
[ffmpeg][goav]ffmpeg代码例子pcmu重采样并转码aac格式
8k双声道的pcmu格式重采样44.1kHz的aac格式例子src : 其中adts包是给aac填充头部的,这里就没给了。package mainimport( "github.com/ailumiyana/goav-incr/goav/avcodec" "github.com/ailumiyana/goav-incr/goav/avutil" "github.com/ailumiy...原创 2019-11-27 18:33:20 · 2281 阅读 · 0 评论 -
[ffmpeg] ffmpeg filter模型介绍及开发指南
[ffmpeg] ffmpeg filter模型介绍及开发指南文章目录[ffmpeg] ffmpeg filter模型介绍及开发指南FFmpeg filter简介滤镜链图介绍滤镜链图(filtergraph)滤镜链(filterchain)滤镜垫(filterpad)滤镜(filter)1、基本滤镜2、 滤镜链3、滤镜链图开发API主要API示例FFmpeg filter简介libavfi...原创 2019-11-22 15:02:09 · 1772 阅读 · 0 评论 -
[ffmpeg][qsv][windows]windows下配置fmpeg英特尔qsv
[ffmpeg][qsv][windows]windows下配置fmpeg英特尔qsv预装mingw和msysMinGW : https://sourceforge.net/projects/mingw/安装与自己系统对应的版本msys 我用的1.0.11 挺小的3m左右 百度有这里有个2 不知道能不能用MSYS2 : https://sourceforge.net/projects...原创 2019-11-06 12:59:38 · 3398 阅读 · 2 评论 -
[ffmpeg][goav][issues] goav Dictionary crash double free
[ffmpeg][goav][issues] goav Dictionary crash double free用goav 配置avoption时的一个buggithub.com/giorgisio/goav/issues/57code : var dict *avutil.Dictionary = &avutil.Dictionary{} er := dict.AvDictSe...原创 2019-10-31 13:40:31 · 1295 阅读 · 0 评论 -
[ffmpeg][vaapi][goav][golang] ffmpeg使用vaapi示例代码(基于goav-incr)
[ffmpeg][vaapi][goav][golang] ffmpeg使用vaapi代码示例(基于goav)自己写的一份比较完备的vaapi硬件加速示例代码,包含了vaapi的解码,编码,及滤波的使用。基于goav,介于goav还有点bug,几个内存释放的函数会crash, 有可能版本不一致吧,作者貌似也不维护了,就没给作者提,其次我还需要加点硬件加速代码,就弄了个goav-incr,只要还...原创 2019-10-24 11:09:21 · 2864 阅读 · 0 评论 -
TS流PAT/PMT详解
原文 :http://www.cnblogs.com/shakin/p/3714848.html一 从TS流开始 从MPEG-2到DVB,看着看着突然就出现了一大堆表格,什么PAT、PMT、CAT……如此多的表该怎样深入了解呢? 我们知道,数字电视机顶盒接收到的是一段段的码流,我们称之为TS(Transport Stream,传输流),每个TS流转载 2017-06-21 14:27:27 · 1055 阅读 · 0 评论 -
pes结构详解
PES是Packetized Elementary Stream的简称,是将原始ES流打包后形成的,再将PES经过不同的打包方式可以组成MPEG program stream 和 MPEG transport stream,即PS流和TS流。PES的组成结构如图,包括6个字节的包头字段,加上3个字节基本流信息字段,根据信息字段的设置可在之后附加其他字段。PES结构转载 2017-06-21 20:21:02 · 1274 阅读 · 0 评论 -
ts流中提取i帧
进入公司的新人培训第二个作业,看了几天的文档都没太搞懂es包的结构,网上的资源也比较少,多数是介绍ts流和pes包的。所以花费了好几天才完成。 这个作业是对第一个作业的继续,在上一次作业中成功提取出来了pes包的视频,这次作业在第一次的基础上将pes包的包头去掉提取出来es视频,然后在es视频中提取出i帧来。 上图是pes包的结构。 pes包6个字节的包头,其中O转载 2017-06-22 20:27:06 · 1765 阅读 · 0 评论 -
live555学习(一)编译live555
live555学习(一)通读Makefile编译live555live555编译live555学习开源 live555学习(一)通读Makefile编译live555 前言 live555简介 下载live555 live的编译 生成Makefile Make的生成目标 前言拿到一份开源代码,我们应该怎么学习呢,第一次接触...原创 2018-04-26 16:22:38 · 1449 阅读 · 0 评论 -
海思媒体处理平台VI视频输入模块
海思媒体处理平台VI视频输入模块[Hi3516A||Vi视频输入||海思媒体处理平台]海思媒体处理平台VI视频输入模块VI模块的概念VI模块的功能、作用、内部单元工作流程硬件单元功能框图VI内部单元工作流程VIU视频采集单元参阅Api实现VImain.cMy_Head.hMakefile通过其他设置接口增加功能VI模块的概念Vi是...原创 2019-06-02 23:25:17 · 15819 阅读 · 3 评论 -
Hi35XXX海思媒体处理平台架构介绍.
海思的媒体处理平台(MPP,Media Process Platform),在系统中的位置如下图所示,内部主要分为视频输入(VI)、视频处理(VPSS)、视频编码(VENC)、视频解码(VDEC)、视频输出(VO)、视频侦测分析(VDA)、音频输入(AI)、音频输出(AO)、音频编码(AENC)、音频解码(ADEC)、区域管理(REGION)等模块。...原创 2018-03-29 15:07:21 · 7777 阅读 · 1 评论 -
Hi3516A视频摄像机开发环境的搭建
一、SDK的安装1、Hi3516A SDK包位置 在"Hi3516A_V100R001***/01.software/board"目录下,您可以看到一个 Hi3516A_SDK_Vx.x.x.x.tgz 的文件,该文件就是Hi3516A的软件开发包。2、解压缩SDK包 在linux服务器上(或者一台装有linux的PC上,主流的linux发行版本均可以),使用命...原创 2018-03-16 15:37:57 · 2916 阅读 · 0 评论 -
音视频入门
本文整理自卢俊的演讲,目标读者是对音视频开发感兴趣但是又不知道如何下手的初学者们,希望对大家有所帮助。卢俊,七牛云客户端团队技术负责人。拥有丰富的音视频领域的开发和实战经验,先后开发过 Android 播放 SDK、Android 推流 SDK、短视频 SDK,并主导了七牛连麦系统的设计和实现。服务过上百家直播客户,包括熊猫、全民、龙珠、汽车之家、懂球帝等。1. 成长的烦恼经常收到一些...转载 2018-03-13 10:39:39 · 471 阅读 · 2 评论 -
rtp协议打包拆包h264数据
rtp协议打包拆包h264数据文章目录rtp协议打包拆包h264数据nalu头rtp包头rtp打拆包h264打包拆包最近也在玩直播了,会写一点流媒体和ffmpeg滤波器和编解码器API方面的文章,本文简述一下rtp打包h264和拆包h264数据的方法。nalu头H264在网络上传输的是NALU,NALU的结构是:NAL头+RBSPNAL头只有一个字节:±--------------...原创 2019-07-06 16:05:15 · 1523 阅读 · 0 评论 -
FFmpeg:intel核显vaapi驱动安装记录
FFmpeg:intel核显vaapi驱动安装文章目录FFmpeg:intel核显vaapi驱动安装intel-media-driverlibvalibdrmsudo apt-get install xutils-devsudo apt-get install libpciaccess-devgit clone https://github.com/intel/gmmlib.gitvaninfo...原创 2019-07-23 18:47:06 · 9356 阅读 · 1 评论 -
什么是I帧,P帧,B帧
http://blog.csdn.net/abcjennifer/article/details/6577934视频压缩中,每帧代表一幅静止的图像。而在实际压缩时,会采取各种算法减少数据的容量,其中IPB就是最常见的。 简单地说,I帧是关键帧,属于帧内压缩。就是和AVI的压缩是一样的。 P是向前搜索的意思。B是双向搜索。他们都是基于I帧来压缩数据。转载 2017-06-20 23:40:39 · 320 阅读 · 0 评论