• iOS 播放30s内的短音频


    /
    //  ViewController.h
    //  播放短音频
    //
    //  ViewController.m
    //  播放短音频
    //
    //  Created by 王耀 on 16/3/30.
    //  Copyright © 2016年 Mgs. All rights reserved.
    //
    
    #import "ViewController.h"
    
    @interface ViewController ()
    
    @end
    
    @implementation ViewController
    
    - (void)viewDidLoad
    {
        [super viewDidLoad];
        
    }
    - (IBAction)startPlay:(UIButton *)sender
    {
        [self playSoundEffect:@"shake.wav"];
    }
    /**
     *  播放音效文件
     *
     *  @param name 音频文件名称
     */
    -(void)playSoundEffect:(NSString *)name
    {
        NSString *audioFile=[[NSBundle mainBundle] pathForResource:name ofType:nil];
        NSURL *fileUrl=[NSURL fileURLWithPath:audioFile];
        //1.获得系统声音ID
        SystemSoundID soundID=0;
        /**
         * inFileUrl:音频文件url
         * outSystemSoundID:声音id(此函数会将音效文件加入到系统音频服务中并返回一个长整形ID)
         */
        AudioServicesCreateSystemSoundID((__bridge CFURLRef)(fileUrl), &soundID);
        //如果需要在播放完之后执行某些操作,可以调用如下方法注册一个播放完成回调函数
        AudioServicesAddSystemSoundCompletion(soundID, NULL, NULL, soundCompleteCallback, NULL);
        //2.播放音频
        AudioServicesPlaySystemSound(soundID);//播放音效
        //    AudioServicesPlayAlertSound(soundID);//播放音效并震动
    }
    /**
     *  播放完成回调函数
     *
     *  @param soundID    系统声音ID
     *  @param clientData 回调时传递的数据
     */
    void soundCompleteCallback(SystemSoundID soundID,void * clientData)
    {
        NSLog(@"播放完成...");
    }
    
    
    @end
    
    
    
    //  Copyright © 2016年 Mgs. All rights reserved.
    //
    
    #import <UIKit/UIKit.h>
    #import <AudioToolbox/AudioToolbox.h>
    @interface ViewController : UIViewController
    
    
    @end

      需要导入AudioToolbox.framework框架

  • 相关阅读:
    sqlserver内存释放
    Windows任务管理器中内存使用、虚拟内存区别及与页面文件的关系
    GetMessage
    String.Format(string, arg0)中sring格式
    C#基础--之数据类型
    C# Socket
    C# 对象 序列化 XML
    C# Monitoring-network
    Nginx 网址
    WinSCP 连接 Ubuntu 拒绝的问题
  • 原文地址:https://www.cnblogs.com/Mgs1991/p/5337709.html
Copyright © 2020-2023  润新知