zoukankan      html  css  js  c++  java
  • 简单播放音频

      最近做一个项目,有一个小功能是播放音频,以前没有做过音频,于是在网上找了很多demo,但是没有想要的,然后自己去研究一个官网文档,自己也随意写了一个demo,本地播放与网络播放就是url上的差别,其他基本上一致

    //本地播放

    #import "LocationViewController.h"

    #import <AVFoundation/AVFoundation.h>

     

    @interface LocationViewController ()

     

    /* 播放器 */

    @property (nonatomic, strong) AVPlayer *player;

     

    @end

     

    @implementation LocationViewController

     

    - (void)viewDidLoad {

        [super viewDidLoad];

        self.view.backgroundColor = [UIColor whiteColor];

    }

     

    #pragma mark - 懒加载

    - (AVPlayer *)player

    {

        if (!_player) {

            //1.创建单乐资源

            NSURL *url = [[NSBundle mainBundle] URLForResource:@"14945107.mp3" withExtension:nil];

            

            AVPlayerItem *playerItem = [AVPlayerItem playerItemWithURL:url];

            

            //创建播放器

            //        _player = [AVPlayer playerWithURL:url]; //这个不能改变音乐的动态

            _player = [AVPlayer playerWithPlayerItem:playerItem];//可以改变音乐的动态

            

        }

        return _player;

    }

     

    - (void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event

    {

        [self.player play];

        

    //    //切换另外一首音乐

    //    AVPlayerItem *nextPlayItem = [AVPlayerItem playerItemWithURL:nil];

    //    [self.player replaceCurrentItemWithPlayerItem:nextPlayItem];

    }

     

     

    //网络播放

     

    #import "NetworkMusicViewController.h"

    #import <AVFoundation/AVFoundation.h>

     

    @interface NetworkMusicViewController ()

     

    /* 播放器 */

    @property (nonatomic, strong) AVPlayer *player;

     

     

    @end

     

    @implementation NetworkMusicViewController

     

    - (void)viewDidLoad {

        [super viewDidLoad];

        self.view.backgroundColor = [UIColor whiteColor];

    }

     

    - (AVPlayer *)player

    {

        if (!_player) {

            //1.创建音乐资源

            NSURL *url = [NSURL URLWithString:@"http://wvoice.spriteapp.cn/voice/2015/0824/55dafc15020d9.mp3"];

            

            AVPlayerItem *playerItem = [AVPlayerItem playerItemWithURL:url];

            

            //2.创建播放器

            _player = [AVPlayer playerWithPlayerItem:playerItem];

        }

        return _player;

    }

     

    - (void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event

    {

        [self.player play];

    }

  • 相关阅读:
    Linux 下如何查看一个组内的有哪些用户
    Linux下查看用户列表
    用pureftpd+pureDB虚拟用户,建立一个简单安全(不需要数据库支持)的linux ftp站
    pure-ftp中如何设置匿名帐号,自定义匿名帐号访问指定目录
    PUTTY中永久更改字体大小
    Pure-ftpd 如何配置多用户,且A用户具有上传下载权限,B用户只有下载权限?
    windows10访问ftp中文乱码怎么办?
    WPF DynamicDataDisplay.dll 下载
    C# windows presentation foundation 项目中不支持Application
    c# NDP472-KB4054530-x86-x64-AllOS-CHS下载
  • 原文地址:https://www.cnblogs.com/ljj-Andrew-519/p/7639134.html
Copyright © 2011-2022 走看看