基于FFmpeg的视频播放器之九:使用SDL2播放音频

一.pcm文件准备

找一个mp3文件,然后用FFmpeg命令将它转换成pcm文件,这里使用NorwayForest-500.mp3(挪威的森林-伍佰)。
首先要使用ffmpeg查看mp3文件的一些信息,比如采样率、声道数等。

ffmpeg -i NorwayForest-500.mp3

基于FFmpeg的视频播放器之九:使用SDL2播放音频_第1张图片
从上图所示的信息,可以看到mp3文件采样率是44100Hz,双声道,在转换成pcm文件时要用到上面的信息。

ffmpeg -i NorwayForest-500.mp3 -acodec pcm_s16le -f s16le -ac 2 -ar 44100 NorwayForest-500.pcm

其中:
-acodec pcm_s16le 指定编码器
-f s16le 指定文件格式,是大端模式还是小端模式
-ac 2 指定通道数,2 代表双通道
-ar 44100 指定采样率,这里是 44100 Hz
在转换时要根据原文件的采样率和声道数进行转换,否则转换后的pcm文件播放声音不对,下面用ffplay播放一下。

ffplay -ar 44100 -channels 2 -f s16le -i NorwayForest-500.pcm

二.SDL音频播放

SDL(Simple DirectMedia Layer)是一套开放源代码的跨平台多媒体开发库,使用C语言写成。SDL提供了数种控制图像、声音、输出入的函数&#

你可能感兴趣的:(基于FFmpeg的视频播放器,音视频,SDL,播放音频)