2014-03-25 55 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() 
相关问题