要运行示例项目,克隆存储库,然后首先从 Example 目录运行 pod install
。
AUMediaPlayer 是一个允许音频和视频播放的库,包括从网络流和本地文件。它具有您可能期望的所有常见功能,如队列、随机播放、重复播放。它基于 KVO 具有便捷的进度观察机制。它自动设置锁定屏幕显示的媒体信息,并支持锁定屏幕控件。它还管理中断。还包括库对象。它允许下载和存储媒体。之后,它们会自动从本地文件播放。
从版本 3.0 开始,它还允许您从 AUMediaLibrary 流式传输曲目到 Chromecast。
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;
下载
- (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文件。