估计是因为版权的问题,目前市面上没有一个用着顺手的从视频网站下载视频、音频的工具,考虑自己动手做一个。
主界面非常简陋,目前重点实现了功能,后续有时间再进一步做优化。
目前支持央视、YouTube的视频下载,为了契合我的播客频道,下载的内容会自动拆分为视频文件和音频文件。因为最近正在追两个剧:白夜追凶和无证之罪,周末试试能不能把优酷和爱奇艺的下载搞一下。

喜马拉雅的音频下载比较简单,平台通过json来进行数据的交互,直接读取出音频的真实地址和音频标题,启动异步下载并将文件保存为标题文件。

央视的视频网站提供了各种格式的数据下载,为了清晰度选了最高清晰度的文件下载,ts文件是分段构成的,开始的时候考虑通过插件进行视频文件的合并,后来发现在下载的过程中直接通过二进制数据追加写入即可构成一个完整的视频,下载的视频清晰度非常高。后来发现采取这种方法拆分出来的音频文件的文件信息不正确,在一些播放器上会显示长度只有10分钟,虽然超过后会继续播放,但是导致音频的续播功能失效掉,因为视频没有问题,该问题暂时留在后面再进行解决。

成功的实现了YouTube视频的下载,因为YouTube使用的字幕格式并非传统播放器支持的模式,因此除了获取字幕的真实位置进行读取之外,对格式变换为srt格式,实现电脑、手机、电视盒子的播放支持。

之前接触不多,整理格式的才发现srt的字幕文件,蛮有php的风格,简单易读,容错性非常高。

网友评论