2017-07-17 95 views
0

我正在使用MediaListPlayer實例來執行播放列表。在標準MediaPlayer實例上,您可以使用MediaPlayer.audio_set_volume(newVolume),但是當我嘗試在MediaListPLayer實例上使用相同方法(audio_set_volume(newVolume))時,出現錯誤。: AtributeError: 'MediaListPLayer' object has no attribute 'audio_set_volume'MediaListPlayer的替換方法是什麼?如何使用LibVLC更改MediaListPlayer中的播放音量?

這是代碼:

from vlc import Instance 

playlist = ['/home/user/Music/01 Signs.mp3','/home/user/Music/2U.mp3'] 
player = Instance() 
mediaListPlayer = player.media_list_player_new() 
mediaList = player.media_list_new() 
for element in playlist: 
    mediaList.add_media(player.media_new(element)) 
mediaListPlayer.set_media_list(mediaList) 
mediaListPlayer.play() 
mediaListPlayer.audio_set_volume(80) 
+0

看起來像一個疏忽。我無法找到更改當前音量或重新設置默認音量的方法。 :( –

回答

0

正如我在我的評論說,它看起來像一個監督。但是,我已經設置了初始音量,通過黑客入侵sub_player,但一旦它被設置並且你調用了列表播放器,我還沒有找到調整它的方法。

import vlc 
import time 
playlist=['/home/rolf/vp1.mp3','/home/rolf/vp.mp3'] 
inst = vlc.Instance() 
sub_player = inst.media_player_new() 
player = inst.media_list_player_new() 
mediaList = inst.media_list_new(playlist) 
player.set_media_list(mediaList) 
volume = 60 
sub_player.audio_set_volume(volume) 
sub_player.play() 
playing = set([1,2,3,4]) 
player.play() 
while player.get_state() in playing: 
    time.sleep(1) 

我已經張貼在VideoLAN的一個問題,https://forum.videolan.org/viewtopic.php?f=32&t=139505所以有人用這些東西更深入的瞭解可能會提供更好的解決方案。如果我得到答案,我會在這裏發佈。

+0

好的,我會等的,謝謝!我覺得有點奇怪,List Player沒有音量調節器,你能在那裏給你的問題提供鏈接嗎? – Mikael

相關問題