Closed libregd closed 2 years ago
下载 TED 演讲,可以使用 youtube-dl 从 YouTube 下载 最新演讲的 mkv 格式视频,好像在 YouTube 上有字幕的视频下载下来的格式就是 MKV 格式的。
我明天写一个教程,从 YouTube 下载 MKV 格式的视频。
你想要加一个听写功能?在抄写的基础上加一个听写也挺简单的。
从 TED 官网(没有被封锁)下载的 MP4 文件就封装了很多种语言的字幕,可以写一个工具把 MP4 转换成 MKV ,或者写一个教程教用户使用 FFmpeg 把 MP4 转换成 MKV。
show all format video about that youtube url
# successful
youtube-dl -F --proxy socks5://127.0.0.1:[port] https://www.youtube.com/watch?v=eIho2S0ZahI
only webm
andmp4
,deleted -F
could download the file that default format is mp4
download but sametime recode it to mkv format
// failed, mp4 too.
youtube-dl --recode-video mkv --proxy socks5://127.0.0.1:[prot] https://www.youtube.com/watch?v=eIho2S0ZahI
show all own subtitles format
# successful
youtube-dl --list-subs --proxy socks5://127.0.0.1:[port] https://www.youtube.com/watch?v=eIho2S0ZahI
only support vtt, ttml, srv3, srv2, srv1
format, unfortunately, not srt/ass
format,
add --white-sub
to download subtitles that add--sub-lang zh-CN,en
to choose Chinese and English
# successful
youtube-dl --write-sub --sub-lang zh-CN,en --proxy socks5://127.0.0.1:[port] https://www.youtube.com/watch?v=eIho2S0ZahI
change vtt to srt
# successful.
ffmpeg -i Treasure-eIho2S0ZahI.en.vtt Treasure-eIho2S0ZahI.en.srt
# simply
ffmpeg -i input.vtt output.srt
use youtube-dl download video from TED.com
# failed
youtube-dl https://www.ted.com/talks/allyson_felix_an_olympic_champion_s_mindset_for_overcoming_fear
ERROR: Unable to extract info json; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type youtube-dl -U to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
use ffmpeg extract sub from mp4 that download on TED.com ,
# successful
ffmpeg -i 2022-allyson-felix-001-5000k.mp4 infile.srt
use ffmpeg change mp4 to mkv
# failed
ffmpeg -i 2022-allyson-felix-001-5000k.mp4 -i infile.srt -c copy -c:s mov_text 2022-allyson-felix-001-5000k.mkv
下载 YouTube 视频使用这个命令,会下载英语字幕(会把字幕转换成 srt), 和MKV 封装格式的视频(里面没有字幕)
youtube-dl.exe --sub-lang en --convert-subs srt --write-sub URL
把字幕和视频合并到一个 MKV 文件
ffmpeg -i video.mkv -i en.srt -c copy output.mkv
提取 TED MP4 文件里的英语字幕
ffmpeg -i video.mp4 en.srt
使用 FFmpeg 合并从 TED 官网下载的视频和从视频提取出来的字幕和使用这个命令,
ffmpeg -i video.mp4 -i en.srt output.mkv
暂时不推荐使用这个命令合并 从 TED 官网下载的视频,因为 TED 的 MP4 文件里有 ASS 字幕,现在程序有一个 bug (正在想办法解决),只要 MKV 文件里有 ASS 字幕程序就会崩溃。可以先从 YouTube 下载 TED 视频,等修复了bug,再从官网下载。
根据上面的前面两个命令解决了, 没有mkv的话用后面两个命令也能逐步获得。不愧是专业的。
然后是如图的新问题, 当按Ctrl+Shift+Z
的时候会播放语音,我是4k,27寸显示屏, win10系统仅设置了125%的放大率,这个截图是长度完全就是显示屏的长度。
看软件的话,已经从最下方的滚动条看得出来是一个比较能够展示全部内容的窗口宽度。
00:00:34.323
会不会有点多余?感觉放着没啥用?批量改成1-1001,倒是可以计数一下今天写了多少句.....字幕抄写的话,计算错误是没有意义的,但是统计上能排上用处的好像就是进度。Ctrl+Shift+Z
用户自己按,就是因为只听一遍很可能是不够的,不然你就会做到左边的开关列表了,但又不太好按,enter又用来换行了,那么是否可以考虑一下F1-F12 这种单个按键?tab全程切换配合enter已经可以全程全键盘了,但是使用tab的问题是,当你写了两个单词想听一下tab切到并enter收听后,倒回去就得重新写......鼠标也是,唯一可以想写哪句写哪句的办法,有没有可能引入方向键,实现全键盘操作。
但是同时,又会播放一下视频,但是这个视频又是一个相对于软件窗口的绝对定位,不能我鼠标移动给他挪一个位置固定(类似web视频小窗口)也就是说,我必须把软件放到屏幕左边才能看到视频,如果我把软件挪到右边,那么这个视频就会消失,所以我不是很懂到底是想不想让我看视频.....
视频播放器应该在播放按钮的右侧,这是一个 bug。
抄写字幕的宽度可以调整
字幕的开始时间是一个遗留的设计(最开始的时候还不能自动保存当前的位置,要手动拉滚动条,拉到特定的时间点),也可以删除。
英语听力是挺重要的,可以在现在的基础上增加一个听写模式,没有输入之前整个页面是空白的,先播放视频(不显示字幕),然后用户输入字幕,输入完以后正常显示,正在输入的行的样式和现在的抄写模式差不多。
播放视频不是真的让你看视频,如果你是抄写电影字幕或电视剧字幕,你之前肯定要先看一遍熟悉剧情。然后抄写的时候,播放视频,那一句话会自动激活很多语境信息的。
视频播放的快捷键不好改,从 MKV 生成的词库,每个单词最多匹配 3 条字幕,这 3 条字幕的播放快捷键 分别是 Ctrl+Shift+Z
、Ctrl+Shift+X
、Ctrl+Shift+C
, 如果要改抄写字幕的快捷键,记忆单词的快捷键可能也要跟着改。
关于视频播放只播放一小段,你找一部电影,先看一遍,再试着抄写,就能感觉到继续播放视频是不必要的。 对于 TED 这里知识密集型的视频,可以加一个鼠标检测,如果有鼠标在视频播放器里面,就继续播放,没有就停止。
https://github.com/tangshimin/qwerty-learner-desktop/issues/9#issuecomment-1125301539: 这一点赞同,没有必要做检测,我一开始还以为你是抽取了音频直接播放,没想到还做了片段展示,是好功能👍
https://github.com/tangshimin/qwerty-learner-desktop/issues/9#issuecomment-1125290836: 我用欧路词典搜了一下,小写的连续两个dd,ss,tt,rr,gg,hh,jj,是没有英文单词的。不太严格的话,vv 也没有。这些在键盘输入检测同时录入就有一定的检测可行性了.....
F1-F12 为啥不能用呢?web端我能理解,因为F5直接一波刷新,F10-F12 唤起 inspect,桌面版也有这样的困境?
快捷键 F1 - F12, 我很少用,最近才开始频繁使用 F1 截图。或许可以把视频播放的快捷键改成 Ctrl + B
、Ctrl + N
、 Ctrl + M
, 键盘音效快捷键要改,速度快捷键也要改。击键音效的快捷键使用频率很低,改的话影响不会很大。
把缩放改成 100% 播放器就会回到播放按钮右侧
如果缩放不是 100% ,记忆单词界面的视频播放器的位置和大小也会出问题。
https://github.com/tangshimin/qwerty-learner-desktop/issues/9#issuecomment-1125610407:
那这个不是问题,27寸用100% 对于健康坐姿来说有点小,不可能因为一个应用就改全部哈。现在这样也行,我能听就可以。
https://github.com/tangshimin/qwerty-learner-desktop/issues/9#issuecomment-1125578635:
这个倒不是我个人习惯用F1-F12 , 我截图、更改系统音量都是鼠标点点点。而是需要配合2-3个按键来触发一次短暂的1s-2s左右的音频播放,操作成本上太高了,这是一个非常高频的操作。
能用一个按键解决是最合理的。哪怕这个按键稍微有一点点远,我一开始设想的是数字键,这样往上扒拉一下4-9 是最好摁的。但是字幕可能录入的时候会有输入 比如 $.6456 ,就没提。
Ctrl + J 这个快捷键就挺好的,使用频率最高,B、N、M 距离 J 很近。
现在可以支持抄写文本和 mp3 + 字幕了
这个感觉每个文件都比较大,但是格式是合理的,因为只下srt的话,没有天然发音的音频效果大打折扣,我对本款软件的期待是英语学习软件。 但是也有一点新问题:
mkv 格式会导致听写内容的受限
那么需求就变成了,希望可以多两个点: