用于处理音频、视频和字幕的 C 语言库与命令行工具集,涵盖编解码、转换、滤镜与流媒体。
6.7万+545 本周1.5万COther更新于 18小时前
面向开发者的数字视频入门教程,讲解色彩、帧类型、H.264/H.265/VP9/AV1 编解码与流媒体,并附带 FFmpeg 实操示例。
这是一份面向软件开发者、但任何人都能读懂的数字视频技术入门指南,配有大量可动手实践的示例。内容从像素、分辨率、宽高比、码率等基础概念讲起,再逐步解释视频如何通过去除颜色、时间和空间上的冗余来压缩。
指南涵盖色度抽样、I/P/B 帧、运动估计、帧内预测、变换、量化和熵编码等环节,说明通用编解码器的工作原理,并比较 H.264、H.265、VP9 和 AV1 的差异。后半部分介绍在线流媒体,包括渐进式下载、自适应码率流媒体和内容保护。
许多章节提供可直接运行的示例,包括容器化的 FFmpeg 和 mediainfo 命令,以及用于可视化图像矩阵、DCT 系数和运动矢量的 Jupyter 笔记本。项目还提供多种语言版本。
克隆仓库
git clone https://github.com/leandromoreira/digital_video_introduction.git进入项目文件夹
cd digital_video_introduction运行安装脚本(需要 Docker)
./setup.sh概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
用于处理音频、视频和字幕的 C 语言库与命令行工具集,涵盖编解码、转换、滤镜与流媒体。
跨平台开源视频转码工具,可将已有视频转换为 MP4、MKV 或 WebM 格式,适配手机、电视与浏览器播放。
基于 FFmpeg 的跨平台图形界面工具,无需重新编码即可无损剪切、裁剪和转封装音视频。
基于 Linux 的开源 CCTV 视频监控软件,可采集、分析、录制并监控 IP、USB 和模拟摄像头。
Brotli 是一种通用无损压缩格式及参考实现,遵循 RFC 7932 规范,压缩率接近主流通用压缩方法。
用 Rust 编写的低延迟网页远程桌面串流工具,通过 WebSocket 将 H.264 画面推送到浏览器解码。