使用pythonvlc播放视频时,在指定的时间戳开始和结束

2024-09-27 00:19:35 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个使用python在vlc中播放的youtube视频列表
我正在使用tafypython-vlc库进行同样的操作
我已使用上述库按顺序播放视频。
但是现在我想在特定的时间戳之间播放视频(每个视频不同)
那么tafypython-vlc中是否存在一个API,使我能够从指定的开始时间戳播放给定的视频到结束时间戳

更新:演示代码

import pafy
import vlc

url = "https://www.youtube.com/watch?v=bMt47wvK6u0"
video = pafy.new(url)
best = video.getbest()
playurl = best.url


Instance = vlc.Instance()
player = Instance.media_player_new()
Media = Instance.media_new(playurl)
Media.get_mrl()
player.set_media(Media)
player.play()
sleep(10)
while player.is_playing():
    sleep(1)

现在播放一段完整的视频。我想在一定的范围内打


Tags: instanceimporturlnew视频youtubevideo时间
2条回答

您希望使用libvlc选项来实现这一点。在PythonVLC中,用于将字符串传递到本机库的函数是libvlc_new,您必须对此进行研究。然后使用

Playback control:
       start-time=<float [-340282346638528859811704183484516925440.000000 .. 340282346638528859811704183484516925440.000000]> 
                                 Start time
          The stream will start at this position (in seconds).
       stop-time=<float [-340282346638528859811704183484516925440.000000 .. 340282346638528859811704183484516925440.000000]> 
                                 Stop time
          The stream will stop at this position (in seconds).
       run-time=<float [-340282346638528859811704183484516925440.000000 .. 340282346638528859811704183484516925440.000000]> 
                                 Run time
          The stream will run this duration (in seconds).

还有更多,来自https://wiki.videolan.org/VLC_command-line_help

Media对象同时具有add_optionadd_options函数。
pafy在Linux上对我来说是个难题,所以我不能测试它,但是

Media.add_option('start-time=120.0')
Media.add_option('run-time=60.0')

从2分钟开始,运行1分钟

Media.add_option('start-time=120.0')
Media.add_option('stop-time=180.0')

应该达到同样的效果

相关问题 更多 >

    热门问题