音视频
延卿
我的qq,1256174071,有需要的朋友可以联系我
展开
-
常用h264编码流程分析
发送端逻辑StreamController implements OnVideoEncodeListeneronVideoEncode 会回调 mPacker.onVideoDataonVideoData 调用 mAnnexbHelper.analyseVideoDataonlyH264analyseVideoDataonlyH264 调用 onVideoonVideo 调用 pa...原创 2019-07-29 10:17:26 · 1054 阅读 · 0 评论 -
flv格式详解+实例剖析
简介FLV(Flash Video)是现在非常流行的流媒体格式,由于其视频文件体积轻巧、封装播放简单等特点,使其很适合在网络上进行应用,目前主流的视频网站无一例外地使用了FLV格式。另外由于当前浏览器与Flash Player紧密的结合,使得网页播放FLV视频轻而易举,也是FLV流行的原因之一。FLV是流媒体封装格式,我们可以将其数据看为二进制字节流。总体上看,FLV包括文件头(File ...转载 2019-08-29 17:09:26 · 1796 阅读 · 0 评论 -
ffmpeg编译
一、安装MinGw+msys 下载mingw-get-setup.exe并安装,安装完成会弹出以下界面。 选中红色框几个选项,点击Installation->Apply Changes 进行安装。二、安装 ffmpeg 依赖 1、安装 yasm 下载yasm-1.3.0-win32.exe,将 yasm-1.3.0-win32.exe 重命名为 y...转载 2019-08-13 12:10:16 · 332 阅读 · 0 评论 -
使用nginx搭建hls点播系统
第一步,使用ffmpeg将mp4视频转换为ts格式ffmpeg -y -i input.mp4 -vcodec copy -acodec copy -vbsf h264_mp4toannexb output.ts//input.mp4原文件名称,无指定路径,需手动切换到切片视频目录下进行该命令,//output.ts转换之后出输ts文件名称第二步,使用ffmpeg将ts格式转换位m3u...原创 2019-08-25 23:35:01 · 2726 阅读 · 0 评论 -
MP4大文件虚拟HLS分片技术,避免服务器大量文件碎片
MP4大文件虚拟HLS分片技术,避免点播服务器的文件碎片本文主要介绍了通过虚拟分片技术,把MP4文件,映射为HLS协议中的一个个小的TS分片文件,实现了在不实际切分MP4文件的情况下,通过HLS协议播放MP4文件,从而避免了对MP4进行点播,尤其是大的MP4文件,需要长时间缓冲MP4头部数据的问题,同时可以解决对MP4文件进行切分,会在服务器制造出大量的文件碎片的不利情况。而且本技术,几乎可...转载 2019-08-24 17:53:57 · 718 阅读 · 0 评论 -
ffmpeg常见问题总结
1.如果遇到编码后的数据解码的是时候越来越模糊,是应为AVFrame的pts没有设置,加上之后就解决了2.如果提示解码失败,是应为这句话没有加 if ( vc->flags & AVFMT_GLOBALHEADER )vc->flags |= CODEC_FLAG_GLOBAL_HEADER;...原创 2019-08-20 14:55:24 · 1872 阅读 · 0 评论 -
NAT穿透,UDP打洞程序
在看NAT穿透和UDP打洞原理,网上都是讲原理,没有程序,我把程序写出来。server.py,辅助打洞的服务器。peer.server.py,被打洞的节点。peer.client.py,主动打洞的节点。基本原理是:1. peer.client向peer.server发个包,把自己的洞打好,这样peer.server可以给peer.client发包。这个包会被NAT拒绝掉,所...转载 2019-08-24 01:40:18 · 768 阅读 · 0 评论 -
P2P通信原理与实现(C++)
https://www.cnblogs.com/pannengzhi/p/4800526.html1.简介 当今互联网到处存在着一些中间件(MIddleBoxes),如NAT和防火墙,导致两个(不在同一内网)中的客户端无法直接通信。这些问题即便是到了IPV6时代也会存在,因为即使不需要NAT,但还有其他中间件如防火墙阻挡了链接的建立。 当今部署的中间件大多都是在C/S架构上设计的,...转载 2019-08-13 17:38:04 · 446 阅读 · 0 评论 -
ffmpeg解码视频的两种方法
由于ffmpeg api的变更,有两种方法解码h264帧数据 int m_i_frameFinished=0; avcodec_decode_video2(ctx, frm, &m_i_frameFinished, &pkt); /*int ret = avcodec_send_packet(ctx, &pkt); if ((...原创 2019-08-13 17:18:53 · 942 阅读 · 0 评论 -
1>MSVCRTD.lib(exe_main.obj) : error LNK2019: 无法解析的外部符号 _main,该符号在函数 "int __cdecl invoke_main(void)"
在使用SDL库的时候会在编译时报出以下错误1>MSVCRTD.lib(exe_main.obj) : error LNK2019: 无法解析的外部符号 _main,该符号在函数 “int __cdecl invoke_main(void)” (?invoke_main@@YAHXZ) 中被引用主要原因是main函数没有找到 ,main函数没有找到的主要原因是SDL中把main从新定义一...转载 2019-07-26 01:42:18 · 8328 阅读 · 1 评论 -
windows编译libfaac
音频压缩有很多种方法,我们这里使用过libfaac压缩pcm为aac格式,因为我们之后要实现h264+aac推rtmp流。网上有已经编译完毕的libfaac下载过来就可以用,不过这里我们还是自己编译一下。Libfaac下载地址:http://www.audiocoding.com/downloads.html之前一直以为libfaac需要交叉编译,但是后来发现其实libfaac中fro...原创 2019-07-26 00:36:54 · 1749 阅读 · 1 评论 -
Windows7系统下编译安装X264
1. MinGW的下载与安装下载网址:https://sourceforge.net/projects/mingw/files/点击矩形框内链接下载安装引导程序mingw-get-setup.exe。最好安装默认安装路径以及设置。选择所有Package,点击Installation,Apply all changes,在弹出的对话框中点击Apply,等待安装完成。(大约10分...原创 2019-07-26 00:17:04 · 607 阅读 · 4 评论 -
zlmediakit视频帧部分继承关系
FrameWriterInterfaceFrameWriterInterfaceHelper FrameRingInterface FrameRing FrameRingInterfaceDelegate...原创 2019-07-25 17:00:56 · 905 阅读 · 0 评论 -
rtmp推流和播放的调用堆栈
推流的播放的修正后的推流播放器调用堆栈原创 2019-07-30 14:15:20 · 406 阅读 · 0 评论 -
zlmediakit读取mp4文件并编码发送流程分析
zlmediakit编码部分分析MediaReaderif (_video_trId != MP4_INVALID_TRACK_ID) { H264Track::Ptr track = std::make_shared<H264Track>(_strSps,_strPps); _mediaMuxer->addTrack(track);}void Medi...原创 2019-07-30 10:09:09 · 2780 阅读 · 0 评论 -
RTMP协议解析(一) —— 基本了解
版本记录版本号 时间 V1.0 2017.09.04 前言大家都知道很多视频应用的app中都是使用RTMP格式的协议,这个是国际上共同使用的协议,我自己虽然做过了直播类型的app,但是从没时间深入的了解这个协议的基础,从这一篇开始让我们逐步揭开RTMP协议的神秘面纱,从应用层逐步进入原理层和底层。定义以下内容部分来自百度百科RTMP是Real Time ...转载 2019-07-24 18:42:22 · 2411 阅读 · 0 评论 -
rtmp1 flv格式解析
flv的组成 FLV是一个二进制文件,简单来说,其是由一个文件头(FLV header)和很多tag组成(FLV body)。tag又可以分成三类:audio,video,script,分别代表音频流,视频流,脚本流,而每个tag又由tag header和tag data组成。1 flv header文件头由9bytes组成前3个bytes是文件类型,总是“F...转载 2019-07-24 14:23:37 · 521 阅读 · 0 评论 -
RTMP H5 直播流技术解析
https://www.villainhr.com/page/2017/08/05/RTMP%20H5%20%E7%9B%B4%E6%92%AD%E6%B5%81%E6%8A%80%E6%9C%AF%E8%A7%A3%E6%9E%90rtmp://ns8.indexforce.com/home/mystream原创 2019-08-30 17:57:21 · 411 阅读 · 0 评论