SDL播放pcm无声音的原因

试过了网上各种:

  • 要用if(SDL_Init(SDL_INIT_AUDIO | SDL_INIT_TIMER)) ,不要用if(SDL_Init(SDL_INIT_VIDEO | SDL_INIT_AUDIO | SDL_INIT_TIMER)) ---NO

  • 无论如何先SDL_memset(stream, 0, len); ---NO

最后对比了一个可以出声的程序,原因如下:

"fopen()"函数中的"r"和"rb"表示以只读方式打开文件,但是前者是文本模式,后者是二进制模式。在文本模式中,即使操作系统使用不同的换行符,都会被转换为'\n'进行处理。在二进制模式下,文件中的所有数据都被视为raw数据,且不进行任何的字符集转换。

然后,看了看不出声的程序,是用了audio_fd = fopen(path, "r");,改成audio_fd = fopen(path, "rb"); 之后,一切都好了!!!!

相关推荐
STQY燊桐启元(深圳)电子科技4 天前
太阳能追踪设备散热优化,相变陶瓷片解决全日照高温积温故障
经验分享·笔记·pcm
STQY燊桐启元(深圳)电子科技8 天前
耐高温工况专项适配:相变陶瓷片如何突破高温工业设备散热瓶颈
经验分享·笔记·pcm
STQY燊桐启元(深圳)电子科技8 天前
工业物联网网关散热升级,相变陶瓷片解决微型设备积温过热难题
经验分享·笔记·pcm
STQY燊桐启元(深圳)电子科技9 天前
大功率储能PCS散热升级,ST-PCM180氮化铝相变陶瓷适配高密度热管理
经验分享·笔记·pcm
STQY燊桐启元(深圳)电子科技11 天前
免涂硅脂新时代,ST‑PCMTC96 与 ST‑PCM180 相变陶瓷片重构功率器件热管理
经验分享·笔记·重构·pcm
折枝吖15 天前
音视频开发-PCM 原理与 AI 模块实战
音视频·pcm
程序员老陆1 个月前
FFmpeg6 在 Windows 打开麦克风并录成 PCM:不走 Qt Multimedia,也不碰 WASAPI
windows·ffmpeg·音视频·pcm
PGCCC1 个月前
PostgreSQL 数据库认证体系技术解析:PCA / PCP / PCM 三级能力模型与考纲拆解
数据库·postgresql·pcm
砚凝霜1 个月前
软考网络工程师|第 2 章 信道延迟、传输介质、数据编码、数字调制、PCM 完整备考笔记
网络·笔记·pcm
Curvatureflight3 个月前
浏览器音频采集实践:麦克风权限、降噪、回声消除与 PCM 转换
前端·javascript·音视频·信息与通信·web·pcm