<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[irainsa的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/irainsa</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; irainsa]]></copyright><item><title><![CDATA[音视频录制+RTMP直播推拉流]]></title><link>https://blog.youkuaiyun.com/irainsa/article/details/130814733</link><guid>https://blog.youkuaiyun.com/irainsa/article/details/130814733</guid><author>irainsa</author><pubDate>Mon, 22 May 2023 20:49:58 +0800</pubDate><description><![CDATA[音视频录制：根据short_name寻找自己的采集图像设备，short_name可以是硬件名称或编码格式h264、aac等。以下是简单的录音代码。2，视频录制如果进行摄像头直播。window可以尝试使用"gdigrab"桌面直播,mac切换"v:a"中v的index参数即可，例如直播教学分享。以下是个简单的代码3,h264视频编解码(2)解码过程: 相对于编码过程，多了一个AVCodecParserContext的解析器的概念。因为对于压缩后的数据，在解包前并不能准确知道解压后的数据大小。]]></description><category></category></item><item><title><![CDATA[FFmpeg编译与集成]]></title><link>https://blog.youkuaiyun.com/irainsa/article/details/130773521</link><guid>https://blog.youkuaiyun.com/irainsa/article/details/130773521</guid><author>irainsa</author><pubDate>Fri, 19 May 2023 20:27:56 +0800</pubDate><description><![CDATA[Java是 write once，run anywhre，但 C 不一样，各平台均有差异，无法只写一次，而且各个平台的编译都不一样。比如android的ndk工具链，不同平台的库都是不一样的本文主要讲解下 ffmpeg 在 win 平台下的编译以及集成。]]></description><category></category></item><item><title><![CDATA[Android平台RTSP|RTMP播放器设计]]></title><link>https://blog.youkuaiyun.com/irainsa/article/details/130754399</link><guid>https://blog.youkuaiyun.com/irainsa/article/details/130754399</guid><author>irainsa</author><pubDate>Thu, 18 May 2023 20:23:00 +0800</pubDate><description><![CDATA[以上就是Android平台RTSP、RTMP播放器接口设计需要参考的点，对于大多数开发者来说，不一定需要实现上述所有部分，只要按照产品诉求，实现其中的40%就足够满足特定场景使用了。一个好的播放器，特别是要满足低延迟稳定的播放（毫秒级延迟），需要注意的点远不止如此，感兴趣的开发者，可以参考blog其他文章。庖丁解牛之-Android平台RTSP|RTMP播放器设计 - 掘金t=N4HB。]]></description><category></category></item><item><title><![CDATA[Qt-FFmpeg开发-保存视频流裸流]]></title><link>https://blog.youkuaiyun.com/irainsa/article/details/130733554</link><guid>https://blog.youkuaiyun.com/irainsa/article/details/130733554</guid><author>irainsa</author><pubDate>Wed, 17 May 2023 20:11:25 +0800</pubDate><description><![CDATA[最近研究了一下FFmpeg开发，功能实在是太强大了，网上ffmpeg3、4的文章还是很多的，但是学习嘛，最新的还是不能放过，就选了一个最新的ffmpeg n5.1.2版本，和3、4版本api变化还是挺大的；在这个Demo里主要使用Qt + FFmpeg开发一个简单的【视频播放器】，支持【保存视频流裸流】功能，这里主要使用的是【软解码】，需要使用硬解码的可以看之前的文章；同时为了尽可能的简单，这里没有进行音频解码和播放，只是单独的进行视频解码播放；]]></description><category></category></item><item><title><![CDATA[Qt-FFmpeg开发-实现录屏功能]]></title><link>https://blog.youkuaiyun.com/irainsa/article/details/130713332</link><guid>https://blog.youkuaiyun.com/irainsa/article/details/130713332</guid><author>irainsa</author><pubDate>Tue, 16 May 2023 20:24:00 +0800</pubDate><description><![CDATA[最近研究了一下FFmpeg开发，功能实在是太强大了，网上ffmpeg3、4的文章还是很多的，但是学习嘛，最新的还是不能放过，就选了一个最新的ffmpeg n5.1.2版本，和3、4版本api变化还是挺大的；在这个Demo里主要使用Qt + FFmpeg开发一个【简易录屏软件】，这里主要使用的是【软解码】，需要使用硬解码的可以看之前的文章；为了便于学习，这里只是录制视频图像，没有引入音频等信息；]]></description><category></category></item><item><title><![CDATA[FFmpeg如何提升—进阶版]]></title><link>https://blog.youkuaiyun.com/irainsa/article/details/130693083</link><guid>https://blog.youkuaiyun.com/irainsa/article/details/130693083</guid><author>irainsa</author><pubDate>Mon, 15 May 2023 21:20:17 +0800</pubDate><description><![CDATA[FFmpeg 是一个功能强大的音视频处理工具，可以处理各种不同格式的音视频文件，是一套可以用来记录、转换数字音频、视频，并能将其转化为流的开源计算机程序。]]></description><category></category></item><item><title><![CDATA[FFmpeg ：音频重采样]]></title><link>https://blog.youkuaiyun.com/irainsa/article/details/130661846</link><guid>https://blog.youkuaiyun.com/irainsa/article/details/130661846</guid><author>irainsa</author><pubDate>Sat, 13 May 2023 20:22:23 +0800</pubDate><description><![CDATA[所谓的重采样，就是改变⾳频的采样率、sample format、声道数等参数，使之按照我们期望的参数输出。]]></description><category></category></item><item><title><![CDATA[wpf实现FFmpeg获取摄像头实时画面]]></title><link>https://blog.youkuaiyun.com/irainsa/article/details/130649744</link><guid>https://blog.youkuaiyun.com/irainsa/article/details/130649744</guid><author>irainsa</author><pubDate>Fri, 12 May 2023 20:35:20 +0800</pubDate><description><![CDATA[首先获取摄像头底部的验证码及ip(测试使用的是萤石摄像头，需要PC下载萤石客户端查看ip)在左上角（媒体）--》（流）--》（网络）--》输入rtsp链接。测试还可以使用该rtsp链接。如下就是rtsp链接。]]></description><category></category></item><item><title><![CDATA[FFmpeg源码编译环境搭建]]></title><link>https://blog.youkuaiyun.com/irainsa/article/details/130630343</link><guid>https://blog.youkuaiyun.com/irainsa/article/details/130630343</guid><author>irainsa</author><pubDate>Thu, 11 May 2023 20:48:07 +0800</pubDate><description><![CDATA[ffmpeg是视频开发最常用到的开源软件，ffmpeg功能强大，用途广泛，提供几乎所有你能够想到的与视频开发相关的操作，许多商业软件都以ffmpeg为基础进行开发定制。]]></description><category></category></item><item><title><![CDATA[FFmpeg基础学习路线]]></title><link>https://blog.youkuaiyun.com/irainsa/article/details/130609379</link><guid>https://blog.youkuaiyun.com/irainsa/article/details/130609379</guid><author>irainsa</author><pubDate>Wed, 10 May 2023 20:44:42 +0800</pubDate><description><![CDATA[FFmpeg 是一款免费的、开源的跨平台音视频处理工具，旨在提供高质量、高速度的多媒体处理功能，FFmpeg 设计以流式处理音视频。FFmpeg 目前已成为业界公认的最强大、最全面的音视频处理工具之一，得到了广泛的应用。绝大多数的音视频相关应用和工具库，都直接或间接地引用了 FFmpeg。FFmpeg 的开发始于2000年，最初由法国程序员 Fabrice Bellard 发起，后来有越来越多的开源贡献者参与。目前 FFmpeg 由一支由多名开发者组成的团队维护和开发。]]></description><category></category></item><item><title><![CDATA[FFMPEG时间概念的讲解]]></title><link>https://blog.youkuaiyun.com/irainsa/article/details/130589514</link><guid>https://blog.youkuaiyun.com/irainsa/article/details/130589514</guid><author>irainsa</author><pubDate>Tue, 09 May 2023 21:38:50 +0800</pubDate><description><![CDATA[本章节主要介绍FFMPEG的时间概念，包括时间基、时间戳、时间转换、时间比较等知识点。这些知识点对于我们了解推流至关重要，因为音视频合成本质上是各种时间转换的过程。]]></description><category></category></item><item><title><![CDATA[FFmpeg音视频处理]]></title><link>https://blog.youkuaiyun.com/irainsa/article/details/130566713</link><guid>https://blog.youkuaiyun.com/irainsa/article/details/130566713</guid><author>irainsa</author><pubDate>Mon, 08 May 2023 20:30:25 +0800</pubDate><description><![CDATA[FFmpeg（全称：Fast Forward Mpeg），名称来自MPEG视频编码标准。FFmpeg是一套用来处理视频和音频的开源工具库。它提供了录制、转换、流化音视频以及后期处理的完整解决方案。有很高的质量和可移植性。]]></description><category></category></item><item><title><![CDATA[身为前端仔的你，了解过WebRTC吗？]]></title><link>https://blog.youkuaiyun.com/irainsa/article/details/130514935</link><guid>https://blog.youkuaiyun.com/irainsa/article/details/130514935</guid><author>irainsa</author><pubDate>Fri, 05 May 2023 20:53:07 +0800</pubDate><description><![CDATA[WebRTC (Web Real-Time Communications) 是一项开源的跨平台的实时通信技术，我们可以使用它在不需要中间媒介的情况下在浏览器中建立对等连接（peer-to-peer），实现音视频传输、屏幕共享、P2P文件共享等功能。WebRTC 在 2011 年 6 月 1 日开源并在 Google、Mozilla、Opera 支持下被纳入万维网联盟的 W3C 标准。]]></description><category></category></item><item><title><![CDATA[FFmpeg大体介绍和内存模型]]></title><link>https://blog.youkuaiyun.com/irainsa/article/details/130494276</link><guid>https://blog.youkuaiyun.com/irainsa/article/details/130494276</guid><author>irainsa</author><pubDate>Thu, 04 May 2023 20:06:53 +0800</pubDate><description><![CDATA[av_register_all()：注册所有组件,4.0已经弃用avdevice_register_all()对设备进行注册，比如V4L2等。初始化网络库以及网络加密协议相关的库（比如openssl）负责申请一个AVFormatContext结构的内存,并进行简单初始化释放该结构里的所有东西以及该结构本身关闭解复用器。关闭后就不再需要使用avformat_free_context 进行释放。打开输入视频文件avformat_find_stream_info()：获取音视频文件信息读取音视频包。]]></description><category></category></item><item><title><![CDATA[FFmpeg 入门与疑问]]></title><link>https://blog.youkuaiyun.com/irainsa/article/details/130429433</link><guid>https://blog.youkuaiyun.com/irainsa/article/details/130429433</guid><author>irainsa</author><pubDate>Fri, 28 Apr 2023 16:40:39 +0800</pubDate><description><![CDATA[FFmpeg 是一款免费的、开源的跨平台音视频处理工具，旨在提供高质量、高速度的多媒体处理功能，FFmpeg 设计以流式处理音视频。FFmpeg 目前已成为业界公认的最强大、最全面的音视频处理工具之一，得到了广泛的应用。绝大多数的音视频相关应用和工具库，都直接或间接地引用了 FFmpeg。FFmpeg 的开发始于2000年，最初由法国程序员 Fabrice Bellard 发起，后来有越来越多的开源贡献者参与。目前 FFmpeg 由一支由多名开发者组成的团队维护和开发。]]></description><category></category></item><item><title><![CDATA[计算机网络——运输层中的UDP和TCP协议]]></title><link>https://blog.youkuaiyun.com/irainsa/article/details/130414303</link><guid>https://blog.youkuaiyun.com/irainsa/article/details/130414303</guid><author>irainsa</author><pubDate>Thu, 27 Apr 2023 20:30:50 +0800</pubDate><description><![CDATA[连接建立释放连接由于篇幅原因，暂时先记录到这里~计算机网络——运输层中的UDP和TCP协议 - 掘金。]]></description><category></category></item><item><title><![CDATA[WebRTC（九）简单的信令服务搭建]]></title><link>https://blog.youkuaiyun.com/irainsa/article/details/130393848</link><guid>https://blog.youkuaiyun.com/irainsa/article/details/130393848</guid><author>irainsa</author><pubDate>Wed, 26 Apr 2023 20:32:21 +0800</pubDate><description><![CDATA[服务端收到“create or join”消息时，它会对房间里的人数进行统计，如果房间里没有人，则发送“created”消息；如果你是在本机上搭建的服务，则可以在浏览器中输入“localhost:2013”，然后在浏览器中新建一个 tab ，在里边再次输入“localhost:2013”。举个例子，假设 A 与 B 要进行音视频通信，那么 A 要知道 B 已经上线了，同样，B 也要知道 A 在等着与它通信呢。你也可以看看下面的例子，其中 S 表示服务器，C 表示客户端，它们是发送消息与接收消息的比对。]]></description><category></category></item><item><title><![CDATA[【音视频直播开发】WebRTC 的安全机制]]></title><link>https://blog.youkuaiyun.com/irainsa/article/details/130393779</link><guid>https://blog.youkuaiyun.com/irainsa/article/details/130393779</guid><author>irainsa</author><pubDate>Wed, 26 Apr 2023 20:16:28 +0800</pubDate><description><![CDATA[WebRTC 的安全机制对实时通信至关重要。通过使用 DTLS 和 SRTP 协议对媒体流进行加密和鉴别，以及使用 TLS 对所有传输的数据进行加密和使用身份验证机制来验证每个参与者的身份，WebRTC 能够确保数据的机密性、完整性和来源，防止中间人攻击和未经授权的访问。在开发 WebRTC 应用程序时，必须要重视安全问题，并采取必要的安全措施，以确保应用程序的安全性和用户的隐私保护。【直播开发】WebRTC 的安全机制 - 掘金。]]></description><category></category></item><item><title><![CDATA[音视频开发—音视频同步]]></title><link>https://blog.youkuaiyun.com/irainsa/article/details/130372979</link><guid>https://blog.youkuaiyun.com/irainsa/article/details/130372979</guid><author>irainsa</author><pubDate>Tue, 25 Apr 2023 20:17:24 +0800</pubDate><description><![CDATA[严格地讲，基频和音调是两个不同的概念，基频是指声带振动的频率，音调是指人类对基频的主观感知，但是两者变化基本一致，即基频越高，音调越高，基频越低，音调越低，音调是由基频决定的。解码器中会缓存一定数量的帧，一个新的解码动作启动后，向解码器送入好几个 packet 后解码器才会输出第一个 packet，这比较容易理解，因为解码时帧之间有信赖关系，例如 IPB 三个帧被送入解码器后，B 帧解码需要依赖 I 帧和 P 帧，所以在 B 帧输出前，I 帧和 P 帧必须存在于解码器中而不能删除。B帧不可以作为参考帧。]]></description><category></category></item><item><title><![CDATA[RTSP转WebRTC视频协议解决方案]]></title><link>https://blog.youkuaiyun.com/irainsa/article/details/130372423</link><guid>https://blog.youkuaiyun.com/irainsa/article/details/130372423</guid><author>irainsa</author><pubDate>Tue, 25 Apr 2023 19:40:47 +0800</pubDate><description><![CDATA[本文重点在于阐述工程实践部分，从整体勾勒视频流端到端数据流以及简要概述相关组件的功能，而理论描述方面则简略提及视频相关协议，如RTP/RCTP、SDP、RTSP、WebRTC等，还有相关技术概念，如NAT、P2P和ICE candidate等。在实现RTSP协议转换WebRTC协议模块方面则借鉴模仿开源组件mediamtx中WebRTC服务模块处理代码，并结合开源的gortsplib库糅合而成（有待改进RTSP转WebRTC视频协议解决方案 - 掘金。]]></description><category></category></item></channel></rss>