如何使用 libvlc 将字幕添加到视频播放器

How to add subtitles to video player with libvlc

我无法为视频播放器添加字幕

self.Instance = vlc.Instance()
self.player = self.Instance.media_player_new()

m = self.Instance.media_new(str(video))
self.player.set_media(m)
self.player.video_set_subtitle_file(str(self.mySub))

使用 libvlc 版本 2.2:

import vlc
Instance = vlc.Instance()
player = Instance.media_player_new()
Media = Instance.media_new('Test.avi')
player.set_media(Media)
player.play()  # ← your code doesn't have this
player.video_set_subtitle_file('Test.srt')

使用 libvlc 版本 3:

  • player.video_set_subtitle_file() 已弃用
  • 使用add_slave()
import vlc
Instance = vlc.Instance()
player = Instance.media_player_new()
Media = Instance.media_new('Test.avi')
Sub = player.add_slave(player,'Test.srt', True)

player.set_media(Media)
player.play()

此外:

def video_set_subtitle_file(self, psz_subtitle):
    '''Set new video subtitle file.
    \deprecated Use L{add_slave}() instead.
    @param psz_subtitle: new video subtitle file.
    @return: the success status (boolean).
    '''
    return libvlc_video_set_subtitle_file(self, str_to_bytes(psz_subtitle))