2024-12-28 18:12:59 +01:00
|
|
|
#!/usr/bin/python3
|
|
|
|
|
2025-01-26 14:07:00 +01:00
|
|
|
import os
|
2024-12-28 18:12:59 +01:00
|
|
|
import sys
|
|
|
|
import argparse
|
|
|
|
|
2025-02-04 13:14:15 +01:00
|
|
|
from wobuzz.player.playlist import Playlist
|
|
|
|
|
2024-12-28 18:12:59 +01:00
|
|
|
|
2025-01-25 14:05:10 +01:00
|
|
|
def main():
|
|
|
|
description = "A music player made by The Wobbler."
|
2024-12-28 18:12:59 +01:00
|
|
|
|
2025-01-25 14:05:10 +01:00
|
|
|
parser = argparse.ArgumentParser(description=description)
|
2024-12-28 18:12:59 +01:00
|
|
|
|
2025-01-25 14:05:10 +01:00
|
|
|
parser.add_argument("track", nargs="*", help="Plays audio files the from given paths.", metavar="TRACKS")
|
|
|
|
parser.add_argument("-p", "--playlist", help="Imports a playlist from the given path.", metavar="PLAYLIST_PATH")
|
2024-12-28 18:12:59 +01:00
|
|
|
|
2025-01-25 14:05:10 +01:00
|
|
|
arguments = parser.parse_args()
|
2024-12-28 18:12:59 +01:00
|
|
|
|
2025-01-25 20:44:30 +01:00
|
|
|
from .main import Wobuzz
|
|
|
|
|
2025-01-25 14:05:10 +01:00
|
|
|
app = Wobuzz()
|
2025-02-04 14:43:08 +01:00
|
|
|
app.post_init()
|
2024-12-28 18:12:59 +01:00
|
|
|
|
2025-01-25 14:05:10 +01:00
|
|
|
if arguments.playlist:
|
2025-02-04 13:14:15 +01:00
|
|
|
playlist = Playlist(app, "Temporary Playlist")
|
2024-12-28 18:12:59 +01:00
|
|
|
|
2025-02-04 13:14:15 +01:00
|
|
|
playlist.load_from_m3u(arguments.playlist)
|
|
|
|
|
|
|
|
app.library.playlists.append(playlist)
|
|
|
|
|
|
|
|
if app.library.temporary_playlist in app.library.playlists:
|
|
|
|
app.library.playlists.remove(app.library.temporary_playlist)
|
|
|
|
app.library.temporary_playlist = playlist
|
2025-01-26 14:07:00 +01:00
|
|
|
|
2025-02-04 13:14:15 +01:00
|
|
|
if arguments.track:
|
2025-01-26 14:07:00 +01:00
|
|
|
# make track paths absolute
|
|
|
|
tracks = []
|
|
|
|
|
|
|
|
for track in arguments.track:
|
|
|
|
tracks.append(os.path.abspath(track))
|
|
|
|
|
2025-02-04 13:14:15 +01:00
|
|
|
playlist = Playlist(app, "Temporary Playlist")
|
|
|
|
|
|
|
|
playlist.load_from_paths(tracks)
|
|
|
|
|
|
|
|
app.library.playlists.append(playlist)
|
|
|
|
|
|
|
|
if app.library.temporary_playlist in app.library.playlists:
|
|
|
|
app.library.playlists.remove(app.library.temporary_playlist)
|
|
|
|
app.library.temporary_playlist = playlist
|
2024-12-28 20:41:18 +01:00
|
|
|
|
2025-02-04 14:43:08 +01:00
|
|
|
app.library.load_playlist_views()
|
2025-01-25 14:05:10 +01:00
|
|
|
sys.exit(app.qt_app.exec())
|
2024-12-28 18:12:59 +01:00
|
|
|
|
2025-01-25 14:05:10 +01:00
|
|
|
|
|
|
|
if __name__ == "__main__":
|
|
|
|
main()
|