随笔分类 -  音视频编解码

主要介绍及整理音视频编码、解码相关的知识,包括主要的音视频压缩标准及相关码流结构,以及相关的编解码开源代码库简介。
摘要:本文简要整理了WebVTT文件格式的主要构成以及其中几个关键部件。WebVTT跟SRT类似,只是功能上有一定扩展,并且很好的被HTML5支持,在前端开发中也有一定应用。HLS外挂字幕也是以VTT为主,所以在实际应用中还是值得了解下的。 阅读全文
posted @ 2019-07-31 21:47 Tocy 阅读(12228) 评论(1) 推荐(1)
摘要:本文整理并介绍了如何编译libass库,及其主要对外接口,并说明了ffmpeg中如何使用libass库的。仅供后续参考。 阅读全文
posted @ 2019-07-31 21:45 Tocy 阅读(7405) 评论(0) 推荐(2)
摘要:SSA/ASS是相对复杂的字幕格式,但其也具有丰富的功能集及可扩展性。本文简要概述了SSA/ASS字幕文件的主要构成及基本样式覆盖代码。 阅读全文
posted @ 2019-05-31 23:18 Tocy 阅读(24600) 评论(0) 推荐(1)
摘要:srt字幕以其简单、体积小、易查看、易掌握等优点,深得人们的喜爱,但便利的代价就是样式少,无法实现复杂的特效。 本文整理了srt字幕的基本格式以及支持的格式,同时介绍了ffmpeg中srt格式生成和渲染的用法,仅供后续参考。 阅读全文
posted @ 2019-04-30 22:54 Tocy 阅读(44044) 评论(4) 推荐(7)
摘要:本文简单总结了FFmpeg内部对subtitle的解析逻辑,并以LRC为例做了说明。从整体来看,libavformat中对字幕解析的主要逻辑都集中在`ff_subtitles_queue_*`一系列API中。 阅读全文
posted @ 2019-02-28 22:34 Tocy 阅读(1508) 评论(0) 推荐(0)
摘要:本文简单整理了LRC歌词的格式,并对音乐播放器歌词显示逻辑做了简要概述。 阅读全文
posted @ 2019-01-28 15:04 Tocy 阅读(12698) 评论(0) 推荐(1)
摘要:本文主要是对目前常见的字幕格式做了简单总结,并基于ffplay的代码介绍了其字幕渲染的主要逻辑,仅供参考。 阅读全文
posted @ 2018-11-30 21:18 Tocy 阅读(3171) 评论(0) 推荐(0)
摘要:这是一篇转载,虽然有几年了,但是还是值得参考,有些技术需要深入学习,多实践。 阅读全文
posted @ 2018-08-31 17:16 Tocy 阅读(2622) 评论(0) 推荐(0)
摘要:本文演示了如何使用ffmpeg、ffplay实现RTP/RTCP的演示系统,仅供参考使用。辅助个人理解。 阅读全文
posted @ 2018-07-31 21:55 Tocy 阅读(9630) 评论(0) 推荐(0)
摘要:本文简要整理了HLS不同类型的playlist及其对应的关键字,可以根据不同的关键字区分不同的playlist类型。理清这些类型之后,对于熟悉HLS解析会有较大帮助。仅供参考。 阅读全文
posted @ 2018-06-30 08:29 Tocy 阅读(9567) 评论(0) 推荐(0)
摘要:本文主要参考FFmpeg/libavformat/hls.c,对其代码逻辑做了简单收集及整理。整体来说,本文总结了ffmpeg中hls_demxuer的实现逻辑,希望对读者有所帮助。 HLS协议中还涉及一些比较细节的部分,比如subtitle、rendetion、group、init_section、fragment mp4,对这些感兴趣的建议参考HLS官方标准。 阅读全文
posted @ 2018-05-31 22:02 Tocy 阅读(4181) 评论(0) 推荐(1)
摘要:本文参考AOSP 7的源代码,简单梳理了下HttpLiveSource对HLS的解析处理逻辑,整理本文的目的仅仅是为了加深这方面的理解。当然本文没有很细节的协议解析以及HLS variant切换的逻辑。所以,仅供参考。 阅读全文
posted @ 2018-04-29 17:06 Tocy 阅读(1683) 评论(0) 推荐(0)
摘要:本文首先介绍了如何安装配置nginx,这样就可以实现http服务器,并在此基础上使用ffmpeg实现HLS点播/直播的处理,最后给出了ffmpeg命令以实现一条语句生成HLS所需的master playlist。 总体来说,做完这些让我对HLS系统环境搭建有了大体上的认识,仅作记录,以供后续参考。 阅读全文
posted @ 2018-04-29 17:01 Tocy 阅读(18109) 评论(1) 推荐(2)
摘要:本文主要简单总结了HLS协议相关的基础知识,以及HLS服务器端和客户端的常规实现逻辑。仅供后续参考及查阅。 阅读全文
posted @ 2018-03-27 14:30 Tocy 阅读(2646) 评论(0) 推荐(0)
摘要:本部分主要是HLS的背景介绍及系统构成 阅读全文
posted @ 2018-02-28 21:21 Tocy 阅读(6421) 评论(0) 推荐(1)
摘要:本文是我的“流媒体网络协议”系列文章的引言部分。 阅读全文
posted @ 2017-12-26 22:54 Tocy 阅读(1813) 评论(0) 推荐(1)
摘要:本文可能涉及比较多的源代码,是对libavutil/opt.c的整理及摘取,通过梳理相关实现代码,让我基本理解AVOption的实现逻辑,值得后续更深入的使用作为参考。 阅读全文
posted @ 2017-11-30 22:33 Tocy 阅读(1925) 评论(0) 推荐(0)
摘要:基本梳理了全部FFmpeg中libavutil所提供的日志输出机制,从上面代码来看,整体思路比较清晰,但是涉及代码部分很多,有些内容是很值得参考的,比如字符输出颜色控制、c变长参数列表使用等等。 本文可能代码比较多,如果不感兴趣可以快速了解下。 阅读全文
posted @ 2017-11-30 22:28 Tocy 阅读(1250) 评论(0) 推荐(0)
摘要:本文简要整理了FFmpeg中的AVBuffer的实现逻辑,可以作为一份简单的参考资料 阅读全文
posted @ 2017-11-30 22:19 Tocy 阅读(2121) 评论(0) 推荐(0)
摘要:到此,本文简单的整理了下FFmpeg中libavutil所提供的主要函数和常量,仅仅是为了整理了解,如果大家需要查看具体文档,建议使用FFmpeg官网的doxygen生成的标准文档。 整理本文的目的只是为了加强记忆。后续会介绍下AVOption、AVLog、AVBuffer的实现细节。 阅读全文
posted @ 2017-09-30 20:20 Tocy 阅读(4757) 评论(0) 推荐(0)