javacv实时解析pcm音频流

javacv实时解析pcm音频流

  • 解析代码
java 复制代码
        try (ByteArrayInputStream inputStream = new ByteArrayInputStream(bytes);){
            FFmpegFrameGrabber grabber = new FFmpegFrameGrabber(inputStream);
            // PCM S16LE 格式
            grabber.setFormat("s16le");
            // 采样率
            grabber.setSampleRate(16000);
            // 声道数
            grabber.setAudioChannels(1);
            // 音频编码
            grabber.setAudioCodecName("pcm_s16le");
            grabber.start();
            Frame frame;
            // 注意每秒帧数等于音视频帧率(默认25),而不是音频采样率16000
            while ((frame = grabber.grabFrame()) != null) {
                // 处理音频帧
            }
        }
  • 模拟测试
java 复制代码
        File file = new File("C:/test.pcm");
        byte[] bytes = Files.readAllBytes(file.toPath());
相关推荐
千寻技术帮3 分钟前
10370_基于Springboot的校园志愿者管理系统
java·spring boot·后端·毕业设计
Rinai_R3 分钟前
关于 Go 的内存管理这档事
java·开发语言·golang
聆风吟º4 分钟前
【Spring Boot 报错已解决】彻底解决 “Main method not found in class com.xxx.Application” 报错
java·spring boot·后端
木易 士心7 分钟前
数字身份的通行证:深入解析单点登录(SSO)的架构与艺术
java·大数据·架构
ALex_zry22 分钟前
现代C++如何解决传统内存分配器的核心痛点
java·c++·spring
Coder_Boy_25 分钟前
【人工智能应用技术】-基础实战-小程序应用(基于springAI+百度语音技术)智能语音控制-Java部分核心逻辑
java·开发语言·人工智能·单片机
MACKEI25 分钟前
业务域名验证文件添加操作手册
java·开发语言
roman_日积跬步-终至千里25 分钟前
【源码分析】StarRocks EditLog 写入与 Replay 完整流程分析
java·网络·python
apihz27 分钟前
货币汇率换算免费API接口(每日更新汇率)
android·java·开发语言
Web极客码28 分钟前
如何选择最适合的内容管理系统(CMS)?
java·数据库·算法