MP4 转 TXT 项目与 M3U8 下载脚本
项目背景
在当今信息社会,视频学习已成为一种重要的知识获取方式。然而,许多用户在观看视频的过程中,效率往往低于预期。为了提升学习效率,我们决定开发一个将 MP4 视频转换为 TXT 文稿的项目。此外,很多视频在微信网页上播放,无法直接下载,主要采用 M3U8 格式进行流式传输。这促使我们寻找解决方案。
项目目的
- 提升学习效率:通过将视频转换为文本,用户可以直接获取文稿内容,提高学习效率。
- 实现资源下载:针对 M3U8 格式的微信视频,通过特定的脚本实现下载功能。
解决方案
- 针对问题一:MP4 转 TXT 的项目
我们在 GitHub 上新建了一个项目,名为 mp4-to-txt-using-ffmpeg-wenet。该项目旨在提供一种高效的方式,将 MP4 视频内容提取为 TXT 文稿。项目中包括详细的 README 文档,帮助用户顺利使用工具。2024.10.28 更新:此项目使用pipeline方案的 funasr 替换了单个 wenet 模型,识别准确率更高。
- 针对问题二:下载 M3U8 视频
为了解决微信网页中 M3U8 视频无法直接下载的问题,我们编写了一段 shell 脚本。该脚本使用 FFmpeg 工具能够下载 M3U8 视频流。以下是脚本的代码:
#!/bin/bash
urls=(
"https://xxx" # 在此处替换为视频的真实 URL
"https://xxx" # 可以添加更多视频链接
)
for ((i=0; i<${#urls[@]}; i++)); do
# 计算文件名,从0开始编号
file_num=$((i))
file_name="${file_num}.mp4"
# 使用ffmpeg下载并转换(注意:这里假设ffmpeg可以直接处理.m3u8)
# 如果.m3u8是一个HLS播放列表,你可能需要额外的步骤来合并片段
ffmpeg -i "${urls[$i]}" -c copy "${file_name}"
# 输出文件已下载的信息
echo "已下载: ${file_name}"
done
使用说明
替换 URL:在脚本中的 urls 数组中,将 "https://xxx" 替换为实际的 M3U8 视频链接。若有多个视频,可以继续按此格式追加链接。
查找 M3U8 URL:
将微信视频网页复制到 Chrome 浏览器中。
按 F12 打开开发者工具,切换至“网络”选项卡。
按 F5 刷新页面,然后在过滤栏中输入 m3u8 以检索相关报文。
找到对应的 M3U8 报文,在其头部中查看 GET 请求的 URL。
运行脚本:确保 FFmpeg 已安装,然后在终端中运行该脚本,等待下载完成。
总结
此方案有效解决了视频学习效率低下的问题,以及无法直接下载微信网页中的 M3U8 视频的问题。希望该项目能够帮助更多学习者轻松获取所需信息,有效提升学习效率。如有疑问,请参考 GitHub 项目中的详细文档或评论联系。