使用FFMPEG转码,转单声道,转标准WAV,转PCM

本文为使用FFMPEG命令行的方式处理音频,来获取想要得到的音频文件。

零、使用命令行查看编码封装信息

bash 复制代码
格式:ffprobe.exe -show_format inputfile
例子:ffprobe.exe -show_format .\stereo_44_16bit.wav

运行结果为下图:

如图可知,其采样率、声道数、位深、码率等信息。

一、双声道转单声道

bash 复制代码
格式: ffmpeg.exe -i inputfile -ac 1 outputfile
例子: ffmpeg.exe -i .\stereo_44_16bit.wav -ac 1 mono_44_16bit.wav

结果可以通过【零】节介绍的命令行查看,确定是否成功转为单声道。

二、使用ffmpeg得到的wav存在问题

我们使用文本工具,以十六进制的方式打开wav文件(FFMPEG输出),会发现其文件头并不是标准的44个字节,而是还包含其他内容,这对于处理44个字节的wav程序很不友好。我们需要将其去掉。如图:wav文件的头部大于44个字节。

三、使用ffmpeg得到标准WAV(44个字节的头部)

bash 复制代码
格式:ffmpeg.exe -i inputfile -map_metadata -1 -fflags +bitexact outputfile -y
例子:ffmpeg.exe -i .\mono_44_16bit.wav -map_metadata -1 -fflags +bitexact new.wav -y

处理后的头部信息如图:符合预期。

四、音频转PCM

bash 复制代码
格式: ffmpeg.exe -i inputfile -f s16le -acodec pcm_s16le outputfile
例子: ffmpeg.exe -i .\new.wav -f s16le -acodec pcm_s16le out.pcm

我们将new.wav转成pcm,其结果如下图,通过对比可知仅仅是将wav的头部44个字节去掉,结果正确。

结束。

命令行中的参数含义,需稳步另行查阅。

相关推荐
炼金术21 小时前
SkyPlayer v1.2.0 : AI 字幕-端侧 Whisper 实时语音识别实践
ffmpeg·openai
硫酸锌011 天前
使用ffmpeg合并文件夹内的所有*.mp4格式视频
ffmpeg·音视频
源文雨1 天前
shell调用ffmpeg递归转换所有wav至flac的脚本
ffmpeg·bash·音视频·音频·unix·shell·音频编码
西部秋虫1 天前
迷你视频会议系统(FlashMeeting)
opencv·ffmpeg·视频会议·回声抑制
浩瀚之水_csdn2 天前
av_packet_alloc详解
ffmpeg
Echo_NGC22373 天前
【FFmpeg 使用指南】Part 3:码率控制策略与质量评估体系
人工智能·ffmpeg·视频·码率
xmRao3 天前
Qt+FFmpeg 实现 PCM 音频转 AAC 编码
qt·ffmpeg·pcm
xmRao3 天前
Qt+FFmpeg 实现录音程序(pcm转wav)
qt·ffmpeg
阿里巴啦4 天前
python+yt-dlp开源项目,支持 YouTube, Bilibili, TikTok/抖音,快手 等多个平台的视频/音频/字幕下载/ai摘要等功能
python·ffmpeg·whisper·音视频·视频处理·ai摘要·音视频转录
来鸟 鸣间5 天前
linux下ffmpeg源码编译
linux·运维·ffmpeg