多媒体-音频文件播放

http://note.youdao.com/noteshare?id=f57471a430763742109d339e44d0e14f

1、sock

网络上的两个程序通过一个双向的通信连接实现数据的交换,这个连接的一端称为一个socket。通常也称作"套接字",用于描述IP地址和端口,可以用来实现不同虚拟机或不同计算机之间的通信。提供服务时打开一个Socket,并绑定到一个端口上,不同的端口对应于不同的服务。一般分为客户端和服务端。

客户端顺序:Socket -> bind -> connect -> send -> close

服务端顺序:socket -> bind -> listen -> while(true) accept ->do while  recv -> close

 

注意:

1)两边都要引入头文件,用C的写法。分别/提供socket函数及数据结构、定义数据结构、提供IP地址转换函数。

2)memset 内存初始化,没有此步易出现野指针。 memset(&addr, 0, sizeof(addr));//sizeof函数功能:计算数据空间的字节数

 

 

//

//  ViewController.m

//  多媒体-

//

//  Created by DC018 on 16/8/29.

//  Copyright © 2016 DC018. All rights reserved.

//

#import <AudioToolbox/AudioToolbox.h>

#import <AVFoundation/AVFoundation.h>

#import "ViewController.h"

 

@interface ViewController ()

@property(nonatomic,strong)AVAudioPlayer *audio;

 

@end

 

@implementation ViewController

void Paly(SystemSoundID sound,void *music){

    NSLog(@"==================");

}

- (void)viewDidLoad {

    [super viewDidLoad];

    //音频播放

    //引入相关文件路径

    NSString *str=[[NSBundle mainBundle]pathForResource:@"duanxin7.caf" ofType:nil];

    //通过文件路径获取URL

    NSURL *url=[NSURL fileURLWithPath:str];

    //通过URL获取soundID

    SystemSoundID soundID=0;

 

    

    AudioServicesCreateSystemSoundID((__bridge CFURLRef)(url), &soundID);

    //开始播放

    AudioServicesPlaySystemSound(soundID);

    //播放完成后调用一个函数来完成某些事情

    AudioServicesAddSystemSoundCompletion(soundID, NULLNULLPalyNULL);

    

 

    //音乐播放

    //引入相关文件路径

    NSString *musicStr=[[NSBundle mainBundle]pathForResource:@"第一夫人.mp3" ofType:nil];

     //通过文件路径获取URL

    NSURL *musicURL=[NSURL fileURLWithPath:musicStr];

    //创建AVAudioPlayer对象

    _audio=[[AVAudioPlayer alloc]initWithContentsOfURL:musicURL error:nil];

    //设置循环次数(-1为无限循环)

    _audio.numberOfLoops=0;

    //加载到缓存

    [_audio prepareToPlay];

    UIButton *musicBut=[[UIButton alloc]initWithFrame:CGRectMake(30506040)];

    [musicBut setTitle:@"播放" forState:UIControlStateNormal];

    musicBut.backgroundColor=[UIColor blueColor];

    [musicBut addTarget:self action:@selector(play) forControlEvents:UIControlEventTouchUpInside];

    [self.view addSubview:musicBut];   

}

-(void)play{

 //开始播放

    [_audio play];

    NSLog(@"+++++++++++++");

}

@end

 

 

转载于:https://my.oschina.net/u/2893301/blog/739471

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值