Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/yjg30737/pyqt-music-player-widget
PyQt music player widget
https://github.com/yjg30737/pyqt-music-player-widget
audio-player music-player pyqt pyqt-examples pyqt-tutorial pyqt5 pyqt5-examples python python3 python37 qmediacontent qmediaplayer qslider qt
Last synced: about 1 month ago
JSON representation
PyQt music player widget
- Host: GitHub
- URL: https://github.com/yjg30737/pyqt-music-player-widget
- Owner: yjg30737
- License: mit
- Created: 2021-12-22T09:03:10.000Z (about 3 years ago)
- Default Branch: main
- Last Pushed: 2024-02-09T05:37:04.000Z (about 1 year ago)
- Last Synced: 2024-12-27T05:30:15.441Z (about 2 months ago)
- Topics: audio-player, music-player, pyqt, pyqt-examples, pyqt-tutorial, pyqt5, pyqt5-examples, python, python3, python37, qmediacontent, qmediaplayer, qslider, qt
- Language: Python
- Homepage:
- Size: 25.4 KB
- Stars: 6
- Watchers: 2
- Forks: 3
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# pyqt-music-player-widget
PyQt music player widget## Requirements
PyQt5 >= 5.8## Setup
`python -m pip install pyqt-music-player-widget`## Included Packages
* audioread
* pyqt-media-slider
* pyqt-svg-buttonThis is using `audioread` to get the full length of the media.
## Method/Signal Overview
* Methods - `play()`, `pause()`, `stop()`
* Signals - `played(bool)`, `positionUpdated(int)`, `durationUpdated(int)`## Example
```python
from PyQt5.QtWidgets import QWidget, QVBoxLayout, QApplication, QFormLayout
from pyqt_find_path_widget import FindPathWidget # https://github.com/yjg30737/pyqt-find-path-widget.gitfrom pyqt_music_player_widget import MusicPlayerWidget
class MusicPlayerExample(QWidget):
def __init__(self):
super().__init__()
self.__initUi()def __initUi(self):
self.__findPathWidget = FindPathWidget()
self.__findPathWidget.setExtOfFiles('Audio Files (*.mp3)')
self.__findPathWidget.added.connect(self.__added)lay = QFormLayout()
lay.addRow('Audio File', self.__findPathWidget)
lay.setContentsMargins(0, 0, 0, 0)pathFindWidget = QWidget()
pathFindWidget.setLayout(lay)self.__musicPlayerWidget = MusicPlayerWidget()
lay = QVBoxLayout()
lay.addWidget(pathFindWidget)
lay.addWidget(self.__musicPlayerWidget)self.setLayout(lay)
def __added(self, filename: str):
self.__musicPlayerWidget.setMedia(filename)if __name__ == "__main__":
import sysapp = QApplication(sys.argv)
player = MusicPlayerExample()
player.show()
sys.exit(app.exec_())
```Result
![image](https://user-images.githubusercontent.com/55078043/180103955-9e2012ce-33dc-4eca-9d28-446b1119404e.png)