最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

IOS開發(fā)實現錄音功能

 更新時間:2016年03月16日 10:13:02   投稿:hebedich  
本文給大家分享的是一個IOS開發(fā)中實現錄音功能的實例,并簡單給大家解析一下,有需要的小伙伴可以參考下

導入框架:

#import <AVFoundation/AVFoundation.h>

聲明全局變量:

@interface ViewController ()<AVAudioRecorderDelegate>
{
  AVAudioRecorder *audioRecorder;
}
@end


在ViewDidLoad中:

 UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom];
  button.frame = CGRectMake(100, 100, 100, 100);
  [button setTitle:@"TICK" forState:UIControlStateNormal];
  button.backgroundColor = [UIColor brownColor];
  [button addTarget:self action:@selector(startAudioRecoder:) forControlEvents:UIControlEventTouchUpInside];
  [self.view addSubview:button];

按鈕的觸發(fā)事件

- (void)startAudioRecoder:(UIButton *)sender{
  sender.selected = !sender.selected;
  if (sender.selected != YES) {
    [audioRecorder stop];
    return;
  }
  
  //  URL是本地的URL AVAudioRecorder需要一個存儲的路徑
  NSString *name = [NSString stringWithFormat:@"%d.aiff",(int)[NSDate date].timeIntervalSince1970];
  
  NSString *path = [NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES).firstObject stringByAppendingPathComponent:name];
  NSError *error;
  //  錄音機 初始化
  audioRecorder = [[AVAudioRecorder alloc]initWithURL:[NSURL fileURLWithPath:path] settings:@{AVNumberOfChannelsKey:@2,AVSampleRateKey:@44100,AVLinearPCMBitDepthKey:@32,AVEncoderAudioQualityKey:@(AVAudioQualityMax),AVEncoderBitRateKey:@128000} error:&error];
  [audioRecorder prepareToRecord];
  [audioRecorder record];
  audioRecorder.delegate = self;
  /*
   1.AVNumberOfChannelsKey 通道數 通常為雙聲道 值2
   2.AVSampleRateKey 采樣率 單位HZ 通常設置成44100 也就是44.1k
   3.AVLinearPCMBitDepthKey 比特率 8 16 24 32
   4.AVEncoderAudioQualityKey 聲音質量
       ① AVAudioQualityMin  = 0, 最小的質量
       ② AVAudioQualityLow  = 0x20, 比較低的質量
       ③ AVAudioQualityMedium = 0x40, 中間的質量
       ④ AVAudioQualityHigh  = 0x60,高的質量
       ⑤ AVAudioQualityMax  = 0x7F 最好的質量
   5.AVEncoderBitRateKey 音頻編碼的比特率 單位Kbps 傳輸的速率 一般設置128000 也就是128kbps
   
   */
  
  
  
  NSLog(@"%@",path);

}

代理方法:

- (void)audioRecorderDidFinishRecording:(AVAudioRecorder *)recorder successfully:(BOOL)flag{
  NSLog(@"錄音結束");
//  文件操作的類
 NSFileManager *manger = [NSFileManager defaultManager];

  NSString *path = [NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES) lastObject];
//  獲得當前文件的所有子文件subpathsAtPath
  NSArray *pathlList = [manger subpathsAtPath:path];

//  需要只獲得錄音文件
  NSMutableArray *audioPathList = [NSMutableArray array];
//  遍歷所有這個文件夾下的子文件
  for (NSString *audioPath in pathlList) {
//    通過對比文件的延展名(擴展名 尾綴) 來區(qū)分是不是錄音文件
    if ([audioPath.pathExtension isEqualToString:@"aiff"]) {
//      把篩選出來的文件放到數組中
      [audioPathList addObject:audioPath];
    }
  }
  
  NSLog(@"%@",audioPathList);
  
}

相關文章

  • iOS10適配問題點總結

    iOS10適配問題點總結

    升級到ios10遇到一系列問題,今天小編抽時間吧iOS10適配問題點整理分享給大家,感興趣的朋友可以參考下
    2016-09-09
  • iOS將相冊中圖片上傳至服務器的方法

    iOS將相冊中圖片上傳至服務器的方法

    這篇文章主要為大家詳細介紹了iOS將相冊中圖片上傳至服務器的方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-05-05
  • iOS自定義日期、時間、城市選擇器實例代碼

    iOS自定義日期、時間、城市選擇器實例代碼

    這篇文章主要介紹了iOS自定義日期、時間、城市選擇器實例代碼,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-05-05
  • 總結IOS界面間跳轉的幾種方法

    總結IOS界面間跳轉的幾種方法

    前段時間被問到界面間的跳轉有幾種方式?想不到說的竟有點含糊其辭,于是就想總結一下。有句話說的好,“前人種樹,后人乘涼”,目前作為一個乘涼者,我也希望能種一些樹木,為代碼世界營造一份清新。好了,話不多說,進入主題。
    2016-08-08
  • iOS實現視頻壓縮上傳實例代碼

    iOS實現視頻壓縮上傳實例代碼

    本篇文章主要介紹了iOS實現視頻壓縮上傳實例代碼,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-04-04
  • IOS 數據存儲詳解及實例代碼

    IOS 數據存儲詳解及實例代碼

    這篇文章主要介紹了IOS 數據存儲詳解及實例代碼的相關資料,需要的朋友可以參考下
    2017-02-02
  • iOS實現頂部標簽式導航欄及下拉分類菜單

    iOS實現頂部標簽式導航欄及下拉分類菜單

    這篇文章主要為大家詳細介紹了iOS實現頂部標簽式導航欄及下拉分類菜單的相關資料,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-03-03
  • IOS開發(fā)-多線程隊列測試代碼

    IOS開發(fā)-多線程隊列測試代碼

    這篇文章中,我不會說多線程是什么、線程和進程的區(qū)別、多線程有什么用,當然我也不會說什么是串行、什么是并行等問題,這些我們應該都知道的。
    2017-09-09
  • iOS中模態(tài)Model視圖跳轉和Push視圖跳轉的需求實現方法

    iOS中模態(tài)Model視圖跳轉和Push視圖跳轉的需求實現方法

    這篇文章主要介紹了iOS中模態(tài)Model視圖跳轉和Push視圖跳轉的需求實現,非常不錯,具有參考借鑒價值,需要的朋友可以參考下
    2016-12-12
  • iOS WKWebview 白屏檢測實現的示例

    iOS WKWebview 白屏檢測實現的示例

    這篇文章主要介紹了iOS WKWebview 白屏檢測實現的示例,幫助大家更好的進行ios開發(fā),感興趣的朋友可以了解下
    2020-10-10

最新評論

吕梁市| 鄂尔多斯市| 临夏县| 宁晋县| 象州县| 溧水县| 崇礼县| 泌阳县| 澄江县| 荥阳市| 冷水江市| 宣威市| 瑞丽市| 新建县| 托克逊县| 万载县| 若羌县| 广灵县| 陕西省| 惠安县| 吉林市| 河北区| 沙坪坝区| 焦作市| 长阳| 六枝特区| 偏关县| 峨山| 万源市| 孙吴县| 临朐县| 且末县| 南开区| 霞浦县| 剑河县| 天柱县| 望谟县| 怀化市| 南雄市| 肇源县| 会同县|