Linux下基于命令行的音樂(lè)播放器
利用最近項(xiàng)目通宵發(fā)布的空閑時(shí)間中,寫(xiě)了一個(gè)命令行下的音樂(lè)播放器,以滿(mǎn)足我在linux命令下的需求。接下來(lái)是小編為大家收集的Linux下基于命令行的音樂(lè)播放器,歡迎大家閱讀:
Linux下基于命令行的音樂(lè)播放器
播放器利用技術(shù):
Python+GST(http://gstreamer.freedesktop.org/modules/gst-python.html)+Console解析
播放器自持操作:
1. 播放
2. 下一首
3. 上一首
4. 暫停
5. 查看播放列表信息
6. 查看當(dāng)前播放信息
7. 停止(退出)
看一張截圖:
通過(guò)分析meliae dump出來(lái)的內(nèi)存信息,差不做占用2.5M內(nèi)存,算的上比較小巧了。
對(duì)應(yīng)代碼:(需要安裝py-gst,ubuntu下:sudo apt-get install python-gst0.10)
1 #!/usr/bin/env python
2
3 import gst
4 import gobject
5 import sys
6 #to avoid eclipsewarning
7 eval(gobject.threads_init())
8 from threading import Thread
9
10 class AudioPlayer:
11
12 EVENT_PLAY_NEW = 1
13
14 def __init__(self, advisor):
15 self.main = gobject.MainLoop()
16 self.player = gst.element_factory_make(playbin, player)
17 self.index = -1
18 self.list = None
19 self.advisor = advisor
20
21 bus = self.player.get_bus()
22 bus.add_signal_watch()
23 bus.connect(message, self.on_message)
24
25 Thread(target=self.main.run).start()
26
27 def add_list(self , list=[]):
28 if list is None:
29 list = []
30 self.list = [(i, l.strip(), l[l.rfind(/
看了“Linux下基于命令行的音樂(lè)播放器”還想看:
1.kali linux未找到命令