livelycode36 / markdown2potplayer

生成potplayer正在播放的视频回链到可以使用makrdown类型的笔记软件中,例如:obsidian、typora、 logseq、notion等等。Generate a backlink of the video being played by potplayer to a makrdown-type note program. examples: obsidian, typora, logseq, notion
MIT License
58 stars 8 forks source link

希望增加 回链写入当前字幕功能,并支持自定义字幕和回链的顺序 #22

Closed holduan closed 3 weeks ago

holduan commented 3 months ago

如题,pp 复制当前字幕到剪切板 的快捷键要自定义

image

livelycode36 commented 3 months ago

ok~安排!

复制当前字幕到剪切板 的快捷键要自定义 意思是

  1. 增加 回链写入当前字幕功能,并支持自定义字幕和回链的顺序
  2. 自定义 复制当前字幕到剪切板的快捷键
holduan commented 3 months ago

ok~安排!

复制当前字幕到剪切板 的快捷键要自定义 意思是

  1. 增加 回链写入当前字幕功能,并支持自定义字幕和回链的顺序
  2. 自定义 复制当前字幕到剪切板的快捷键

cool,第二点随意,能实现当前字幕写入到笔记就行 😋

livelycode36 commented 3 months ago

感冒了一周,真是难顶,弄的有点晚,哥们得空,试一试? 0.2.5-beta1

holduan commented 3 months ago

感冒了一周,真是难顶,弄的有点晚,哥们得空,试一试? 0.2.5-beta1

非常感谢,多谢了,已经可以用。有些修改建议,麻烦大佬看看:

  1. 时间戳和字幕的格式希望支持这样: [00:01:50](link) 字幕XXXX
  2. 独立的字幕回链模板,添加字幕不一定是必需的。

PS: 佬,注意多休息 ❤

livelycode36 commented 3 months ago

好像[00:01:50](link) 字幕XXXX image 这样搭配是可以做到这个效果的,你的意思是在 字幕模板中这样[{time}](link) 字幕xxx使用是吗? 还是像回链模板(Alt+G)这样的吗?

我感觉你这个功能像是 把srt这种字幕文件,转为 回链?

holduan commented 3 months ago

好像[00:01:50](link) 字幕XXXX image 这样搭配是可以做到这个效果的,你的意思是在 字幕模板中这样[{time}](link) 字幕xxx使用是吗? 还是像回链模板(Alt+G)这样的吗?

我感觉你这个功能像是 把srt这种字幕文件,转为 回链?

可以了,谢谢解答,原来是自己不会用,hahaha。 批量字幕转回链,我自己写了quicker动作,不过md2pp,感觉也可以添加。有时候是需要单条字幕转回链的,所以提了这个功能需求,不知道能不能跟单时间戳模板分开呢(其实删除添加了的字幕也行,就是多了个步骤 😀)

holduan commented 2 months ago

@livelycode36 佬,请问还会继续完善吗

livelycode36 commented 2 months ago

@livelycode36 佬,请问还会继续完善吗

完善,必须的,我这几天阳了。明天我在搞一搞,你的意思是,搞几个常用的模板进行快速切换是吧

holduan commented 2 months ago

@livelycode36 佬,请问还会继续完善吗

完善,必须的,我这几天阳了。明天我在搞一搞,你的意思是,搞几个常用的模板进行快速切换是吧

谢谢,不过不急,大佬先休息好 ☕。在原来的基础上增加一个字幕模板,可自定义快捷键就行。

livelycode36 commented 2 months ago

0.2.5-beta2

试一试这版,改动较大,帮我测测

方式1-模板这里填:{title} {subtitle} image

方式2-手搓md的链接,模板这里填:[{time}]({link}) {subtitle} image

holduan commented 2 months ago

0.2.5-beta2

试一试这版,改动较大,帮我测测

方式1-模板这里填:{title} {subtitle} image

方式2-手搓md的链接,模板这里填:[{time}]({link}) {subtitle} image

抱歉,今天有点忙,回复晚了。字幕模板已经可以用了,但用的过程中我发现了个瑕疵是我之前没考虑到的,失策了。 瑕疵是:时间戳会比当前字幕的开始时间晚,不知道用“字幕模板”功能的时候,能不能按当前字幕的开始时间插入时间戳呢 😁

livelycode36 commented 2 months ago

倒也简单,不过要求,srt的字幕文件和视频文件同名称,例如:test.mp4test.srt,这样我可以解析srt内的时间

livelycode36 commented 2 months ago

试试这个,0.2.5-beta3

srt的字幕文件和视频文件同名称,例如:test.mp4test.srt

另外加入了 srt字幕转md image

holduan commented 2 months ago

试试这个,0.2.5-beta3

srt的字幕文件和视频文件同名称,例如:test.mp4test.srt

另外加入了 srt字幕转md image

抱歉,突然发现这个功能其实有挺多细节要考虑的。如:

  1. pp内用双击字幕浏览器内的字幕来定位后,用alt+t 字幕模板,插入的是上一条字幕;
  2. 字幕模板有时候不需要区间播放;
  3. 我试了srt2md,单 双语字幕的中文字幕会变成乱码。
livelycode36 commented 2 months ago
  1. 应该是potplayer中的字幕显示比实际慢,可以采用srt内的字幕
  2. 不需要区间播放,可以读取srt中的开始时间即可
  3. 这个双语字幕中文为啥会乱码??字幕文件分享一下,我看看(srt可能不是GBK编码的问题吧?)字幕比较隐私的话,可以加我
holduan commented 2 months ago
  1. 应该是potplayer中的字幕显示比实际慢,可以采用srt内的字幕
  2. 不需要区间播放,可以读取srt中的开始时间即可
  3. 这个双语字幕中文为啥会乱码??字幕文件分享一下,我看看(srt可能不是GBK编码的问题吧?)字幕比较隐私的话,可以加我
  1. 是.srt文件,可能是pp用字幕定位也会自动往前一些,不知道能不能兼容一下,因为字幕定位挺实用的——一般步进、步退的时间不会设置1秒的跨度,用了步退还要播放一会才能定位;
  2. 中文字幕乱码的原因好像是我用了.lrc,抱歉哈。
livelycode36 commented 2 months ago

刚才试了一下字幕浏览器alt + T的字幕是准确的呀?? 有一个情况就是:有时候点击字幕,potplayer的画面和字幕是卡住不动的,这个时候alt + T的字幕是不对的,此时播放一下视频才行

holduan commented 2 months ago

刚才试了一下字幕浏览器alt + T的字幕是准确的呀?? 有一个情况就是:有时候点击字幕,potplayer的画面和字幕是卡住不动的,这个时候alt + T的字幕是不对的,此时播放一下视频才行

这样的吗,我是暂停后用字幕浏览器跳转的,没有继续播放

livelycode36 commented 2 months ago

组合一下的话,你字幕模板使用[{subtitleTimeStart}]({link}) {subtitleOrigin}应该能达到你要的效果


0.2.5-beta4

holduan commented 2 months ago

组合一下的话,你字幕模板使用[{subtitleTimeStart}]({link}) {subtitleOrigin}应该能达到你要的效果

0.2.5-beta4

  • {time}: 代表 potplayer中的当前时间戳
  • {subtitle}: 代表 potplayer中的当前字幕
  • {subtitleTimeRange}: 代表 .str字幕文件中的 开始和结束时间。例如: 01:02-03:04
  • {subtitleTimeStart}: 代表 .str字幕文件中的 开始时间。例如: 01:02
  • {subtitleTimeEnd}: 代表 .str字幕文件中的 结束时间。例如: 03:04
  • {subtitleOrigin}: 代表 .str字幕文件中的 当前时间戳的字幕。例如: 猴哥猴哥,你真了不得
  • 注意: .srt转md中的数据格式,受到 字幕模板 中的样式进行控制。

感谢大佬,有空我测试一下

livelycode36 commented 2 months ago

组合一下的话,你字幕模板使用[{subtitleTimeStart}]({link}) {subtitleOrigin}应该能达到你要的效果 0.2.5-beta4 0.2.5-贝塔4

  • {time}: 代表 potplayer中的当前时间戳
  • {subtitle}: 代表 potplayer中的当前字幕
  • {subtitleTimeRange}: 代表 .str字幕文件中的 开始和结束时间。例如: 01:02-03:04
  • {subtitleTimeStart}: 代表 .str字幕文件中的 开始时间。例如: 01:02
  • {subtitleTimeEnd}: 代表 .str字幕文件中的 结束时间。例如: 03:04
  • {subtitleOrigin}: 代表 .str字幕文件中的 当前时间戳的字幕。例如: 猴哥猴哥,你真了不得
  • 注意: .srt转md中的数据格式,受到 字幕模板 中的样式进行控制。

感谢大佬,有空我测试一下

猿神启动!

holduan commented 2 months ago

组合一下的话,你字幕模板使用[{subtitleTimeStart}]({link}) {subtitleOrigin}应该能达到你要的效果

0.2.5-beta4

  • {time}: 代表 potplayer中的当前时间戳
  • {subtitle}: 代表 potplayer中的当前字幕
  • {subtitleTimeRange}: 代表 .str字幕文件中的 开始和结束时间。例如: 01:02-03:04
  • {subtitleTimeStart}: 代表 .str字幕文件中的 开始时间。例如: 01:02
  • {subtitleTimeEnd}: 代表 .str字幕文件中的 结束时间。例如: 03:04
  • {subtitleOrigin}: 代表 .str字幕文件中的 当前时间戳的字幕。例如: 猴哥猴哥,你真了不得
  • 注意: .srt转md中的数据格式,受到 字幕模板 中的样式进行控制。

感谢。

https://github.com/user-attachments/assets/a9653297-3a7c-4505-afcb-8cc591da35f7

livelycode36 commented 2 months ago
  • {subtitleTimeStart} 会识别上一行字幕的时间,即使pp显示的时间是正确的

这个问题的话,其实是和srt的字幕格式有关,因为srt上一个字幕的结尾时间 和 当前字幕的开头时间是一样的 image

{subtitleOrigin} 会出现乱码,用 {subtitle} 才没问题

这个问题的话,默认是使用windows的当前系统的编码GBK,对srt文件进行读取,我看到你的srt文件是utf-8,所以出现了乱码,这个我尝试解决一下

能不能优化一下时间,跟alt+G一样是 00:11:12 这样的格式

srt带毫秒的呀,如果和alt+G一样00:11:12那不是去掉毫秒了?我斟酌一下