2014-03-25 53 views
0

我可以播放它直到test.flv結束,但我有一個特殊要求。如何播放音樂停止並開始播放直到結束?

import os 
os.system("D:\\VLC\\vlc.exe g:\\test.flv") 

我想玩test.flv 3分鐘,停2分鐘,並繼續發揮(從沒有從開始的最後一站點),3分鐘等和測試,直到結束FLV的。

+1

您需要使用某些可處理音頻的庫。以pygame爲例。 –

+0

你能從我的答案中得到什麼嗎? – sshashank124

+0

我無法在py3.3中安裝pygame,無法測試它。 –

回答

0

如果你想使用specificaly VLC-它具有HTTP接口,所以你可以用它來控制播放器

只要啓動您的播放器

x:\path\vlc\vlc.exe -I http g:\test.flv 

此命令將與8080創建的Web服務器(默認)監聽端口

127.0.0.1:8080/requests/status.xml contans所有信息關於當前播放的文件

這將播放/暫停當前曲目

127.0.0.1:8080/requests/status.xml?command=pl_pause

這裏可用的http命令列表

status.xml:獲取VLC狀態信息,當前項目信息和元。

添加到播放列表並開始播放:?command=in_play&input=<mrl>

添加到播放列表:?command=in_enqueue&input=<mrl>

播放播放列表項目:?command=pl_play&id=<id>

切換暫停。如果當前狀態是 '停止',播放項目:?command=pl_pause&id=<id>

停止播放:?command=pl_stop

跳轉到下一個項目:?command=pl_next

跳轉到前一個項目:從播放列表中?command=pl_previous

刪除項:?command=pl_delete&id=<id>

空播放列表:?command=pl_empty

使用分類模式和順序

排序播放列表:?command=pl_sort&id=<id>&val=<val> 當ID = 0,則項目將是正常的順序進行排序,當ID = 1時,它們將被 排序以相反的順序 的排序模式的非窮舉列表: 0標識 1個名稱 3作者 隨機5 7 軌道號

肘節隨機重放:?command=pl_random

切換循環:?command=pl_loop

切換重複:?command=pl_repeat

切換啓用服務發現模塊:?command=pl_sd&val=<val> 典型值爲:sap; Shoutcast的;播客; HAL;

切換全屏:?command=fullscreen

設定的音量電平(可以是絕對的整數,百分比或+/-相對值):?command=volume&val=<val> 允許的值的形式爲:+, - ,或%

尋求:?command=seek&val=<val> 允許的值的形式爲: [+或 - ] [:] [:] [] 或[+或 - ]% ([]之間的值是可選的,<之間值>是強制性的) 例子: 1000 - >尋求第1000第二 + 1H:2M - >尋求1小時2分鐘前 -10% - >尋求10%回

playlist.xml:得到完整的播放列表樹

browse.xml:獲得目錄的文件列表

?dir=<dir> 

vlm.xml:獲得VLM元素的完整列表

vlm_cmd.xml:執行VLM命令

?command=<cmd> 

獲取錯誤消息
0

正如@JayanthKoushik說,你可以做到這一點很容易使用pygame

這裏是你想要的一個示例代碼:

import pygame 
from time import sleep 

pygame.init() 

pygame.mixer.music.load('g:\\test.flv') 
pygame.mixer.music.play() 

while pygame.mixer.music.get_busy(): #keep repeating while track is playing 
    sleep(180)       #Waits for 180 seconds or 3 minutes before pausing 
    pygame.mixer.music.pause() 
    sleep(120)       #Waits for 120 seconds or 2 minutes before continuing 
    pygame.mixer.music.unpause() 
相關問題