iOS 使用科大訊飛技術實現語音轉文字(語音聽寫)

本文主要介紹的是利用科大訊飛技術實現語音轉文字的功能(語音聽寫).

首先,註冊訊飛賬號,申請APPID

然後,下載科大訊飛SDK將開發工具包中lib目錄下的iflyMSC.framework添加到新建工程中.

按下圖添加SDK所需要的iOS(除iflyMSC.framework,iflyMSC.framework是拖進去的)


接着,在appDelegate中引入頭文件

#import “iflyMSC/IFlyRecognizerViewDelegate.h”  

#import “iflyMSC/IFlyRecognizerView.h”  


寫上代碼

  NSString *appid = @"********";//自己申請的appId

  NSString *initString = [NSString stringWithFormat:@"appid=%@",appid];

  [IFlySpeechUtility createUtility:initString];


在相應的viewController裏:

遵守協議<IFlyRecognizerViewDelegate>

@property (nonatomic,strong)IFlyRecognizerView *iflyRecognizerView;


- (void)viewDidLoad {

    [super viewDidLoad];

    

    self.iflyRecognizerView = [[IFlyRecognizerView alloc]initWithCenter:self.view.center];

    self.iflyRecognizerView.delegate = self;

    [self.view addSubview:self.iflyRecognizerView];

    [self.iflyRecognizerView setParameter: @"iat" forKey:[IFlySpeechConstant IFLY_DOMAIN]];

    //asr_audio_path保存錄音文件名,默認目錄是documents

    [self.iflyRecognizerView setParameter: @"asrview.pcm" forKey:[IFlySpeechConstant ASR_AUDIO_PATH]];

    //設置返回的數據格式爲默認plain

    [self.iflyRecognizerView setParameter:@"plain" forKey:[IFlySpeechConstant RESULT_TYPE]];


    [self startListenning:self.iflyRecognizerView];//可以建一個按鈕,點擊按鈕調用此方法

}


- (void)startListenning:(id)sender{

    [self.iflyRecognizerView start];

    NSLog(@"開始識別");

}

//返回數據處理

- (void)onResult:(NSArray *)resultArray isLast:(BOOL)isLast

{

    NSMutableString *result = [NSMutableString new];

    NSDictionary *dic = [resultArray objectAtIndex:0];

    NSLog(@"DIC:%@",dic);

    for (NSString *key in dic) {

        [result appendFormat:@"%@",key];

    }

//把相應的控件賦值爲result.例如:label.text = result;

}


- (void)onError:(IFlySpeechError *)error

{

    

}

這樣就實現了利用科大訊飛語音轉文字的功能.



發佈了26 篇原創文章 · 獲贊 2 · 訪問量 8萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章