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());
相关推荐
Sayuanni%314 小时前
SpringBoot 从注解到源码:核心知识点总结
java·spring boot·后端
坚定信念,勇往无前14 小时前
Maven 私有仓库-nexus
java
Minner-Scrapy14 小时前
Scrapy 2.17 源码解析:Scheduler 调度器与磁盘/内存双队列
java·爬虫·python·scrapy·网络爬虫·twisted
晚风醉蝶14 小时前
1-11-奇偶排序-OddEvenSort
java·数据结构·算法
夏天拐跑了西瓜15 小时前
Spring Cloud 微服务实战(三):一个服务挂了,凭什么拖垮整个系统?Sentinel 限流熔断实战
java·spring cloud·微服务
HY小宝F15 小时前
树莓派 FFmpeg 实战笔记(二):命令行、源码编译与硬件编码的真相
学习·职场和发展·ffmpeg
2601_9672642815 小时前
Jetpack Compose 实践指南:从入门到进阶
java·学习
m0_5873830016 小时前
社区家政系统开发实战:从需求分析到上线部署全指南
java·spring boot·spring·需求分析
凤山老林16 小时前
动态 i18n 体系落地:Spring Boot 多租户热加载与前后端协同实践
java·spring boot·后端·i18n
白露与泡影16 小时前
解密 Pi 的 Harness 工程:Agent 会话如何实现持久化与恢复
java·人工智能·算法