AUMediaPlayer 3.0.0

AUMediaPlayer 3.0.0

测试测试版
Lang语言 Obj-CObjective C
许可证 MIT
发布上次发布2015 年 12 月

Lukasz Kasperek 维护。



用法

要运行示例项目,克隆存储库,然后首先从 Example 目录运行 pod install

功能

  • 音频播放(本地文件和网络流)
  • 视频播放(本地文件和网络流)
  • Chromecast 流
  • 下载和存储媒体文件(如果本地文件可用,则自动从本地文件播放)
  • 基于 KVO 的便捷播放信息显示机制
  • 随机播放
  • 重复队列(或无限循环播放一首曲目...)
  • 带内置中断(例如电话)管理功能的后台播放
  • 在锁定屏幕上显示媒体信息
  • 锁定屏幕控件

AUMediaPlayer 是一个允许音频和视频播放的库,包括从网络流和本地文件。它具有您可能期望的所有常见功能,如队列、随机播放、重复播放。它基于 KVO 具有便捷的进度观察机制。它自动设置锁定屏幕显示的媒体信息,并支持锁定屏幕控件。它还管理中断。还包括库对象。它允许下载和存储媒体。之后,它们会自动从本地文件播放。

从版本 3.0 开始,它还允许您从 AUMediaLibrary 流式传输曲目到 Chromecast。

AUMediaPlayer 头文件中包含注释掉的代码片段,允许您快速设置整个播放机制。还包括示例项目。

alt tag

一些基本方法

AUMediaPlayer 类

播放项目

- (void)playItem:(id<AUMediaItem>)item error:(NSError * __autoreleasing *)error;

播放队列

- (void)playItemQueue:(id<AUMediaItemCollection>)collection error:(NSError * __autoreleasing *)error;

从当前队列播放另一项

- (void)playItemFromCurrentQueueAtIndex:(NSUInteger)index;
- (BOOL)tryPlayingItemFromCurrentQueue:(id<AUMediaItem>)item;

控制播放

- (void)play;
- (void)pause;
- (void)stop;
- (void)playNext;
- (void)playPrevious;

跳转到指定时间点(值从 0 到 1)

- (void)seekToMoment:(double)moment;

设置随机播放和重复选项

- (void)setShuffleOn:(BOOL)shuffle;
- (void)setRepeatMode:(AUMediaRepeatMode)repeat;
- (void)toggleRepeatMode;

AUMediaLibrary 类

下载

- (void *)downloadItem:(id<AUMediaItem>)item;
- (void)cancelDownloadForItem:(id<AUMediaItem>)item;
- (NSProgress *)progressObjectForItem:(id<AUMediaItem>)item;
- (void)downloadItemCollection:(id<AUMediaItemCollection>)collection;

检查状态

- (BOOL)itemIsDownloaded:(id<AUMediaItem>)item;
- (BOOL)itemCollectionIsDownloaded:(id<AUMediaItemCollection>)collection;

获取所有项目或特定类别(音频或视频)的项目

- (NSArray *)downloadingItems;
- (NSDictionary *)allExistingItems;
- (NSDictionary *)existingItemsForType:(AUMediaType)type;

删除项目

- (void)removeItemFromLibrary:(id<AUMediaItem>)item error:(NSError * __autoreleasing*)error;
- (void)removeCollectionFromLibrary:(id<AUMediaItemCollection>)collecion error:(NSError * __autoreleasing*)error;
- (void)cleanLibraryError:(NSError * __autoreleasing*)error;

要求

AUMediaPlayers 需要 ARC。部署目标:iOS7。需要 AFNetworking 依赖项。

安装

贡献

感谢AppUnite和@piotrbernad,他们主要编写了库类。

作者

lukasz.kasperek,[email protected]

许可证

AUMediaPlayer可在MIT许可证下使用。详细信息请参阅LICENSE文件。