📜  Python VLC Instance – 枚举定义的音频输出设备

📅  最后修改于: 2022-05-13 01:54:58.670000             🧑  作者: Mango

Python VLC Instance – 枚举定义的音频输出设备

在本文中,我们将了解如何从Python vlc 模块中的 Instance 类中获取枚举音频输出设备。 VLC媒体播放器是VideoLAN项目开发的一款免费开源的便携式跨平台媒体播放软件和流媒体服务器。 Instance 充当 VLC 库的主要对象,使用 Instance 对象我们可以创建媒体播放器、列表播放器或 VLC 中可用的任何其他播放器。实例类是 VLC 中用于创建各种对象的基类。这些音频设备也可以是扬声器或耳机。

下面是实现

# importing vlc module
import vlc
  
# importing time module
import time
  
# creating Instance class object
player = vlc.Instance()
  
# creating a new media list
media_list = player.media_list_new()
  
# creating a media player object
media_player = player.media_list_player_new()
  
# creating a new media
media = player.media_new("death_note.mkv")
  
# adding media to media list
media_list.add_media(media)
  
# setting media list to the mediaplayer
media_player.set_media_list(media_list)
  
  
# start playing video
media_player.play()
  
  
# wait so the video can be played for 5 seconds
# irrespective for length of video
time.sleep(5)
  
# getting audio enumerate devices
value = player.audio_output_enumerate_devices()
  
# printing value
print(value)

输出 :

[{'name': b'adummy', 'description': b'Dummy audio output'}, {'name': b'afile', 'description': b'File audio output'}, {'name': b'amem', 'description': b'Audio memory output'}, {'name': b'directsound', 'description': b'DirectX audio output'}, {'name': b'mmdevice', 'description': b'Windows Multimedia Device output'}, {'name': b'waveout', 'description': b'WaveOut audio output'}]

另一个例子
下面是实现

# importing vlc module
import vlc
  
# importing time module
import time
  
# creating Instance class object
player = vlc.Instance()
  
# creating a new media list
media_list = player.media_list_new()
  
# creating a media player object
media_player = player.media_list_player_new()
  
# creating a new media
media = player.media_new("1.mp4")
  
# adding media to media list
media_list.add_media(media)
  
# setting media list to the mediaplayer
media_player.set_media_list(media_list)
  
  
# start playing video
media_player.play()
  
  
# wait so the video can be played for 5 seconds
# irrespective for length of video
time.sleep(5)
  
# getting audio enumerate devices
value = player.audio_output_enumerate_devices()
  
# printing value
print(value)

输出 :

[{'name': b'adummy', 'description': b'Dummy audio output'}, {'name': b'afile', 'description': b'File audio output'}, {'name': b'amem', 'description': b'Audio memory output'}, {'name': b'directsound', 'description': b'DirectX audio output'}, {'name': b'mmdevice', 'description': b'Windows Multimedia Device output'}, {'name': b'waveout', 'description': b'WaveOut audio output'}]