Kazumi icon indicating copy to clipboard operation
Kazumi copied to clipboard

实现番剧下载

Open 6713lyp opened this issue 1 year ago • 12 comments

issue 内容

亲爱的作者大大,个人认为这个软件的番剧页面太过空旷,看起来总觉得不太好看。所以我想是否可以通过使用bangumi或其他网站来直接看到作品的详细信息。 另外我觉得可以添加一些BT源如蜜柑计划番剧花园nyaa等,因为很多动漫网站都会压缩画质,直接用BT画质会更好。 还有就是请问下载功能什么时候能上线呢。

提交前确认

  • [X] issue 列表中,没有我的新功能需求 / 问题

6713lyp avatar Oct 18 '24 12:10 6713lyp

Bangumi 集成在 #159 中追踪

BT源没有计划

下载功能在此 Issue 里追踪,有进展我会在这里更新

Predidit avatar Oct 18 '24 13:10 Predidit

想催更😊,大佬这个功能有新进展了吗

zifeiyue avatar Mar 21 '25 07:03 zifeiyue

这个功能目前主要的障碍是我们想实现完整的视频文件下载,这样可以自由地在设备间拷贝与分享。

但是大部分视频源提供的是 ts 视频片段文件,单集番剧会对应数十个片段文件,这样跨设备分享与拷贝几乎是不可能的。

我们需要重新编码视频片段文件为完整的视频文件,但这受限于移动端的性能而非常缓慢。

根据骁龙8Gen3上的测试结果,20分钟的番剧大概需要约5分钟完全转码且全程需要吃满 CPU ,这种体验是不能接收的。

当我取得进展会在这里更新。

Predidit avatar Mar 21 '25 07:03 Predidit

个人一点意见哈,移动端可以先实现下载ts离线播放、弹幕显示等其他功能正常使用;PC端性能强一点,在此基础上可以考虑做ts合并。毕竟移动端分享的需求没那么大,PC有导出功能,我个人觉得就够了,甚至没有对我也不影响,主要的使用场景就是通勤路上想看番+弹幕。 目前我个人是有网的情况下,用Kazumi,无网情况用提前下载好的视频+弹弹play加载弹幕看。。。

zifeiyue avatar Mar 21 '25 08:03 zifeiyue

还有就是我个人对视频格式不太了解,ts文件只能重新编码吗?可以像多个视频文件,整合合并到一个MKV文件吗,这种形式应该不需要那么高性能

zifeiyue avatar Mar 21 '25 08:03 zifeiyue

可以直接合并,但是可能会出现一些莫名其妙的问题,因为很多第三方站点的 hls 流不是那么标准。

直接合并有些播放器会播放不了或是播放到特定时间卡住。

Predidit avatar Mar 21 '25 08:03 Predidit

其实不用合并ts片段,直接用播放器打开m3u8文件即可按顺序播放ts片段(之前的dm共和国等动漫软件很多就是这样做的)这样就算是很多ts片段也能实现移动端下载后的观看,至于拷贝和分享,如果是传到另一台手机,也是老方法直接点击m3u8观看,如果是pc,可以用户自己用ffmpeg或者格式工厂这类软件合并

lingjueding233 avatar Jul 02 '25 13:07 lingjueding233

@Predidit 我也发表下个人意见哈。我赞同优先实现本地缓存(视频+弹幕),我觉得分享功能和本地缓存功能耦合度并不高,可以分开实现,不该相互阻塞。而且本地缓存是很多视听类app标配,优先级应该更高。

关于转移完整视频文件的需求,如果想转到其他设备上观看,不如直接在那个设备上缓存,应该比转码快;如果是为了在无网环境下分享,可以考虑app内开个本地流媒体服务器,让其他设备直接串流或缓存(也比转码快,同时还支持使用第三方播放器);如果是为了囤资源,大概会选BT或其他资源质量更高的途径吧;如果用户一定要在一个看番app里得到完整视频文件……那就告知用户转码成本,他愿意忍受就给他转,或者给个合并教程,授人以渔,仁至义尽了。

tentme avatar Sep 07 '25 14:09 tentme

我这边是经常因为莫名其妙的网络原因遇到播放卡顿的情况,但是现在播放器可以查看视频源网址。我这边是通过网址在IDM上把视频下下来看,但这样就没有弹幕和超分了,我觉得可以直接加个能选择本地视频源播放的功能。这样应该会比应用内下载简单很多?

WhiteMu01 avatar Sep 13 '25 14:09 WhiteMu01

根据骁龙8Gen3上的测试结果,20分钟的番剧大概需要约5分钟完全转码且全程需要吃满 CPU ,这种体验是不能接收的。

我有点好奇这是用什么方法实现的转码。我在研究mpv编译参数的时候意识到目前 media-kit 在编译 FFmpeg 的时候没有带上 libx264 ,如果带上 libx264 编译或许可以实现使用 mpv 进行 hls 流下载 mp4,不过我还没测试过是否能用

ErBWs avatar Sep 23 '25 13:09 ErBWs

@ErBWs

所有的现代移动GPU都没有内置硬件编码加速,只有硬件解码加速,即使是沉迷多媒体的 Apple 也是这样,所以我们并不需要 libx264

mpv 命令行可以将视频合并并转码输出为文件

类似于

mpv "https://example.com/example.m3u8" -o archieve.mp4

Predidit avatar Sep 23 '25 13:09 Predidit

mpv "https://example.com/example.m3u8" -o archieve.mp4

我看到的也是这个方法,那看来这个功能还得继续停滞

ErBWs avatar Sep 23 '25 14:09 ErBWs