Jupyter HTML 视频播放速度
Jupyter HTML Video playback speed
我知道我可以像这样在 Jupyter notebook 中显示视频:
from IPython.display import HTML
HTML("""
<video alt="test" controls>
<source src="test.mp4" type="video/mp4">
</video>
""")
但是有没有办法控制播放速度呢?例如以半速播放视频。
在 Jupyter Notebook
中,当您右键单击视频时,您应该会看到上下文菜单,您可以在其中更改速度。
Jupyter Lab
在此菜单中没有速度。
如果你想在开始时设置速度那么你必须在JavaScript
中使用playbackRate
from IPython.display import HTML
HTML("""
<video alt="test" controls id="theVideo">
<source src="https://archive.org/download/Popeye_forPresident/Popeye_forPresident_512kb.mp4">
</video>
<script>
video = document.getElementById("theVideo")
video.playbackRate = 4.0;
</script>
""")
同样的方法你也可以创建按钮来控制速度。
from IPython.display import HTML
HTML("""
<button id="speed_4.0">Speed 4.0</button>
<button id="speed_0.5">Speed 0.5</button>
<hr>
<video alt="test" controls id="theVideo">
<source src="https://archive.org/download/Popeye_forPresident/Popeye_forPresident_512kb.mp4">
</video>
<script>
video = document.getElementById("theVideo");
//video.playbackRate = 4.0;
document.getElementById("speed_4.0").addEventListener("click", function(){
video.playbackRate = 4.0;
});
document.getElementById("speed_0.5").addEventListener("click", function(){
video.playbackRate = 0.5;
});
</script>
""")
如果您将相同的代码放在下一个单元格中,则按钮可能无法使用,您可能必须为按钮和视频使用新的 ID。 ID 应该是唯一的。
也许需要一些其他代码来在每个单元格中自动生成唯一 ID。
在代码中我把URL放到了真实视频Popeye for President所以大家可以测试一下。
我知道我可以像这样在 Jupyter notebook 中显示视频:
from IPython.display import HTML
HTML("""
<video alt="test" controls>
<source src="test.mp4" type="video/mp4">
</video>
""")
但是有没有办法控制播放速度呢?例如以半速播放视频。
在 Jupyter Notebook
中,当您右键单击视频时,您应该会看到上下文菜单,您可以在其中更改速度。
Jupyter Lab
在此菜单中没有速度。
如果你想在开始时设置速度那么你必须在JavaScript
playbackRate
from IPython.display import HTML
HTML("""
<video alt="test" controls id="theVideo">
<source src="https://archive.org/download/Popeye_forPresident/Popeye_forPresident_512kb.mp4">
</video>
<script>
video = document.getElementById("theVideo")
video.playbackRate = 4.0;
</script>
""")
同样的方法你也可以创建按钮来控制速度。
from IPython.display import HTML
HTML("""
<button id="speed_4.0">Speed 4.0</button>
<button id="speed_0.5">Speed 0.5</button>
<hr>
<video alt="test" controls id="theVideo">
<source src="https://archive.org/download/Popeye_forPresident/Popeye_forPresident_512kb.mp4">
</video>
<script>
video = document.getElementById("theVideo");
//video.playbackRate = 4.0;
document.getElementById("speed_4.0").addEventListener("click", function(){
video.playbackRate = 4.0;
});
document.getElementById("speed_0.5").addEventListener("click", function(){
video.playbackRate = 0.5;
});
</script>
""")
如果您将相同的代码放在下一个单元格中,则按钮可能无法使用,您可能必须为按钮和视频使用新的 ID。 ID 应该是唯一的。
也许需要一些其他代码来在每个单元格中自动生成唯一 ID。
在代码中我把URL放到了真实视频Popeye for President所以大家可以测试一下。