音视频
文章平均质量分 80
码农小明
openHarmony多媒体领域开发者。
展开
-
FFmpeg生成静音音频和黑屏视频命令
开发中有时需要生成静音音频或者纯色黑屏视频为便于测试或其他特殊应用场景,可以使用FFmpeg命令-f lavfi来搞定。生成静音音频可以使用anullsrc或者aevalsrc来生成静音音频,aevalsrc还可以生成其他类型声音。以下命令生成10s特定采样率和声道的静音音频,可以指定编码器进行编码。anullsrcffmpeg -f lavfi -i anullsrc -t 10 silent-audio.mp3# orffplay -f lavfi -i anullsrc=r=44100:原创 2022-01-06 17:13:35 · 8397 阅读 · 0 评论 -
FFmpeg HDR视频转SDR视频命令
之前蓝光盘电影多是AVC 1080p 8bit SDR格式视频,近两年4K电影流行,下载的蓝光电影多是HEVC 2160p 10bit HDR视频格式。ffprobe查看有如下属性:# 10bit HDRStream #0:0(eng): Video: hevc (Main 10), yuv420p10le(tv, bt2020nc/bt2020/smpte2084), 3840x2160 [SAR 1:1 DAR 16:9], 23.98 fps, 23.98 tbr, 1k tbn, 23.98原创 2021-12-22 23:08:37 · 9665 阅读 · 8 评论 -
AAC ADTS 媒体流格式分析 及 FFmpeg解析mp4的aac码流方法
和其他编码格式一样,AAC只是数据编码格式,码流组织格式有ADIF(Audio Data Interchange Format) 和 ADTS (Audio Data Transport Stream)。ADIF 与 ADTS的显著区别就是前者的编码信息存在一个固定的地方,后者的编码信息是每一个包中都有。所以ADIF主要用于磁盘存储文件,ADTS主要用于渐进式传输的网络流,本文主要分析ADTS流。ADTS 流格式ADTS流格式为ADTS头部加AAC裸数据。[ADTS Header](AAC ES d原创 2021-12-04 14:25:33 · 2170 阅读 · 0 评论 -
H.264媒体流AnnexB和AVCC格式分析 及 FFmpeg解析mp4的H.264码流方法
H264码流分两种组织方式,一种是AnnexB格式,一种是AVCC格式。首先要了解的是H.264编码规范只是规定了如何编码,并没有规定以何种方式来排列编码后的数据。就如同AES算法只是规定如何加密一组数据,并没有强制规定如果分组。H.264规范没有规定如何组织数据,但是在附录B中提供了一种可选方案,即Annex B格式。H.264 NALU 概念H.264视频编码后的数据叫NALU(Network Abstraction Layer Units)。NALU有多种类型,分为两大类:VCL(Vide.原创 2021-11-25 22:19:22 · 4711 阅读 · 0 评论 -
OWT Server 整体架构分析
基础模块架构图按自己的理解用 visio 大体画了一下。前一篇博客讲过OWT Server是模块化的设计,不同模块可以分开部署,便于新手入门,下面画了OWT Server的一些基础模块(支持WebRTC开会)的框架图,如果把这几个模块搞清楚了,差不多对OWT Server也就理解了。模块内部的 RPC 调用都是通过 RabbitMQ 消息队列实现的,都不是直接调用,即上图中 所有的虚线都是通过RabbitMQ间接通信的,而不是直接连接。模块内部流交换(Internal IO)默认用的是原创 2021-09-12 21:41:50 · 3525 阅读 · 6 评论 -
OWT (Open WebRTC Toolkit) 5.0 初体验与开发环境搭建
先打个草稿,有空补充。介绍Demo 体验提供docker开发环境搭建正常流程官方介绍曲线救国网络不佳境外服务器后记有问题可以留言。原创 2021-09-09 22:23:52 · 8521 阅读 · 18 评论 -
RTP协议介绍以及C语言实现具有发送H.264视频功能的RTP服务器
RTP封装H.264视频规范以及C语言实现以前上学时间做嵌入式开发板Hi3516A的流媒体项目,现在又突然想起来,不想学过就忘了浪费了,所以又自己实现了一遍读取本地视频文件发送RTP视频流的程序,算是总结一下。网上关于RTP的介绍实在是太多,但是多数都是抄来抄去没有系统性,还是贴上代码更容易理解。 RTP封装H.264码流规范本文简单说明RTP结构和实现,详细说明请参考标准文档RT...原创 2018-05-19 15:04:40 · 9159 阅读 · 39 评论 -
使用FFmpeg进行屏幕录像和录音
有些时候我们需要对屏幕进行录制,比如制作视频教程,录制直播等。然而这方面的软件多是收费的,即使是免费试用版的还有水印,特别烦人。下面介绍使用FFmpeg进行屏幕录制的方法。Windows先安装dshow软件 Screen Capturer Recorder, 项目地址:https://sourceforge.net/projects/screencapturer/files/ 。然后查...原创 2018-07-16 17:01:10 · 42416 阅读 · 33 评论