亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 系統 > iOS > 正文

iOS實現錄音轉碼MP3及轉碼BASE64上傳示例

2020-07-26 02:56:18
字體:
來源:轉載
供稿:網友

iOS 錄音轉碼MP3及轉碼BASE64上傳

一,開始錄音

NSLog(@"開始錄音");[self startRecord];- (void)startRecord{  //刪除上次生成的文件,保留最新文件  NSFileManager *fileManager = [NSFileManager defaultManager];  if ([NSTemporaryDirectory() stringByAppendingString:@"myselfRecord.mp3"]) {    [fileManager removeItemAtPath:[NSTemporaryDirectory() stringByAppendingString:@"myselfRecord.mp3"] error:nil];  }  if ([NSTemporaryDirectory() stringByAppendingString:@"selfRecord.wav"]) {    [fileManager removeItemAtPath:[NSTemporaryDirectory() stringByAppendingString:@"selfRecord.wav"] error:nil];  }    //開始錄音  //錄音設置  NSMutableDictionary *recordSetting = [[NSMutableDictionary alloc] init];  //設置錄音格式 AVFormatIDKey==kAudioFormatLinearPCM  [recordSetting setValue:[NSNumber numberWithInt:kAudioFormatLinearPCM] forKey:AVFormatIDKey];  //設置錄音采樣率(Hz) 如:AVSampleRateKey==8000/44100/96000(影響音頻的質量), 采樣率必須要設為11025才能使轉化成mp3格式后不會失真  [recordSetting setValue:[NSNumber numberWithFloat:11025.0] forKey:AVSampleRateKey];  //錄音通道數 1 或 2 ,要轉換成mp3格式必須為雙通道  [recordSetting setValue:[NSNumber numberWithInt:2] forKey:AVNumberOfChannelsKey];  //線性采樣位數 8、16、24、32  [recordSetting setValue:[NSNumber numberWithInt:16] forKey:AVLinearPCMBitDepthKey];  //錄音的質量  [recordSetting setValue:[NSNumber numberWithInt:AVAudioQualityHigh] forKey:AVEncoderAudioQualityKey];    //存儲錄音文件  recordUrl = [NSURL URLWithString:[NSTemporaryDirectory() stringByAppendingString:@"selfRecord.wav"]];    //初始化  audioRecorder = [[AVAudioRecorder alloc] initWithURL:recordUrl settings:recordSetting error:nil];  //開啟音量檢測  audioRecorder.meteringEnabled = YES;  audioSession = [AVAudioSession sharedInstance];//得到AVAudioSession單例對象  if (![audioRecorder isRecording]) {    [audioSession setCategory:AVAudioSessionCategoryPlayAndRecord error:nil];//設置類別,表示該應用同時支持播放和錄音    [audioSession setActive:YES error:nil];//啟動音頻會話管理,此時會阻斷后臺音樂的播放.        [audioRecorder prepareToRecord];    [audioRecorder peakPowerForChannel:0.0];    [audioRecorder record];  }}

二,停止錄音

[self endRecord]; - (void)endRecord {   [audioRecorder stop];             //錄音停止   [audioSession setActive:NO error:nil];     //一定要在錄音停止以后再關閉音頻會話管理(否則會報錯),此時會延續后臺音樂播放 }

三,轉碼成MP3

- (void)transformCAFToMP3 {  mp3FilePath = [NSURL URLWithString:[NSTemporaryDirectory() stringByAppendingString:@"myselfRecord.mp3"]];    @try {    int read, write;        FILE *pcm = fopen([[recordUrl absoluteString] cStringUsingEncoding:1], "rb");  //source 被轉換的音頻文件位置    fseek(pcm, 4*1024, SEEK_CUR);                          //skip file header    FILE *mp3 = fopen([[mp3FilePath absoluteString] cStringUsingEncoding:1], "wb"); //output 輸出生成的Mp3文件位置        const int PCM_SIZE = 8192;    const int MP3_SIZE = 8192;    short int pcm_buffer[PCM_SIZE*2];    unsigned char mp3_buffer[MP3_SIZE];        lame_t lame = lame_init();    lame_set_in_samplerate(lame, 11025.0);    lame_set_VBR(lame, vbr_default);    lame_init_params(lame);        do {      read = (int)fread(pcm_buffer, 2*sizeof(short int), PCM_SIZE, pcm);      if (read == 0)        write = lame_encode_flush(lame, mp3_buffer, MP3_SIZE);      else        write = lame_encode_buffer_interleaved(lame, pcm_buffer, read, mp3_buffer, MP3_SIZE);            fwrite(mp3_buffer, write, 1, mp3);          } while (read != 0);        lame_close(lame);    fclose(mp3);    fclose(pcm);  }  @catch (NSException *exception) {    NSLog(@"%@",[exception description]);  }  @finally {    NSLog(@"MP3生成成功");    base64Str = [self mp3ToBASE64];  }}

四,上傳需要轉碼BASE64

 - (NSString *)mp3ToBASE64{   NSData *mp3Data = [NSData dataWithContentsOfFile:[NSTemporaryDirectory() stringByAppendingString:@"myselfRecord.mp3"]];   NSString *_encodedImageStr = [mp3Data base64Encoding];   NSLog(@"===Encoded image:/n%@", _encodedImageStr);   return _encodedImageStr; }

備注:其中可以直接生成的.caf  .wav    有壓縮的MP3需要轉格式,不能直接錄音生成

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
91精品国产高清久久久久久91| 欧美最猛性xxxxx免费| 欧美性xxxxx极品娇小| 久久精品一区中文字幕| 日韩黄色av网站| 中文字幕在线国产精品| 91美女片黄在线观| 国产精品一区二区女厕厕| 欧美小视频在线观看| 久久久久日韩精品久久久男男| 日韩久久精品电影| 欧美专区日韩视频| 青草热久免费精品视频| 亚洲综合自拍一区| 日韩精品久久久久久福利| 亚洲成成品网站| 欧美高清自拍一区| 日韩欧美aⅴ综合网站发布| 亚洲天堂免费观看| 精品中文字幕在线2019| 国产一区二区三区丝袜| 91精品久久久久久久久久另类| 伊人久久久久久久久久久久久| 亚洲第一在线视频| 日韩国产中文字幕| 国产有码一区二区| 亚洲一区中文字幕在线观看| 成人疯狂猛交xxx| 亚洲黄在线观看| 中文字幕欧美精品在线| 中文字幕综合在线| 亚洲精品一区av在线播放| 97视频国产在线| 色www亚洲国产张柏芝| 97久久精品人人澡人人爽缅北| 少妇高潮 亚洲精品| 日韩欧美成人精品| 国内精久久久久久久久久人| 宅男66日本亚洲欧美视频| 久久精品电影网站| 国产精品男女猛烈高潮激情| 日韩精品极品视频免费观看| 精品久久久久久中文字幕一区奶水| 亚洲人成亚洲人成在线观看| 精品人伦一区二区三区蜜桃网站| 成人激情综合网| 国产欧美久久久久久| 日韩中文字幕在线| 久久国产精品视频| 亚洲国产欧美在线成人app| 欧美美女操人视频| 亚洲色图偷窥自拍| 3344国产精品免费看| 91精品国产电影| 亚洲sss综合天堂久久| 午夜精品免费视频| 亚洲欧美日韩久久久久久| 欧美xxxx18性欧美| 欧洲s码亚洲m码精品一区| www亚洲欧美| 福利视频导航一区| 中文字幕日韩精品在线观看| 亚洲精品国产精品乱码不99按摩| 日av在线播放中文不卡| 国内精品久久久久久久| 欧美裸体xxxx极品少妇软件| 91性高湖久久久久久久久_久久99| 亚洲成人黄色网| 欧美裸体xxxx极品少妇| 亚洲第一中文字幕在线观看| 北条麻妃99精品青青久久| 亚洲一区二区少妇| 欧美亚洲国产视频| 国产99久久精品一区二区| 欧美高清第一页| 国产成人一区二区三区| 在线观看亚洲区| 久久久久久亚洲精品| 欧美性xxxx| 日韩经典一区二区三区| 亚洲精品福利资源站| 中文字幕精品网| 日韩精品视频在线观看免费| 欧美另类暴力丝袜| 精品国产美女在线| 国产主播欧美精品| 精品夜色国产国偷在线| 亚洲成人av在线播放| 欧美天堂在线观看| 国产精品亚洲аv天堂网| 欧美大成色www永久网站婷| 久久精品在线播放| 69视频在线播放| 精品综合久久久久久97| 91wwwcom在线观看| 欧美极度另类性三渗透| 这里只有精品视频| 136fldh精品导航福利| 久99久在线视频| 国产91精品久久久久久久| 色噜噜久久综合伊人一本| 欧美日韩亚洲精品一区二区三区| 国产精品久久久久久久久久久久久| 国产97在线播放| 国产综合久久久久久| 欧美精品videosex极品1| 精品露脸国产偷人在视频| 91av成人在线| 亚洲国语精品自产拍在线观看| 国产一区玩具在线观看| 国内精品久久久久影院 日本资源| 98精品国产高清在线xxxx天堂| 国产噜噜噜噜久久久久久久久| 91免费视频网站| 夜夜嗨av色一区二区不卡| 国产午夜精品一区二区三区| 免费成人高清视频| 九九九久久久久久| 亚洲欧美日韩视频一区| 一本色道久久综合狠狠躁篇的优点| 久久天天躁狠狠躁夜夜av| 欧美在线视频观看免费网站| 欧美一区二区大胆人体摄影专业网站| 97久久久久久| 亚洲视频在线免费看| 久久6精品影院| 欧美激情久久久久久| 日韩女优人人人人射在线视频| 欧美xxxx综合视频| 97在线精品视频| 色悠悠国产精品| 国产精品久久久久久久久久久不卡| 欧美日韩在线一区| 黑人巨大精品欧美一区二区三区| 亚洲国产欧美日韩精品| 亚洲一区二区日本| 这里只有精品视频在线| 国产精品免费福利| 国产一区二区三区毛片| 国产成人精品亚洲精品| 17婷婷久久www| 国产成人在线精品| 97国产真实伦对白精彩视频8| 欧洲成人在线视频| 久久久视频免费观看| 欧美在线一级va免费观看| 午夜精品在线观看| 亚洲精品自产拍| 国产视频亚洲精品| 91最新在线免费观看| 91精品国产综合久久香蕉的用户体验| 中文字幕在线看视频国产欧美| 亚洲福利视频网| 亚洲一区二区久久久| 国产精品视频网址| 久久久精品999| 宅男66日本亚洲欧美视频| 精品亚洲一区二区三区在线播放| 国产精品老牛影院在线观看| 69视频在线免费观看| 亚洲人成电影网| 一区二区三区www| 国产精品jizz在线观看麻豆| 一本大道亚洲视频|