java接入烽火科技拾音器详细步骤

2023-09-20 10:59:42

1 背景

       项目中需要拾音器去采集音频数据并保存成mp3这种音频文件,以便以后如果有纠纷后可以作为证据去减少纠纷,于是采购了一台烽火科技的拾音器设备,包括一个采音器及一个处理终端。

2 接线

        设备拿过来第一件事是接线,通电,让设备运行起来。

        采音器一共有三根线,红、黑、白,白线接音频输入端R、黑线接音频输入端的G、红色接音频输入端的V,网线接入网络,电源接通,这样接线就算是结束了

3 官方提供的sdk

这是官方提供的工具包及一个java的demo:

链接:https://pan.baidu.com/s/1Aq2Yq4DWn_eDaN4IlzO2gg?pwd=rntp 
提取码:rntp

先说一下里面的内容

接下来我说一下sdk里面的都有啥

1 Exe2文件夹

这个就是官方提供的一个调试功能的一个工具,有两个工具,都可以打开看一下

2 Include文件夹

这个里面是要引入的一些文件,可以理解为java的sdk

3 Java_Demo

这个里面就是官方提供的java的Demo了,方法写的都比较全,我这边就不去赘述太多,直接拿过来都跑的通的,主要说一下,他的OnCtsSdkCallBack.invoke方法

  @Override
    public int invoke(int eCbType, Pointer pParam, int dwSize, int usr_data) throws IOException, ClassNotFoundException {
        // 所有的操作的后续处理都在这个回调函数里,根据这个eCbType去穷举,类型有很多种,根据你的需要去添加响应的类型,然后在类型下做你相应的业务操作,代码里的注释也比较明白包括变量的名称也是见名知意
        System.out.println(eCbType);
        switch (eCbType) {
            case CB_Event_TermConnect:
                return 0;
            case CB_Data_TermMp3L:
               
                return 0;
            case CB_Data_TermMp3R:
                System.out.println("____________________");
                break;
            case CB_Data_TermPcmL:

                break;
            case CB_Data_TermPcmR:

                break;
        }
        return 0;
    }

4 SdkMp3和TestSdk 

这两个文件夹主要是两个调试工具的功能实现,但是是用c写的,必要的时候可以参考里面的代码,看看业务实现,说不定对你有帮助

4 调试详细

设备接好线,准备好代码就要进入调试阶段了,首先要打开官方提供的配置工具,点击搜索,此时需要你的电脑和设备处在同一网络下

如果搜索不到,看下网络配置,我那个没有禁用,也搜索不到

点击修改设备配置,将拾音器的ip改到和你电脑同一网段,然后重启设备,重新搜索,发现拾音器ip已经修改完毕,那么点击选择设备,点击连接,如果能连上,那么就前进了已大步。

此时启动java项目,调初始化的接口,如果出现初始化sdk成功,那么证明java服务和拾音器也可以连接成功了。

打开配置工具

点击保存设置,这块点了之后可以在后台回调函数里面注册功能取到拾音器的设备信息(CB_Event_TermRegister),名称ip这些,可以用来保存设备信息这样的有业务处理。

然后其他的功能就继续写接口去调,注意,他代码里的参数,就是设备的id,他的入参是需要一个int类型的16进制的这样一个值,你从回调函数取到的是一个十进制的设备id,java转成16进制的是个字符串,这个让我也很头疼,没有很好的解决办法,我是通过postman直接调接口去测试的。

其他的就正常调接口,然后在回调函数里面去处理业务就可以了,最后非常感谢烽火智能科技公司的工程师的耐心指导,让我顺利的调试完毕。


                
更多推荐

virtualbox配置ubuntu1804虚拟机相关流程

virtualbox配置ubuntu1804虚拟机相关流程相关版本能解决的问题安装流程1:新建虚拟机安装流程2:配置虚拟机安装流程3:安装虚拟机系统安装流程4:设置ubuntu相关版本virtualbox使用VirtualBox官网下载的6.1.34r150636版。ubuntu使用清华大学开源软件镜像站下载的1804

计算机毕业设计 基于SSM+Vue的农业信息管理系统的设计与实现 Java实战项目 附源码+文档+视频讲解

博主介绍:✌从事软件开发10年之余,专注于Java技术领域、Python人工智能及数据挖掘、小程序项目开发和Android项目开发等。CSDN、掘金、华为云、InfoQ、阿里云等平台优质作者✌🍅文末获取源码联系🍅👇🏻精彩专栏推荐订阅👇🏻不然下次找不到哟————————————————计算机毕业设计题目《10

重构技战术(一)——通用型重构技巧

书接上回,重构从现在开始一文中我们讨论了重构的含义、意义以及时机,并说明了测试的重要性。从本文开始将介绍重构具体的技巧,首先登场的是一些通用型技巧。1提炼函数提炼函数应该是最常见的重构技巧。我们都不希望把一大堆东西塞在一个函数里,使得一个函数做了一大堆事,这样无论是阅读还是修改都会很累(我曾经在字节跳动就见过一个600

Spring Cloud Gateway快速入门(二)——断言工厂

文章目录前言1.什么是Gateway断言工厂2.为什么要使用断言2.1.调试和开发:2.2.防御性编程:2.3.文档和可读性:2.4.测试:3.常用的Gateway断言工厂3.1Path断言工厂3.2Method断言工厂3.3Header断言工厂3.4时间断言工厂4.自定义Gateway断言工厂5.使用Gateway断

代码随想录Day1 数组基础

本文详细说明和思路来源于:代码随想录视频讲解:手把手带你撕出正确的二分法|二分查找法|二分搜索法|LeetCode:704.二分查找_哔哩哔哩_bilibiliLeetcodeT704题目链接704.二分查找-力扣(LeetCode)题目概述1:思路:1.因为数组是升序排列,且数组的元素不重复,所以使用二分查找法2.注

八、逻辑覆盖

不要让你的弱点妨碍你的优势。有两种互补的逻辑测试方法。第一种被称为语义逻辑覆盖,这种覆盖只考虑逻辑表达式的含义而不管表达式的构成。语义逻辑覆盖的优点在于即使谓词被写成一种表面不同但是具有等价语义的形式,依然可以产生相同的测试用例。第二种被称为语法逻辑覆盖,这种覆盖专门根据逻辑表达式的构成来生成测试用例。语法逻辑覆盖的优

bloaty

安装教程参考:https://github.com/google/bloatyBloaty是一个用于分析二进制文件大小的工具,它可以深入分析二进制文件,使用自定义的ELF、DWARF和Mach-O解析器,将二进制文件的每个字节准确地归因于生成它的符号或编译单元。以下是一些使用Bloaty的基本步骤:安装Bloaty:你

【C++】STL详解(六)—— list的模拟实现

​​📝个人主页:@Sherry的成长之路🏠学习社区:Sherry的成长之路(个人社区)📖专栏链接:C++学习🎯长路漫漫浩浩,万事皆有期待上一篇博客:【C++】STL详解(五)——list的介绍及使用文章目录list的三个类及其成员函数接口总览结点类的模拟实现构造函数迭代器类的模拟实现迭代器类存在的意义迭代器类的

[Qt/C/C++]JSON和程序发布

文章摘于爱编程的大丙文章目录1.JSON1.1Json数组1.2Json对象1.3注意事项2.Qt中JSON操作2.1QJsonValue2.2QJsonObject2.3QJsonArray2.4QJsonDocument2.5举例2.5.1写文件2.5.2读文件3.cjson库的使用3.1cJSON结构体3.2cJ

华为OD机考算法题:分积木

目录题目部分解读与分析代码实现题目部分题目分积木难度难题目说明Solo和koko是两兄弟,妈妈给了他们一大堆积木,每块积木上都有自己的重量。现在他们想要将这些积木分成两堆。哥哥Solo负责分配,弟弟koko要求两个人获得的积木总重量“相等”(根据Koko的逻辑),个数可以不同,不然就会哭,但koko只会先将两个数转成二

Linux 系统目录结构 & 终端

系统目录结构Linux或Unix操作系统中,所有文件和目录呈一个以根节点为始的倒置的树状结构。文件系统的最顶层是根目录,用/来表示根目录。在根目录之下的既可以是目录,也可以是文件,而每一个目录中又可以包含子目录文件。如此,就构成了一个庞大的文件系统。在命令窗口下输入命令:ls/,显示根目录下的文件:树状目录结构:目录解

热文推荐