音视频
文章平均质量分 54
橙子@C
这个作者很懒,什么都没留下…
展开
-
ffmpeg/ffplay指令
ffplay。原创 2024-03-24 09:11:49 · 1211 阅读 · 0 评论 -
wave 格式解析
【代码】wave 格式解析。原创 2024-03-23 23:41:57 · 121 阅读 · 0 评论 -
PCM /G711音频播放器 :Audacity
下载路径:Audacity ® | Free Audio editor, recorder, music making and more!原创 2024-03-23 23:30:11 · 611 阅读 · 0 评论 -
AAC相关知识
ADTS的头信息分为:固定头信息(adts_fixed_header,28bits)和可变头信息(adts_variable_header,28bits)两部分。number_of_raw_data_blocks_in_frames: 当前音频包里面包含的音频编码帧数,为0代表1frame.特点:可以确定的找到音视频数据的开始,不需要进行在音视频数据流中间开始的解码,它的解码必须在明确的定义开始。copyright_identification_bit: 直接置0,解码时忽略这个参数。原创 2024-03-23 23:27:46 · 1163 阅读 · 0 评论 -
ubuntu安装可调试的ffmpeg
11、报错 ERROR: speex not found using pkg-config。正常运行输入ffmpeg -version,得到如下信息,说明ffmpeg安装成功。6、下载 fdk-aac-2.0.1.tar.gz。7、解压 fdk-aac-2.0.1.tar.gz。10、再返回到第三步和第四步执行,配置ffmpeg。12、再返回到第三步和第四步执行,配置ffmpeg。9、配置fdk-aac-2.0.1并且编译和安装。3、进入目录 ffmpeg-6.1.1/8、进入fdk-aac-2.0.1/原创 2024-03-23 20:04:46 · 1366 阅读 · 0 评论 -
常见封装格式
ps:psh(15)+pes/psm(I帧)原创 2023-12-17 21:12:02 · 376 阅读 · 0 评论 -
音频I2S
先传送MSB是因为发送设备和接收设备的字长可能不同,当系统字长比数据发送端字长长的时候,数据传输就会出现截断的现象/Truncated,即如果数据接收端接收的数据位比它规定的字长长的话,那么规定字长最低位(LSB: Least Significant Bit)以后的所有位将会被忽略。同为将模拟量转换为数字量的方法,PCM使用等间隔采样方法,将每次采样的模拟分量幅度表示为N位的数字分量(N = 量化深度),因此PCM方式每次采样的结果都是N bit字长的数据。随着技术的发展,也出现了很多种不同的数据格式。原创 2023-12-17 21:06:10 · 1185 阅读 · 0 评论 -
Linux下getopt()函数的简单使用
所以这个命令行是符合要求的。对于这个过程会调用三次getopt()函数,和第一个输入一样,是找到选项-b和他的参数"qing er",这时optind的值为3,也就意味着,下一次的getopt()要从argv[3]开始搜索,所以第二次调用getopt()函数,找到选项-c和他的参数1234(选项和参数是连在一起的),由于-c1234写在一起,所以他两占一起占用argv[3],所以下次搜索从argv[4]开始,而argv[4]为空,这样第三次调用getopt()函数就会返回-1,循环随之结束。转载 2023-12-17 20:53:35 · 56 阅读 · 0 评论 -
cJSON
在本示例中,因为我提前知道数据的类型,比如字符型或者浮点型,所以我直接使用指针指向对应的数据域提取,在实际使用时,如果提前不确定数据类型,应该先判断type的值,确定数据类型,再从对应的数据域中提取数据。cJSON是一个使用C语言编写的JSON数据解析器,具有超轻便,可移植,单文件的特点,使用MIT开源协议。在键值对结构体中,当该键值对的值是一个嵌套的JSON数据或者一个数组时,由child指针指向该条新链表。上面讲述,一段完整的JSON数据就是一条长长的链表,那么,如何打印出这段JSON数据呢?转载 2023-12-17 20:49:58 · 49 阅读 · 0 评论 -
H264码流RTP封装方式详解:rfc3984
H264编码后的码流又NAL(网络抽象层)和VCL(视频编码层)构成,VCL数据传输或者存储之前,会被映射到一个NALU中,H264数据包含一个个的NALU,H.264的编码帧序列包括一系列的NAL单元,每个NAL单元包含一个RBSP,单元的信息头定义了RBSP单元的类型,NAL单元其余部分为RBSP数据,这里对NALU头字节进行i二少,因为RTP封装方式,主要针对NALU头进行处理。//这里取5-6位,即:NRI,这里只是通过按位与的方式,保留了5-6位,并未真正转换为真实值,方面后买你组合。原创 2023-08-29 16:04:38 · 802 阅读 · 0 评论 -
FLV 封装格式解析
12 00 01 17 00 00 00 00 00 00 00 (tag header 11 字节) 0x12 表示这是一个 scripts tag, 00 01 17 三子节表示 tag data 长度为 279 个字节,Timestreamp、TimestampExtended、stream id 均为0。08 00 00 04 00 00 5d 00 00 00 00 0x08 表示音频,00 00 04 表示长度为 4,时间戳为 93;第 2-5 个字节为 UI32 类型值,表示数组元素的个数。原创 2023-08-29 16:07:03 · 513 阅读 · 0 评论 -
FFMPEG:经典解码案例
#define _CRT_SECURE_NO_WARNINGS#include<stdio.h>extern "C" {#include<libavcodec\avcodec.h>#include <libavformat\avformat.h>#include<libavutil\opt.h>#include<libswscale\swscale.h>}#pragma comment(lib,"avcodec.lib")#pr.原创 2022-04-17 18:38:08 · 2779 阅读 · 0 评论 -
ffmpeg:打开本地文件和网络文件
1、复制一个新文件,删除新建目录下两层DEBUG文件夹,删除新建目录下一层xxx.sln文件2、test.vcxproj改为新工程名字open.vcxprojtest.vcxproj.filters改为新工程名字open.vcxproj.filterstest.vcxproj.user删除3、双击open.vcxproj打开本地文件#include<stdio.h>extern "C" {#include<libavc...原创 2022-04-17 16:11:22 · 3372 阅读 · 0 评论 -
音视频基础:字幕篇(SSA和ASS)
原创 2022-02-26 16:49:52 · 634 阅读 · 0 评论 -
音视频基础:音频(PCM和AAC)
原创 2022-02-26 16:43:00 · 2346 阅读 · 0 评论 -
音视频基础:图像篇(H.264)
Slice(片)可以看到NALU的主体是slice。slice是H264提出的新概念,编码图片后切分高效整合而成。一个图片有一个或者多个slice。通过NALU装载网络传输。设置片的目的是为了限制误码的扩散和传输,编码片是项目独立的,一个片的预测不能以其他片中的宏块为参考图像。保证了某一片的预测误差不会传播到别的片。一个slice同样包含Slice Header + Slice Dataslice有以下五种类型(1) I -slice: slice的全部MB(宏块)都采用...原创 2022-02-26 16:25:47 · 2001 阅读 · 0 评论 -
音视频基础:图像篇(YUV格式)
原创 2022-02-26 14:52:12 · 142 阅读 · 0 评论