iOS-VLCKit实现仿网易云音乐播放音乐

前言

最近做项目遇到需要播放音频的功能,通过查找资料,最终选择了VLCKit来实现。
VLC - 一款功能强大的全平台播放器,几乎支持所有格式的音频、视频文件的播放
集成方式
1、 按照wiki的说明去自己编译:[https://wiki.videolan.org/iOSCompile]
2、cocoapods方式
通过pos search MobileVLCKit去搜索相关的库,会发现有好几个库,我最终选择了MobileVLCKit-unstable(因为这个库更新的多,而且还在不时的更新)

pod 'MobileVLCKit-unstable', '~> 3.0.0a36'

说明

本Demo是根据VLCKit播放库写的仿网易云播放界面。

主要实现的功能有:

* 播放网络音频、歌曲
* 歌词滚动、音量控制、歌曲切换
* 设置循环类型、上一曲、下一曲、喜欢歌曲等
* 锁屏控制(播放、暂停、喜欢、上一曲、下一曲、播放条拖动)
* 耳机线控(播放、暂停、上一曲、下一曲、快进、快退)
* 通知监听(插拔耳机、播放打断)

不足:

* 不能获取缓冲进度(播放库的问题)
* 暂停后继续播放声音不准确(播放库的问题)
* airplay暂未支持

demo中的音乐文件来自百度音乐,仅供学习使用,请勿在商业中使用

部分功能的主要实现

1、歌词解析

+ (NSArray *)lyricParaseWithLyricString:(NSString *)lyricString {
    // 1. 以\n分割歌词
    NSArray *linesArray = [lyricString componentsSeparatedByString:@"\n"];

    // 2. 创建模型数组
    NSMutableArray *modelArray = [NSMutableArray new];

    // 3. 开始解析
    for (NSString *line in linesArray) {
        // 正则表达式 [00:01.78], \\ 转义,  @"\\[\\d{2}:\\d{2}.\\d{2}\\]"
        NSString *pattern = @"\\[[0-9][0-9]:[0-9][0-9].[0-9][0-9]\\]";

        NSRegularExpression *regular = [NSRegularExpression regularExpressionWithPattern:pattern options:NSRegularExpressionCaseInsensitive error:nil];
        // 进行匹配
        NSArray *matche
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值