你的新功能建议是否牵扯到某个常见的问题? 你希望达到的效果 你能考虑到的可选实现方案 |
Liyongcong added the feature label
Liyongcong changed the title 是否可以支持m3u8加密和不加密视频下载 是否可以支持m3u8加密和不加密视频下载,以及下载后播放本地的m3u8视频
Owner
commented 11 days ago
是AES加密的吗? |
Author
commented 11 days ago
是的 … |
Owner
commented 11 days ago
AVPlayer 本身就支持的. 如果你想要边下边播, 可以配合这个库使用: https://github.com/changsanjiang/SJMediaCacheServer |
changsanjiang closed this
Author
commented 11 days ago
不是边下边播,是可以直接下载到本地后,找到本地的路径,在没有网的情况下也可以播放 … |
Owner
commented 11 days ago
本地m3u8一般是开个本地代理去播放的. 试试用这个库下载和播放吧 https://github.com/changsanjiang/SJM3U8Downloader |
Author
commented 11 days ago
好的,我试试,多谢,Github已关注 … |
Author
commented 11 days ago
用你刚发这个点击下载直接闪退http://new.storage.public.uy123.net/course/lnTvER-nR2uogYRy7R13lRKHrKFd.m3u8 … |
Owner
commented 8 days ago
Author
commented 8 days ago
好的,我再试试,谢谢 … |
Author
commented 8 days ago
你好,如果我想存储一些视频相关的信息,比如图片,视频URL,ID,视频title和视频subTitle,然后在另一个下载界面的控制器显示,该在哪个地方去扩展你的三方呢 … |
Owner
commented 8 days ago
#import "SJM3U8DownloadListItem.h"#import <objc/message.h>////// 添加自定义字段///@interface SJM3U8DownloadListItem (TestExtended)@property (nonatomic, copy, nullable) NSString *name;@property (nonatomic, copy, nullable) NSString *title;@end@implementation SJM3U8DownloadListItem (TestExtended) - (void)setName:(NSString *)name { objc_setAssociatedObject(self, @selector(name), name, OBJC_ASSOCIATION_RETAIN_NONATOMIC); } - (NSString *)name { return objc_getAssociatedObject(self, _cmd); } - (void)setTitle:(NSString *)title { objc_setAssociatedObject(self, @selector(title), title, OBJC_ASSOCIATION_RETAIN_NONATOMIC); } - (NSString *)title { return objc_getAssociatedObject(self, _cmd); }@end
NSString *url = nil; NSInteger idx = [SJM3U8DownloadListController.shared addItemWithUrl:url]; SJM3U8DownloadListItem *item = (id)[SJM3U8DownloadListController.shared itemAtIndex:idx]; item.delegate = self; item.name = @"asdfds"; // .. // .. item.title = @"adsafsd"; [SJM3U8DownloadListController.shared updateContentsForItemAtIndex:idx];
- (void)downloadItemStateDidChange:(SJM3U8DownloadListItem *)item { if ( item.state == SJDownloadStateFinished ) { // .. 保存到自己的数据库中 } } |
Author
commented 8 days ago
好的,明白了,还有一个问题,就是下载进度先后的问题,比如我在你这个列表下载了有进度比如10%,我想在另一个下载控制器页面也显示10%并且在下载控制器页面也实时更新这个下载进度,用你那个progress可以么 … |
Owner
commented 8 days ago
可以 |
Author
commented 8 days ago
我在那个地方可以打印出来你下载的ts片段存储的路径,以及整合ts片段然后通过本地服务器去播放,我想看看这学习下这个东西 … |