You need to enable JavaScript to run this app.
导航

SDK快速入门

最近更新时间2023.11.13 14:43:15

首次发布时间2023.03.16 11:40:10

介绍

本文将从功能的选择、授权指引、demo入门到SDK集成,一文带你快速了解并接入sami sdk。

前置步骤
  1. 确定体验功能

点击链接,确定要体验的功能,授权申请环节需要明确要体验的功能。

  1. 获取授权信息

离线功能申请试用

离线功能授权(Android/IOS/Windows/Mac)需要Appkey和token方可使用测试,联系对应商务同学获取申请试用-火山引擎

备注:

  • 绑定自定义ApplicationID/BundleID的测试授权

    如果已经接入三方正式授权的其他SDK,且已经绑定明确ApplicationID/BundleID,修改其ApplicationID/BundleID时会造成其他三方SDK功能无法使用,或想使用绑定自己包名的授权文件进行测试,可先与对应商务同学进行沟通并阐述具体理由,申请绑定用户自定义的ApplicationID/BundleID进行测试,需注意以下几点:

    • 仅能绑定所需的测试功能

    • 仅能提供4周及以内的绑定测试期

    • 请勿使用自定义绑定ApplicationID/BundleID 的临时测试授权在appstore上线,若产生的功能过期风险,造成线上损失,需自行承担

在线功能申请试用

  1. 完成火山引擎账号注册、实名认证并获取账户的access_key、secret_key;开通对应API能力并创建应用:创建应用--音频技术-火山引擎

  2. 通过服务鉴权-获取Token--音频技术-火山引擎实时生成token。使用SDK请求服务需要appkey和token两个参数;

注意

备注:如果同时需要在线和离线功能,需要同时走两个途径的申请授权

  1. 下载demo

打开链接下载demo;目前demo内置了"全功能SDK",线上功能都可以体验到,并且包含了多个平台的例子。可以根据下文的介绍跑通对应的demo。

demo入门

简介

目录介绍

目录介绍
android_java_demoandroid平台,调用Java接口;
android_native_demoandroid平台,调用C/C++接口;
ios_oc_demoios平台,调用Objective-C接口;
native_demowin/mac平台,调用C/C++接口
dep_libs依赖库,主要是网络库,在线能力需要依赖
res资源文件,demo需要用到的所有模型和配置文件都在这个目录,客户集成到真实产品app中按照接口文档的接受获取对应功能的资源
test_filedemo中用到一些测试音频

[mac/windows] C/C++ demo

简介

目录介绍

(base) ➜  sami_core_tob_demo git:(update_param) ✗ tree -L 4
├── dep_libs (依赖库)
│    └── ttnet (网络库)
├── native_demo
│    ├── cmake          # cmake导入sdk和依赖库
│    ├── script         # 编译脚本和启动运行脚本
│    ├── sdk            # sdk放置目录
│    │    └── mac_sdk
│    │        ├── inc
│    │        └── lib
│    │    └── win_sdk
│    │        ├── inc
│    │        └── lib
│    └── src                    # 代码资源
│         ├── common            # 基础部分:授权和辅助函数
│         ├── dump              # 基础工具-调试工具-dump音频
│         ├── aec_v2            # 音频降噪与增强能立集-回声消除-v2版本
│         ├── aec_v3            # 音频降噪与增强能立集-回声消除-v3版本
│         ├── denoise_v2        # 音频降噪与增强能立集-降噪/去混响-v2版本
│         ├── denoise_v3        # 音频降噪与增强能立集-降噪/去混响/去啸叫-v3版本
│         ├── agc               # 音频降噪与增强能立集-自动增益
│         ├── effect            # 音频处理与变声能力集-预置音效/单音效处理器
│         ├── extractor         # 音频处理与变声能力集-音高检测/语音活性检测/音量检测/响度检测/延迟检测/节拍检测能力集
│         ├── karaoke           # 智能K歌解决方案
│         ├── loudness_normal   # 音量均衡能力集
│         ├── thirdpart         # demo层面依赖的第三方库
│         ├── tts               # 语音合成能力集
├── res (demo使用到的模型、配置文件)
│    ├── preset                 # 音频处理与变声能力集-预置音效功能配置文件
│    └── model                  # 包含了上述能力的需要用到的所有模型,根据使用功能介绍自行判断需要使用的模型
└── test_file (demo需要用到的测试音频文件)

环境要求

平台要求

mac

windows

编译测试

  1. 修改授权

修改native_demo/src/common/define.h中的TOKENAPPKEY

  1. 编译
cd native_demo/
# Mac
./script/build/build_mac.sh 

# Win
./script/build/build_win.sh
  1. 运行demo

见功能介绍

功能介绍

注意

注意:win在git bash终端运行脚本,测试内容详见对应脚本脚本内部的说明

能力集功能接口文档介绍

基础工具

dump音频简介

  • 源码 native_demo/src/dump/*

  • 测试脚本 ./script/test/test_for_dump.sh

音频降噪与增强能力集

回声消除

  • 源码

    native_demo/src/aec_v2/*
      native_demo/src/aec_v3/*

  • 测试脚本 ./script/test/test_for_aec_v2.sh ./script/test/test_for_aec_v3.sh

降噪/去混响-V2
降噪/去混响/去啸叫-V3

  • 源码

    native_demo/src/denoise_v2/*
      native_demo/src/denoise_v3/*

  • 测试脚本 ./script/test/test_for_denoise_v2.sh ./script/test/test_for_denoise_v3.sh

自动增益

  • 源码 native_demo/src/agc/*

  • 测试脚本 ./script/test/test_for_agc.sh

音频处理与变声能力集

预置音效
单音效处理器

  • 源码:native_demo/src/effect/*

  • 测试脚本 ./script/test/test_for_effect.sh

音高检测
语音活性检测
音量检测
响度检测
延迟检测

  • 源码:native_demo/src/extractor/*

  • 测试脚本 ./script/test/test_for_extractor.sh

节拍检测能力集

流式节拍检测
非流式节拍检测

  • 源码 native_demo/src/extractor/*

  • 测试脚本 ./script/test/test_for_extractor.sh

音量均衡能力集

预处理音量均衡
实时音量均衡

  • 源码 native_demo/src/loudness_normal/*

  • 测试脚本 ./script/test/test_for_loudness_normal.sh

语音合成

流式语音合成
非流式语音合成

api接口:

  • 源码 native_demo/src/tts/*

  • 测试脚本./script/test/test_for_tts.sh

[android] C/C++ demo

简介

实现音效、降噪部分能力,主要用于示例怎么在native层集成使用sami的能力,详细调用可以参考native_demo

  1. 目录介绍:

android C/C++ demo链接的sdk位置为 (以arm64-v8a为例):sami_core_tob_demo/native_demo/sdk/android_sdk/lib/arm64-v8a/libbdaudioeffect.so

(base) ➜  sami_core_tob_demo git:(update_param) ✗ tree -L 4
├── android_native_demo
│    └── android_project (android工程)
├── dep_libs (依赖库)
│    ├── ttnet (网络库)
├── native_demo 
│    └── sdk
│    │    └── android_sdk
│    │          ├── inc
│    │          └── lib
├── res (demo使用到的模型、配置文件)             
│    ├── preset                            
│    └── model
└── test_file (demo需要用到的测试音频文件)
  1. 重要信息

android native demo使用了native demo目录中的编译静态库,如下图中的common_libaec_v2_lib等,然后通过native-lib.cpp调用到对应静态库的内容

环境要求

android studio IDE(下载链接:developer.android.com
adb tools(下载链接:developer.android.com
cmake version >= 3.14 (下载链接:Installing CMake
ndk 建议使用 21.4.7075529,安装方法:

编译测试

  1. 授权更新

修改app/src/main/java/com/bytedance/android_native_demo/MainActivity.java中的appKeytoken

  1. 连接手机,确定手机adb链接正常,如下图步骤操作

  1. push资源文件和测试文件到手机
cd sami_core_tob_demo/android_native_demo
./adb_push.sh
  1. 测试功能

参考下文功能介绍一节

  1. 测试并拉取生成的音频
cd sami_core_tob_demo/android_native_demo
./adb_pull.sh

功能介绍

页面介绍

页面activity:
com.bytedance.android_native_demo.MainActivity
实现函数:
android_native_demo/android_project/app/src/main/cpp/native-lib.cpp


[android] Java demo

简介

  1. 目录介绍

sdk(aar格式)和资源文件存放在android_java_demo对应目录下,ttnet存放于上层目录dep_libs下

➜  sami_core_tob_demo git:(master) ✗ tree -L 4
├── android_java_demo
│   ├── android_project
│   └── sdk
│       └── android_sdk
│           └── audiosdk-tob.aar
├── dep_libs
│   └── ttnet (network lib)
├── res # (demo使用到的模型、配置文件)                  
│    ├── preset                            
│    └── model                             
└── test_file # (audio file for test)

android_java_demo/android_project目录

(base) ➜  android_project git:(feat/chenmanjia/use_audio_io) ✗ tree -L 11
 app
 ├── build.gradle #写明SDK等各种依赖
 └── src
     └── main
         ├── AndroidManifest.xml
         ├── java
         │   └── *  #为显示简洁,省略了包名目录com.bytedance.sami.audio
         │       └── demo
         │           ├── AssetsFileCopyWorker.java
         │           ├── FunctionHelper.java
         │           ├── HeadsetDeviceManager.kt  #耳机设备监听
         │           ├── MainActivity.java
         │           ├── audioformat
         │           │   └── AudioFormatCustom.java #音频格式结构体,用于编解码、播放录音
         │           ├── decoder                     #解码相关
         │           │   ├── DecoderBase.java
         │           │   ├── HwDecoder.java
         │           │   └── WavDecoder.java
         │           ├── encoder                     #wav编码
         │           │   └── WavEncoder.java
         │           ├── player                      #播放器
         │           │   └── Player.java
         │           ├── recoder                     #播放器
         │           │   └── Recorder.java
         │           ├── samicoreactivity            #相关的功能页面,具体见功能介绍
         │           │   ├── AECV2Activity.java
         │           │   ├── AECV3Activity.java
         │           │   ├── AGCActivity.java
         │           │   ├── BeatTrackingActivity.java
         │           │   ├── BeatTrackingOfflineActivity.java
         │           │   ├── DeNoiseDeReverbDeHowlingV3Activity.java
         │           │   ├── DenoiseV2Activity.java
         │           │   ├── KaraokeEditActivity.java
         │           │   ├── KaraokeRecordActivity.java
         │           │   ├── LoudNormActivity.java
         │           │   ├── LoudNormRealTimeActivity.java
         │           │   ├── PresetEffectProcessorActivity.java
         │           │   └── SignalEffectProcessorActivity.java
         │           ├── samicoredemo            #实现相关功能的主体主体逻辑
         │           │   ├── AECV2Demo.java
         │           │   ├── AECV3Demo.java
         │           │   ├── AGCDemo.java
         │           │   ├── DeNoiseDeReverbDeHowlingV3Demo.java
         │           │   ├── DenoiseV2Demo.java
         │           │   ├── ExtractorDemo.java
         │           │   ├── LoudNormDemo.java
         │           │   ├── LoudNormRealTimeDemo.java
         │           │   ├── NonStreamTTSTest.java
         │           │   ├── PresetEffectProcessorDemo.java
         │           │   ├── SAMIKaraokeEditDemo.java
         │           │   ├── SAMIKaraokeRecordDemo.java
         │           │   ├── SignalEffectProcessorDemo.java
         │           │   └── StreamTTSTest.java
         │           └── samicorehelper        #对SDK进行封装,使用更加便捷
         │               ├── SAMICoreAEC.java
         │               ├── SAMICoreAECV3.java
         │               ├── SAMICoreAEDSingDetection.java
         │               ├── SAMICoreAGC.java
         │               ├── SAMICoreDenoiseV2.java
         │               ├── SAMICoreExtractor.java
         │               ├── SAMICoreLoudNorm.java
         │               ├── SAMICoreLoudNormRealTime.java
         │               ├── SAMICoreMixToken.java
         │               ├── SAMICorePresetEffectProcessor.java
         │               └── SAMICoreSignalEffectProcessor.java
         └── res
             └── layout #页面UIxml

环境要求

android studio IDE(下载链接:developer.android.com

编译测试

  1. 更新授权信息

修改MainActivity.java中的appKeytoken

  1. 编译

功能介绍

音频降噪与增强能力集

功能接口文档页面介绍

降噪/去混响/去啸叫-v3

页面activity:
com.bytedance.sami.audio.demo.samicoreactivity.DeNoiseDeReverbDeHowlingV3Activity
具体功能类:
com.bytedance.sami.audio.demo.samicoredemo.DeNoiseDeReverbDeHowlingV3Demo

  • 功能介绍
    • 输入支持三种选择(内置音频、麦克风、自定义);选择自定义之后可以点击加载文件按钮选择文件,支持wav/mp3文件

    • 输出支持两种选择(保存文件、播放器);

    • 功能支持四个模型;模型介绍见:【Java】降噪/去混响/去啸叫-V3--音频技术-火山引擎

    • debug_dump_audio:用于展示调试阶段导出音频接口,用于在客户集成后,导出音频跟sami侧进行效果对齐。接口见: dump 音频简介

降噪/去混响-V2

推荐优先使用“降噪/去混响/去啸叫-v3”

回声消除-V3

页面activity:
com.bytedance.sami.audio.demo.samicoreactivity.AECV3Activity
具体功能类:
com.bytedance.sami.audio.demo.samicoredemo.AECV3Demo
sdk调用辅助类:
com.bytedance.sami.audio.demo.samicorehelper.SAMICoreAecV3

  • 功能介绍
    • 输入支持(内置音频);

    • 输出支持两种选择(保存文件、播放器);

    • 功能支持两个模型;模型介绍见:回声消除介绍--音频技术-火山引擎

    • debug_dump_audio:用于展示调试阶段导出音频接口,用于在客户集成后,导出音频跟sami侧进行效果对齐。接口见: dump 音频简介

回声消除-V2

推荐优先使用“回声消除-V3”

自动增益

页面activity:
com.bytedance.sami.audio.demo.samicoreactivity.AGCActivity
具体功能类:
com.bytedance.sami.audio.demo.samicoredemo.AGCDemo
sdk调用辅助类:
com.bytedance.sami.audio.demo.samicorehelper.SAMICoreAGC

  • 功能介绍
    • 输入支持三种选择(内置音频、麦克风、自定义);选择自定义之后可以点击加载文件按钮选择文件,支持wav/mp3文件

    • 输出支持两种选择(保存文件、播放器);

    • 参数调节仅支持在启动之前设置生效

音频处理与变声能力集

功能接口文档页面介绍

预置音效

页面activity:
com.bytedance.sami.audio.demo.samicoreactivity.PresetEffectProcessorActivity
具体功能类:
com.bytedance.sami.audio.demo.samicoredemo.PresetEffectProcessorDemo
sdk调用辅助类:
com.bytedance.sami.audio.demo.samicorehelper.SAMICorePresetEffectProcessor

  • 功能介绍
    • 输入支持三种选择(内置音频、麦克风、自定义);选择自定义之后可以点击加载文件按钮选择文件,支持wav/mp3文件;

    • 输出支持两种选择(保存文件、播放器);

    • 音色

单音效处理器

页面activity:
com.bytedance.sami.audio.demo.samicoreactivity.SignalEffectProcessorActivity
具体功能类:
com.bytedance.sami.audio.demo.samicoredemo.SignalEffectProcessorDemo
sdk调用辅助类:
com.bytedance.sami.audio.demo.samicorehelper.SAMICoreSignalEffectProcessor

  • 功能介绍
    • 以移调为例子实现功能的展示;其他算法接入类似;

    • 输入支持三种选择(内置音频、麦克风、自定义);选择自定义之后可以点击加载文件按钮选择文件,支持wav/mp3文件;

    • 输出支持两种选择(保存文件、播放器);

    • 参数支持在处理过程中更新;

节拍检测能力集

功能接口文档页面介绍

流式节拍检测

页面activity:
com.bytedance.sami.audio.demo.samicoreactivity.BeatTrackingActivity
具体功能类:
com.bytedance.sami.audio.demo.samicoredemo.ExtractorDemo
sdk调用辅助类:
com.bytedance.sami.audio.demo.samicorehelper.SAMICoreExtractor

  • 功能介绍
    • 提供了读取内置文件处理之后获取到节拍信息并保存到文件

非流式节拍检测

页面activity:
com.bytedance.sami.audio.demo.samicoreactivity.BeatTrackingOfflineActivity
具体功能类:
com.bytedance.sami.audio.demo.samicoredemo.ExtractorDemo
sdk调用辅助类:
com.bytedance.sami.audio.demo.samicorehelper.SAMICoreExtractor

  • 功能介绍
    • 提供了读取内置文件处理之后获取到节拍信息并保存到文件

音量均衡能力集

功能接口文档页面介绍

预处理音量均衡

页面activity:
com.bytedance.sami.audio.demo.samicoreactivity.BeatTrackingOfflineActivity
具体功能类:
com.bytedance.sami.audio.demo.samicoredemo.BeatTrackingOfflineDemo
sdk调用辅助类:
com.bytedance.sami.audio.demo.samicorehelper.SAMICoreBeatTrackingOffline

  • 功能介绍
    • 提供了读取内置文件处理之后并保存到新的音频文件

实时音量均衡

页面activity:
com.bytedance.sami.audio.demo.samicoreactivity.LoudNormRealTimeActivity
具体功能类:
com.bytedance.sami.audio.demo.samicoredemo.LoudNormRealTimeDemo
sdk调用辅助类:
com.bytedance.sami.audio.demo.samicorehelper.SAMICoreLoudNormRealTime

  • 功能介绍
    • 提供了读取内置文件处理之后并保存到新的音频文件

    • demo目前设置处理后音频文件的响度为-16dbfs

K歌解决方案

功能接口文档页面介绍

K歌解决方案

录制页
com.bytedance.sami.audio.demo.samicoreactivity.KaraokeRecordActivity
具体功能类:
com.bytedance.sami.audio.demo.samicoredemo.SAMIKaraokeRecordDemo

  • 功能介绍
    • 实现加载音频、歌词等物料信息,并实现录音并显示进度的粒子;K歌分数可以通过接口自行获取。

    • 体验过程:点击启动,唱歌一段时间后点击停止

编辑页
com.bytedance.sami.audio.demo.samicoreactivity.KaraokeEditActivity
具体功能类:
com.bytedance.sami.audio.demo.samicoredemo.SAMIKaraokeEditDemo

  • 功能介绍
    • 提供了加载上一步骤产生的音频和伴奏等物料,实现播放预览和导出的功能

    • 体验:点击启动,播放即可预览;


[ios] Objective-C demo

简介

  1. 目录介绍

sdk(.a格式)和资源文件存放在ios_oc_demo对应目录下,ttnet存放于上层目录dep_libs下

➜  sami_core_tob_demo git:(master) ✗ tree -L 4
├── ios_oc_demo
│   ├── ios_project
│   └── ios_sdk
│       ├── inc
│       └── lib
│           └── libbdaudioeffect.a
├── dep_libs
│   └── ttnet (network lib)
├── res (demo使用到的模型、配置文件)                  
│    ├── preset                            
│    └── model                             
└── test_file (audio file for test)

ios_oc_demo/SAMIAudioDemo目录

➜  ios_project git:(master) ✗ tree -L 11 SAMIAudioDemo
SAMIAudioDemo
├── app #存放与app启动相关类(main、AppDelegate)
├── help #实现相关功能的主体逻辑
│   ├── SAMICoreAecV2.h
│   ├── SAMICoreAecV2.m
│   ├── SAMICoreAecV3.h
│   ├── SAMICoreAecV3.m
│   ├── SAMICoreAgc.h
│   ├── SAMICoreAgc.m
│   ├── SAMICoreBase.h
│   ├── SAMICoreDenoiseV2.h
│   ├── SAMICoreDenoiseV2.m
│   ├── SAMICoreDenoiseV3.h
│   ├── SAMICoreDenoiseV3.m
│   ├── SAMICoreFunctionDefine.h
│   ├── SAMICoreKaraokeEditHelp.h
│   ├── SAMICoreKaraokeEditHelp.mm
│   ├── SAMICoreKaraokeRecordHelp.h
│   ├── SAMICoreKaraokeRecordHelp.mm
│   ├── SAMICoreLoudnorm.h
│   ├── SAMICoreLoudnorm.m
│   ├── SAMICoreNonStreamingBeatDetection.h
│   ├── SAMICoreNonStreamingBeatDetection.m
│   ├── SAMICoreNonStreamingTTS.h
│   ├── SAMICoreNonStreamingTTS.m
│   ├── SAMICorePresetEffect.h
│   ├── SAMICorePresetEffect.m
│   ├── SAMICoreRealTimeLoudnorm.h
│   ├── SAMICoreRealTimeLoudnorm.m
│   ├── SAMICoreSingleEffect.h
│   ├── SAMICoreSingleEffect.m
│   ├── SAMICoreStreamingBeatDetection.h
│   ├── SAMICoreStreamingBeatDetection.m
│   ├── SAMICoreStreamingTTS.h
│   ├── SAMICoreStreamingTTS.m
│   ├── SAMICoreTokenVerify.h
│   └── SAMICoreTokenVerify.m
├── res #存放sdk所需资源
├── utils #工具类
│   ├── AudioUnitBackend.h #播放器
│   ├── AudioUnitBackend.mm 
│   ├── CircleBuffer.h #循环队列,作为播放器与sdk之间的缓冲队列
│   ├── CircleBuffer.mm
│   ├── FilePlayer.h #文件播放器,封装上述播放器实现简易文件播放
│   └── FilePlayer.m 
├── view #相关的功能页面,具体见功能介绍
│   ├── MainViewController.h
│   ├── MainViewController.m
│   ├── SAMICoreAecV2ViewController.h
│   ├── SAMICoreAecV2ViewController.m
│   ├── SAMICoreAecV3ViewController.h
│   ├── SAMICoreAecV3ViewController.m
│   ├── SAMICoreAgcViewController.h
│   ├── SAMICoreAgcViewController.m
│   ├── SAMICoreDenoiseV2ViewController.h
│   ├── SAMICoreDenoiseV2ViewController.m
│   ├── SAMICoreDenoiseV3ViewController.h
│   ├── SAMICoreDenoiseV3ViewController.m
│   ├── SAMICoreKaraokeEditViewController.h
│   ├── SAMICoreKaraokeEditViewController.m
│   ├── SAMICoreKaraokeRecordViewController.h
│   ├── SAMICoreKaraokeRecordViewController.m
│   ├── SAMICoreLoudnormViewController.h
│   ├── SAMICoreLoudnormViewController.m
│   ├── SAMICoreNonStreamingBeatDetectionViewController.h
│   ├── SAMICoreNonStreamingBeatDetectionViewController.m
│   ├── SAMICoreNonStreamingTTSViewController.h
│   ├── SAMICoreNonStreamingTTSViewController.m
│   ├── SAMICorePresetEffectViewController.h
│   ├── SAMICorePresetEffectViewController.m
│   ├── SAMICoreRealTimeLoudnormViewController.h
│   ├── SAMICoreRealTimeLoudnormViewController.m
│   ├── SAMICoreSingleEffectViewController.h
│   ├── SAMICoreSingleEffectViewController.m
│   ├── SAMICoreStreamingBeatDectionViewController.m
│   ├── SAMICoreStreamingBeatDetectionViewController.h
│   ├── SAMICoreStreamingTTSViewController.h
│   ├── SAMICoreStreamingTTSViewController.m
│   └── utils_view
│       ├── InfoLabel.h
│       ├── InfoLabel.m
│       ├── SingleEffectParamView.h
│       └── SingleEffectParamView.m
└── view_res

环境要求

Xcode(App Store下载)

编译测试

  1. 更新授权信息

修改MainViewController.mm中的appkeytoken

  1. 编译

功能介绍

音频降噪与增强能力集

功能接口文档页面介绍

降噪/去混响/去啸叫-v3

页面viewController:
SAMICoreDenoiseV3ViewController
具体功能类:
SAMICoreDenoiseV3

  • 功能介绍
    • 输入支持三种选择(内置音频、上传文件、麦克风);选择上传文件之后可以点击浏览按钮选择文件,支持wav/mp3/aac等主流音频文件;

    • 输出支持两种选择(保存文件、播放器);

    • 功能支持四个模型;模型介绍见:降噪/去混响/去啸叫-V3版本--音频技术-火山引擎

    • dump开关:用于展示调试阶段导出音频接口,用于在客户集成后,导出音频跟sami侧进行效果对齐。接口见: dump 音频简介

降噪/去混响-V2

推荐优先使用“降噪/去混响/去啸叫-v3”

回声消除-V3

页面viewController:
SAMICoreAecV3ViewController
具体功能类:
SAMICoreAecV3

  • 功能介绍
    • 输入支持(内置音频);

    • 输出支持两种选择(保存文件、播放器);

    • 功能支持两个模型;模型介绍见:回声消除介绍--音频技术-火山引擎

    • dump开关:用于展示调试阶段导出音频接口,用于在客户集成后,导出音频跟sami侧进行效果对齐。接口见: dump 音频简介

回声消除-V2

推荐优先使用“回声消除-V3”

自动增益

页面viewController:
SAMICoreAgcViewController
具体功能类:
SAMICoreAgc

  • 功能介绍
    • 输入支持三种选择(内置音频、上传文件、麦克风);选择上传文件之后可以点击浏览按钮选择文件,支持wav/mp3/aac等主流音频文件;

    • 输出支持两种选择(保存文件、播放器);

    • 参数调节仅支持在启动之前设置生效

音频处理与变声能力集

功能接口文档页面介绍

预置音效

页面viewController:
SAMICorePresetEffectViewController
具体功能类:
SAMICorePresetEffect

  • 功能介绍
    • 输入支持三种选择(内置音频、上传文件、麦克风);选择上传文件之后可以点击浏览按钮选择文件,支持wav/mp3/aac等主流音频文件;

    • 输出支持两种选择(保存文件、播放器);

    • 音色

      • 支持在处理过程中切换音色

      • bypass为原声

单音效处理器

页面viewController:
SAMICoreSingleEffectViewController
具体功能类:
SAMICoreSingleEffect

  • 功能介绍
    • 进入页面时可选择体验的单音效类型

    • 输入支持三种选择(内置音频、上传文件、麦克风);选择上传文件之后可以点击浏览按钮选择文件,支持wav/mp3/aac等主流音频文件;

    • 输出支持两种选择(保存文件、播放器);

    • 参数支持在处理过程中更新;

节拍检测能力集

功能接口文档页面介绍

流式节拍检测

页面viewController:
SAMICoreStreamingBeatDetectionViewController
具体功能类:
SAMICoreStreamingBeatDetection

  • 功能介绍
    • 提供了读取内置文件处理之后获取到节拍信息并保存到文件

非流式节拍检测

页面viewController:
SAMICoreNonStreamingBeatDetectionViewController
具体功能类:
SAMICoreNonStreamingBeatDetection

  • 功能介绍
    • 提供了读取内置文件处理之后获取到节拍信息并保存到文件

音量均衡能力集

功能接口文档页面介绍

预处理音量均衡

页面viewController:
SAMICoreLoudnormViewController
具体功能类:
SAMICoreLoudnorm

  • 功能介绍
    • 提供了读取内置文件处理之后并保存到成新的音频文件

实时音量均衡

页面viewController:
SAMICoreRealTimeLoudnormViewController
具体功能类:
SAMICoreRealTimeLoudnorm

  • 功能介绍
    • 提供了读取内置文件处理之后并保存到成新的音频文件

    • demo目前设置处理后音频文件的响度为-16dbfs

K歌解决方案

功能接口文档页面介绍

K歌解决方案

录制页
SAMICoreKaraokeRecordViewController
具体功能类:
SAMICoreKaraokeRecordHelp

  • 功能介绍
    • 实现加载音频、歌词等物料信息,并实现录音并显示进度的粒子;K歌分数可以通过接口自行获取;可拖动进度条实时更新音调。

    • 体验过程:点击开始录制,唱歌一段时间后点击停止

编辑页
SAMICoreKaraokeEditViewController
具体功能类:
SAMICoreKaraokeEditHelp

  • 功能介绍
    • 提供了加载上一步骤产生的音频和伴奏等物料,实现播放预览和导出的功能

    • 体验:点击播放即可预览;

集成到正式产品

SDK&相关资源下载

  1. 打开链接根据功能确定SDK类型

根据功能列表找到要下载的sdk类别,目前有纯离线能力SDK、纯在线能力SDK、全功能(离线+在线)SDK

  1. 下载对应的SDK

根据实际需求下载对应平台的SDK

  1. 下载相关资源
  • 资源文件:所有官网涉及到的能力的模型或者配置文件在在资源文件中,客户下载后可以根据接口文件的介绍获取对应的文件。

  • 依赖库:如果使用在线能力需要依赖网络库,如果纯离线能力可以不用下载。

集成

集成指南:SDK集成指南--音频技术-火山引擎
参考集成指南完成SDK集成到业务APP工程中

FAQ

常见错误码 :SDK FAQ--音频技术-火山引擎