pengunduh musik berbasis qt yang ditulis dengan python.
Jika Anda memiliki ide untuk peningkatan atau fitur, buat masalah atau bergabunglah dengan server perselisihan untuk berdiskusi!
Pastikan ffmpeg, python3 dan Git diinstal dan tersedia di $PATH
Anda. Jika Anda menggunakan windows, Anda juga perlu menginstal alat pembuatan Microsoft C++ dan memulai ulang komputer Anda sebelum memulai proses pembuatan.
Unduh atau Kloning repo git clone https://github.com/casualsnek/onthespot
Arahkan ke direktori onthespot cd onthespot
Instal paket pip install -r requirements.txt
Arahkan ke direktori sumber cd src
Luncurkan aplikasi dengan python3 -m onthespot
Persyaratannya sama dengan "Meluncurkan tanpa menginstal" di atas.
Unduh atau Kloning repo git clone https://github.com/casualsnek/onthespot
Arahkan ke direktori onthespot cd onthespot
Bangun paket python -m build
Instal paket pip install ./dist/*.whl
Luncurkan aplikasi dengan onthespot_gui
onthespot
tersedia untuk distribusi berbasis arch linux dan arch linux di repositori pengguna arch (aur) sebagai onthespot-git.
Anda dapat menginstal onthespot
menggunakan aur helper favorit Anda.
Misalnya: menggunakan yay
yay -Sy onthespot-git
Unduh 'onthespot_linux' terbaru dari bagian rilis dan jalankan dengan
chmod +x onthespot_linux ./onethespot_linux
Unduh 'onthespot_win_ffm.exe' atau 'onthespot_win.exe' terbaru dari bagian Rilis dan jalankan dengan mengklik dua kali file yang diunduh.
Biner dengan nama file diakhiri dengan '_ffm' memiliki paket ffmpeg dan tidak memerlukan instalasi manual.
Jika Anda menggunakan binari yang tidak menggabungkan ffmpeg dan unduhan terhenti di 99% dengan Converting
teks yang sedang berjalan, Anda kehilangan ffmpeg! Silakan menginstalnya dengan mengikuti petunjuk di bawah ini
Buka Windows Explorer dan Arahkan ke C:
Drive dan buat nama folder ffmpeg
di sana
Unduh ffmpeg zip dari https://www.gyan.dev/ffmpeg/builds/ffmpeg-release-full.7z lalu salin folder bin
dari zip ke C:ffmpeg
Buka CMD sebagai administrator dan jalankan perintah: setx /m PATH "C:ffmpegbin;%PATH%"
Sekarang aplikasi tersebut seharusnya berfungsi seperti yang diharapkan.
Pembuatan atau pengemasan pada OS apa pun memerlukan instalasi Git, Python3, dan Pip. Pastikan Anda sudah menginstalnya!
Buka emulator terminal dan jalankan perintah berikut untuk mengkloning repositori dan build.
git clone https://github.com/casualsnek/onthespotcd di tempat
Jika Anda ingin membangun dengan ffmpeg yang tertanam, unduh binari ffmpeg untuk os Anda dari Sini. Buat direktori baru bernama 'ffbin_nix' di direktori root repositori. Salin tiga file 'ffmpeg', 'ffprobe', 'ffplay' dari arsip yang diunduh ke direktori 'ffbin_nix' yang baru dibuat lalu jalankan;
pesta ./build_linux.sh
Setelah perintah selesai, Anda akan memiliki direktori 'dist' di root repositori yang berisi biner 'onthespot_linux' bawaan.
Buka cmd dan jalankan perintah berikut untuk mengkloning repositori dan membangun.
git clone https://github.com/casualsnek/onthespotcd di tempat
Jika Anda belum menginstal git, Anda juga dapat mengunduh zip sumber Proyek dari github, mengekstraknya dan membuka cmd di root repositori. Jika Anda ingin membangun dengan ffmpeg yang tertanam, unduh binari ffmpeg untuk os Anda dari Sini. Buat direktori baru bernama 'ffbin_win' di direktori root repositori. Salin tiga file 'ffmpeg.exe', 'ffprobe.exe', 'ffplay.exe' dari arsip yang diunduh ke direktori 'ffbin_win' yang baru dibuat lalu jalankan;
build_winC1.bat build_winC2.bat
Setelah perintah selesai, Anda akan memiliki direktori 'dist' di root repositori yang berisi biner 'onthespot_win.exe' bawaan.
CATATAN : Ini hanya membangun aplikasi untuk arsitektur prosesor spesifik yang Anda gunakan. Itu tidak membangun biner universal
Buka emulator terminal dan jalankan perintah berikut untuk mengkloning repositori dan build.
git clone https://github.com/casualsnek/onthespotcd di tempat
Jika Anda ingin membangun dengan ffmpeg yang tertanam, unduh binari ffmpeg untuk os Anda dari Sini. Buat direktori baru bernama 'ffbin_mac' di direktori root repositori. Salin tiga file 'ffmpeg', 'ffprobe', 'ffplay' dari arsip yang diunduh ke direktori 'ffbin_mac' yang baru dibuat lalu jalankan:
./build_mac.sh
Setelah perintah selesai, Anda akan memiliki direktori 'dist' di root repositori yang berisi biner 'onthespot_mac.app'.
Anda juga dapat membangun di tempat sebagai roda dan menginstalnya sebagai modul python melalui pip di sistem Anda. Ini memberikan integrasi yang lebih baik dengan sistem, seperti menggunakan gaya dan tema Qt sistem Anda serta Anda dapat menggunakan ikon yang disediakan dan file .desktop untuk integrasi yang lebih baik dalam sistem linux.
Pastikan Anda telah menyiapkan alat yang terpasang!
Buka emulator terminal dan jalankan perintah berikut untuk mengkloning repositori dan build.
git clone https://github.com/casualsnek/onthespotcd di tempat python -m membangun
Ini akan membuat direktori dist yang berisi file .whl yang sekarang dapat diinstal dengan pip, aplikasi dapat diluncurkan dengan perintah onthespot_gui
atau python3 -m onthespot
setelah instalasi!
CATATAN : Jika Anda mengemas onthespot untuk distribusi, salin src/onthespot/resources/icon.svg
ke /usr/share/icons/hicolor/scalable/apps/casual_onthespot.svg
atau $HOME/.local/share/icons/hicolor/scalable/apps/casual_onthespot.svg
, dan src/onthespot/resources/org.eu.casualsnek.onthespot.desktop
ke /usr/share/applications/org.eu.casualsnek.onthespot.desktop
atau $HOME/.local/share/applications/org.eu.casualsnek.onthespot.desktop
. Hal ini memungkinkan aplikasi untuk lebih terintegrasi ke lingkungan desktop!
Jika Anda memiliki ide untuk perbaikan/fitur, buatlah masalah atau bergabunglah dengan server perselisihan untuk berdiskusi!
Saat pertama kali meluncurkan aplikasi, Anda akan mendapat peringatan bahwa tidak ada akun Spotify yang ditambahkan. Abaikan peringatan tersebut, dan tambahkan akun Anda di bagian bawah tab konfigurasi. Memiliki banyak akun memungkinkan Anda mengunduh banyak lagu sekaligus.
Di tab 'Pencarian', Anda dapat memasukkan kueri Anda, klik search
untuk mencari lagu/artis/album/daftar putar. Anda kemudian dapat mengunduh media dalam daftar yang dihasilkan dengan mengklik tombol download
. Opsional, Anda dapat mengunduh secara massal dengan mengeklik salah satu tombol di bawah tabel. Perhatikan bahwa Jenis Media selain 'Trek' memerlukan waktu lebih lama untuk diuraikan dan diunduh. Aplikasi mungkin tampak terhenti dalam kondisi ini!
Masukkan url pada kolom pencarian lalu klik download. Anda juga dapat memasukkan jalur file teks yang berisi URL, dan itu akan mengantri semua url di dalamnya! Perhatikan bahwa Jenis Media selain 'Trek' memerlukan waktu lebih lama untuk diuraikan dan diunduh. Aplikasi mungkin tampak dibekukan dalam keadaan ini!
Status unduhan dan kemajuannya dapat dilihat dengan menavigasi ke tab 'Kemajuan'.
Pekerja pengunduhan maksimal : Ini adalah jumlah thread yang akan digunakan untuk pengunduhan media. Setel ini ke jumlah akun yang Anda tambahkan. Mengubah pengaturan ini memerlukan restart aplikasi agar dapat diterapkan.
Parsing Akun SN : Ini adalah nomor yang ditampilkan di sisi kiri nama pengguna pada tabel akun. Nomor tersebut adalah akun yang bertanggung jawab untuk menyediakan hasil pencarian dan mengurai url unduhan.
Lokasi Pengunduhan : Folder akar tempat media yang diunduh ditempatkan.
Penundaan pengunduhan : Waktu dalam hitungan detik untuk menunggu sebelum pengunduhan berikutnya setelah pengunduhan berhasil.
Percobaan ulang maksimal : Berapa kali mencoba lagi pengunduhan sebelum melanjutkan.
Hasil pencarian maksimal : Jumlah item yang ditampilkan dalam hasil pencarian untuk setiap jenis media. Contoh: menyetelnya ke '1' menampilkan satu hasil untuk artis, album, trek, dan playlist sehingga menghasilkan total 4 hasil pencarian.
Pengunduhan media mentah : Mengunduh file (berbentuk .ogg) ke disk tanpa mengonversi ke format media yang disetel, ini juga menonaktifkan penulisan metadata dan penyematan thumbnail.
Paksa premium : Gunakan ini jika akun premium Anda menunjukkan GRATIS di tabel akun, ini berlaku untuk semua akun yang ditambahkan sehingga tidak disarankan untuk digunakan dengan kombinasi akun gratis dan premium. Jangan gunakan jika akun bukan premium.
Aktifkan pemutaran aplikasi desktop untuk mengunduh : Mengaktifkan secara otomatis akan mengunduh lagu yang Anda putar di aplikasi desktop spotify. (Didukung: Linux/Windows)
Tampilkan/Sembunyikan Konfigurasi Lanjutan : Mengaktifkan/Menonaktifkan tab Konfigurasi lanjutan.
Simpan pengaturan : Menyimpan/Menerapkan pengaturan
Nama trek default adalah AlbumFormatter/TrackName
Pemformat nama trek : Opsi ini memungkinkan Anda mengatur skema penamaan trek yang diunduh. Variabel bisa digunakan dengan mengapitnya di antara {}
. Beberapa variabel tersedia untuk digunakan dalam skema penamaan:
artis : Nama artis lagu
album : Nama album tempat lagu berada *
nama : Nama trek
rel_year : Tahun rilis trek
disc_number : Nomor disk tempat track berada *
track_number : Nomor Seri track dalam album *
playlist_name : Nama playlist jika lagu sedang diunduh sebagai bagian dari playlist *
playlist_owner : Nama playlist jika lagu sedang diunduh sebagai bagian dari playlist *
playlist_desc : Deskripsi playlist jika lagu sedang diunduh sebagai bagian dari playlist *
genre : Genre lagu *
label : Nama label rekaman
eksplisit : 'Eksplisit' jika lagu ditandai eksplisit, jika tidak maka akan kosong
trackcount : Jumlah total lagu di album tempat lagu ini berada
disccount : Jumlah total disc di album tempat lagu ini berada
spotid : ID Spotify
Contoh: Song: {name} of album: {album} Released in {rel_year}
.
Nilai variabel dengan deskripsi yang diakhiri dengan * mungkin kosong dalam beberapa kasus. Ini juga bisa menjadi sebuah jalan.
Pemformat nama direktori album : Opsi ini memungkinkan Anda mengatur skema penamaan direktori untuk trek yang diunduh. Variabel bisa digunakan dengan mengapitnya di antara {}
. Beberapa variabel tersedia untuk digunakan dalam skema penamaan:
artis : nama artis utama album
rel_year : tahun rilis album *
album: nama album
playlist_name : Nama playlist jika lagu sedang diunduh sebagai bagian dari playlist *
playlist_owner : Nama playlist jika lagu sedang diunduh sebagai bagian dari playlist *
playlist_desc : Deskripsi playlist jika lagu sedang diunduh sebagai bagian dari playlist *
genre : Genre lagu *
label : Nama label rekaman
Contoh: {artist}/{rel_year}/{album}
.
Nilai variabel dengan deskripsi yang diakhiri dengan * mungkin kosong dalam beberapa kasus. Ini juga bisa menjadi jalan.
Ukuran potongan unduhan : Ukuran potongan (byte) yang digunakan untuk mengunduh.
Nonaktifkan pemberitahuan unduhan massal : Mengaktifkan ini akan menonaktifkan dialog popup tentang status saat menggunakan unduhan massal.
Penundaan percobaan ulang pengunduhan yang dapat dipulihkan : Saatnya menunggu sebelum mencoba pengunduhan lain setelah upaya gagal.
Lewati byte di akhir (unduh akhir lewati byte) : Terkadang beberapa byte terakhir dari sebuah trek tidak dapat diunduh, menyebabkan 'Kesalahan PD' yang menyebabkan pengunduhan gagal terus-menerus. Opsi ini menetapkan jumlah byte yang harus dilewati pengunduhan ketika ini terjadi. Nilainya mungkin berubah tetapi nilai kerja saat ini adalah '167' byte. Jika Anda mendapatkan 'kesalahan dekode' atau unduhan lagu yang tidak lengkap, coba setel ke 0.
Paksa direktori Artis/Album untuk item trek/daftar putar : Jika ini dinonaktifkan, trek yang diunduh akan ditempatkan di akar direktori unduhan, bukan di direktori artis/album. Mengaktifkan ini mungkin menyebabkan penguraian unduhan lebih lambat tetapi membuat pengorganisasian musik lebih mudah.
Format Media : Format media yang Anda inginkan untuk mengunduh musik akhir Anda. Jangan sertakan '.' di dalamnya. Pengaturan ini akan diabaikan saat menggunakan opsi pengunduhan media mentah.
Kesalahan dekode: Jika Anda menerima kesalahan ini, akun Anda mungkin dibatasi. Tunggu beberapa saat atau coba akun lain. Aplikasi mungkin sering crash karena belum ada penanganan pengecualian yang tepat. Anda dapat membantu dengan membuka masalah baru dengan pesan kesalahan yang ditampilkan di jendela konsol Anda setelah aplikasi berperilaku buruk.
Anda dapat menulis kode untuk memasukkan fitur tambahan atau perbaikan bug atau membuat masalah mengenai bug dan fitur atau sekadar menyebarkan karya tentang aplikasi :) Jika Anda ingin mendukung secara finansial, Anda dapat mengunjungi Di Sini dan mendukung melalui kolektif terbuka atau BTC Jika Anda mau proyek ini, tunjukkan dukungan Anda dengan memberinya bintang :)!