zoukankan      html  css  js  c++  java
  • IOS开发-视频,音频,录音简单总结

    /*****

     * 1. 视频播放

     *

     *  @格式:mp4 mov m4v m2v 3gp 3g2

     *

     *  @系统框架使用:#import <MediaPlayer/MediaPlayer.h>

       不仅可以播放本地视频 也可以直接播放网络视频

     MPMoviePlayerController 播放视频的类,这个类比较特殊,有Controller的一些属性,但又不完全是控制器

     有两点需要注意:

     1.MPMoviePlayerController 上面播放视频 的view 需要给它坐标

     2.还需要添加在 某个视图上面

     ******/

     

    MPMoviePlayerController播放时也需要有一个URL

    1.设置视频是否循环播放:repeatMode

    2.是否允许分享到airPlay:allowsAirPlay

    3.是否使用lairPlay:airPlayVideoActive

    4.如果播放的是网络视频的话 是否需要自动继续播放:shouldAutoplay

    5.获得视频加载状态:loadState

    6.视频的播放状态:playbackState

    7.设置视频显示样式:controlStyle

     

    还有一些通知,如MPMoviePlayerPlaybackStateDidChangeNotification通过通知可以检测播放状态发生改变,

    *如果前面设置了controlStyle,后面设置的setFullscreen 将不会起作用

    2.

    AVAudioPlayer音频播放类

    AVAudioRecorder录音类

    录音的初始化和属性和音频播放大同小异

     

    共有的有:

    音频:

    1.开始:play  2.暂停:pause 3.停止:stop 预加载:prepareToPlay

    4.代理AVAudioRecorderDelegate 如:播放结束时触发- (void)audioPlayerDidFinishPlaying:(AVAudioPlayer *)player successfully:(BOOL)flag

     

    录音:

    1.开始:record 2.暂停:pause 3.停止:stop 预加载:prepareToRecord

    4.代理AVAudioPlayerDelegate 如:录音结束时触发(void)audioRecorderDidFinishRecording:(AVAudioRecorder *)recorder successfully:(BOOL)flag

     

    拓展:

    1.进度 是按百分比计算(0到1之间)

     progressView.progress = 0.0;

     

    2.NSFileManager文件管理类 也是一个单例

    NSFileManager *manager = [NSFileManager defaultManager];

    其中有一个重要常用的方法

    查询并取出一个文件下所有子文件:subpathsAtPath

    如:查询临时文件下的子文件:NSArray *list = [manager subpathsAtPath:NSTemporaryDirectory()];

    3.例子

    //1.音频文件的url路径
    18     NSURL *url=[[NSBundle mainBundle]URLForResource:@"风吹麦浪.mp3" withExtension:nil];
         
    20     //2.创建播放器
    21     self.player=[[AVAudioPlayer alloc]initWithContentsOfURL:[NSUURL fileURLWithPath:url]
     error:nil];
    23 //3.缓冲 24 [self.player prepareToPlay]; 29 //开始播放/继续播放 30 [self.player play];
    34 //暂停 35 [self.player pause];
    36 //停止
    37 //注意:如果点击了stop,那么一定要让播放器重新创建,否则会出现问题哦
    38 [self.player stop];

     

  • 相关阅读:
    SMO学习笔记(五)——附加数据库
    SMO学习笔记(二)——还原(恢复)篇之完整恢复
    加深C# 中字符串前加@符号理解以及使用~~
    Oracle Sys用户用默认密码change_on_install 无法登录的问题(错误代码:ORA28009)
    Reflector for .NET 下载问题
    SQLSERVER拆分字符串的函数(表值函数)
    AjaxPro使用Session出错(AjaxPro "Session"引发了"System.NullReferenceException"类型的异常)
    ASP.NET Web页面(.aspx)添加用户控件(.ascx)无显示的问题
    公积金贷款与商业贷款的区别(在废打印纸中的意外收获... :))
    SMO学习笔记(三)——效验数据库备份文件
  • 原文地址:https://www.cnblogs.com/chenhongios/p/4776041.html
Copyright © 2011-2022 走看看