ffmpeg音频格式转换、合成、速率调整

简介: ffmpeg音频格式转换、合成、速率调整

一、音频格式转换

#ffmpeg -i 要转文件的绝对路径 输出文件绝对路径
ffmpeg -i /usr/local/file/1610559296433.amr /usr/local/file/out.mp3

执行过程

二 、音频速率转换

现在我们有一个17s的音频,想转换为20s。

atmpo=17/20 中间其他参数大家研究,建议进行同格式音频的速率转换,如:mp3转mp3。不同格式如amr转mp3,先用amr转为mp3获取mp3时间,与目标时间进行对比,进行速率转换(amr转mp3时间不稳定)。

ffmpeg -i /usr/local/file/out.mp3 -ab 32k -f mp3 -filter:a "atempo=0.85" /usr/local/file/out2.mp3

三、音频合成

ffmpeg -i "concat:/usr/local/file/1610584814564t.mp3|/usr/local/file/1610584832504t.mp3|/usr/local/file/1610584848537t.mp3" -acodec copy /usr/local/file/83511610584848723.mp3

四、java获取音频时长及linux下执行命令

1、获取音频时长:https://blog.csdn.net/qq_29752857/article/details/112596878

2.linux下执行命令:https://blog.csdn.net/qq_29752857/article/details/112465221


相关文章
|
4月前
FFmpeg开发笔记(十八)FFmpeg兼容各种音频格式的播放
《FFmpeg开发实战》一书中,第10章示例程序playaudio.c原本仅支持mp3和aac音频播放。为支持ogg、amr、wma等非固定帧率音频,需进行三处修改:1)当frame_size为0时,将输出采样数量设为512;2)遍历音频帧时,计算实际采样位数以确定播放数据大小;3)在SDL音频回调函数中,确保每次发送len字节数据。改进后的代码在chapter10/playaudio2.c,可编译运行播放ring.ogg测试,成功则显示日志并播放铃声。
90 1
FFmpeg开发笔记(十八)FFmpeg兼容各种音频格式的播放
|
3月前
|
编解码 Python
音频剪裁大师:使用 Python 和 ffmpeg 分割音频的完整指南
使用 Python 和 ffmpeg 进行音频文件分割。通过 `subprocess` 模块调用 ffmpeg 命令,定义 `split_audio` 函数,输入参数包括音频文件、起始时间、持续时间和输出文件名。函数构建命令行指令进行分割,然后执行。运行脚本,即可按指定时间从音频中提取片段。简单易用,适用于多种音频处理场景。
57 1
|
4月前
|
缓存 编解码
FFmpeg开发笔记(十四)FFmpeg音频重采样的缓存
FFmpeg在视频流重编码和音频重采样中使用缓存机制。在音频文件格式转换时,特别是对于帧长度不固定的格式如ogg、amr、wma,需处理重采样缓存。通过调用`swr_convert`,传入空输入和0大小来清空缓存。在`swrmp3.c`中,修改帧样本数处理,并在循环结束后添加代码以冲刷缓存。编译并运行程序,将ogg文件重采样为MP3,日志显示操作成功,播放转换后的文件确认功能正常。
88 7
FFmpeg开发笔记(十四)FFmpeg音频重采样的缓存
|
4月前
|
存储 算法 编译器
【ffmpeg 到Qt的图片格式转换】精彩的像素:深入解析 AVFrame 到 QImage 的转换
【ffmpeg 到Qt的图片格式转换】精彩的像素:深入解析 AVFrame 到 QImage 的转换
203 0
|
4月前
|
人工智能 算法 物联网
声音的变奏:深入理解ffmpeg音频格式转换的奥秘与应用(二)
声音的变奏:深入理解ffmpeg音频格式转换的奥秘与应用
134 0
|
4月前
|
存储 编解码 算法
声音的变奏:深入理解ffmpeg音频格式转换的奥秘与应用(一)
声音的变奏:深入理解ffmpeg音频格式转换的奥秘与应用
228 0
|
7天前
|
XML Java Android开发
FFmpeg开发笔记(五十二)移动端的国产视频播放器GSYVideoPlayer
GSYVideoPlayer是一款国产移动端视频播放器,支持弹幕、滤镜、广告等功能,采用IJKPlayer、Media3(EXOPlayer)、MediaPlayer及AliPlayer多种内核。截至2024年8月,其GitHub星标数达2万。集成时需使用新版Android Studio,并按特定步骤配置依赖与权限。提供了NormalGSYVideoPlayer、GSYADVideoPlayer及ListGSYVideoPlayer三种控件,支持HLS、RTMP等多种直播链接。
44 18
FFmpeg开发笔记(五十二)移动端的国产视频播放器GSYVideoPlayer
|
6天前
|
Linux 开发工具 Android开发
FFmpeg开发笔记(五十三)移动端的国产直播录制工具EasyPusher
EasyPusher是一款国产RTSP直播录制推流客户端工具,支持Windows、Linux、Android及iOS等系统。尽管其GitHub仓库(安卓版:https://github.com/EasyDarwin/EasyPusher-Android)已多年未更新,但通过一系列改造,如升级SDK版本、迁移到AndroidX、指定本地NDK版本及更新Gradle版本等,仍可在最新Android Studio上运行。以下是针对Android Studio Dolphin版本的具体改造步骤。
21 3
FFmpeg开发笔记(五十三)移动端的国产直播录制工具EasyPusher
|
21天前
|
编解码 移动开发 安全
FFmpeg开发笔记(五十)聊聊几种流媒体传输技术的前世今生
自互联网普及以来,流媒体技术特别是视频直播技术不断进步,出现了多种传输协议。早期的MMS由微软主导,但随WMV格式衰落而减少使用。RTSP由网景和RealNetworks联合提出,支持多种格式,但在某些现代应用中不再受支持。RTMP由Adobe开发,曾广泛用于网络直播,但因HTML5不支持Flash而受影响。HLS由苹果开发,基于HTTP,适用于点播。SRT和RIST均为较新协议,强调安全与可靠性,尤其SRT在电视直播中应用增多。尽管RTMP仍占一定市场,但SRT等新协议正逐渐兴起。
59 8
FFmpeg开发笔记(五十)聊聊几种流媒体传输技术的前世今生
|
5天前
|
编解码 API 数据安全/隐私保护
FFmpeg开发笔记(五十四)使用EasyPusher实现移动端的RTSP直播
【9月更文挑战第21天】本文介绍了如何使用FFmpeg和EasyPusher实现移动端RTSP直播。首先概述了EasyPusher的功能及其API,接着详细描述了安装FFmpeg、获取EasyPusher库、初始化对象、打开输入流、配置推送参数及读取推送帧的具体步骤,并提醒开发者注意网络环境、编码参数和权限管理等问题,以确保直播质量与稳定性。