Audio
Audio
声音
处理流程
音频采集(模数转换成PCM数据)
音视频编码(音视频原数据, 编码压缩成小数据)
传输
音视频解码
音视频渲染
声音的产生
声音是由物体振动产生
它可以通过空气, 固体, 液体等进行传输
振动耳膜
人类听觉范围
1秒钟振动的次数
次声波 20Hz 可听声波 20kHz 超声波
声音的三要素
音调: 音频的快慢
音量: 振动的幅度
音色: 谐波
声音模数转换
采样: 越大越真, 常用采样频率: 441000, 48000(一般), 32000, 16000, 8000
10进制转成二进制方波
保存二进制位数, 影响音量大小
原始数据格式:
PCM:
...
iOS 通知
iOS 通知
iOS有两套通知API, iOS10前使用UILocalNotification, 以后使用UNUserNotificationCenter.
UILocalNotification, iOS8以后应用需要registerUserNotificationSettings:函数注册通知.
if ([[UIApplication sharedApplication] respondsToSelector:@selector(registerUserNotificationSettings:)]) {
UIUserNotificationType type = UIUserNotificationTypeAlert | UIUserNotificatio...
multimedia
multimedia
主流多媒体库vlc, gstreamer, ffmage(libav)
vlc
vlc代码, 使用GPL-2.0, LGPL-2.1 licenses
gstreamer
gstreamer代码, 使用GPL-2.0
FFmpeg
FFmpeg代码
libav
oneapi-src/oneVPL
blog
零声音视频开发
移动端进行直播和音视频开发
移动应用开发:熟悉移动应用开发平台,例如Android(Java/Kotlin)或iOS(Objective-C/Swift),以便能够创建直播和音视频应用程序。
视频编解码:了解视频编解码的基本原理和常见的视频编码标准,如H.264、H.265(HEVC)等。这将帮助您理解视...
FFmpeg
FFmpeg
./libavfilter/allfilters.c(ffmpeg -filters) - 声明支持的过滤器
./libavdevice/alldevices.c(ffmpeg -devices) - 声明支持的平台设备
./libavformat/allformats.c(ffmpeg -formats) - 声明支持的媒体格式
./libavcodec/allcodecs.c(ffmpeg -codecs) - 声明支持的编解码格式
输入和输出设备 - FFmpeg Devices Documentation
ffmpeg -f avfoundation -list_devices true -i “”
默认音频采样参数
ff...
453 post articles, 57 pages.