2 poin oleh GN⁺ 2024-09-25 | 2 komentar | Bagikan ke WhatsApp

Winamp

Pengenalan

  • Winamp adalah pemutar multimedia yang dirilis pada tahun 1997, terkenal karena kompatibilitasnya dengan berbagai format audio dan fleksibilitasnya
  • Dikembangkan oleh Nullsoft, dan meraih popularitas besar di kalangan jutaan pengguna
  • Pengembangannya sempat dihentikan untuk beberapa waktu, tetapi kini kode sumbernya telah dibuka sehingga komunitas dapat meningkatkan dan memodernisasi pemutar ini

Cara penggunaan

  • Build klien desktop Winamp saat ini berbasis Visual Studio 2019 (VS2019) dan library Intel IPP
  • Ada beberapa cara untuk membangun Winamp
    1. Menggunakan file skrip build_winampAll_2019.cmd untuk membangun 4 versi x86/x64 (debug dan release). Dalam hal ini, Visual Studio IDE tidak dijalankan
    2. Menggunakan file winampAll_2019.sln untuk melakukan build dan debug di Visual Studio IDE

Dependensi

  • Menggunakan file skrip build_winampAll_2019.cmd untuk membangun 4 versi x86/x64 (debug dan release). Dalam hal ini, Visual Studio IDE tidak dijalankan
  • Menggunakan file winampAll_2019.sln untuk melakukan build dan debug di Visual Studio IDE
libvpx
libmpg123
OpenSSL
  • Harus menggunakan openssl-1.0.1u
  • Untuk membangun versi statis library, jalankan build_vs_2019_openssl_x86.cmd dan build_vs_2019_openssl_64.cmd
  • Untuk membangun OpenSSL, Anda perlu memasang 7-Zip, NASM, dan Perl
DirectX 9 SDK
  • DirectX 9 SDK (Juni 2010) diambil dari Microsoft, lalu dimodifikasi dan dikemas sebagai arsip
  • Jalankan unpack_microsoft_directx_sdk_2010.cmd untuk mengekstraknya
Modifikasi lib Microsoft ATLMFC
  • Ubah baris ke-427 pada file C:\Program Files (x86)\Microsoft VisualStudio\2019\Community\VC\Tools\MSVC\14.24.28314\atlmfc\include\atltransactionmanager.h dari return ::DeleteFile((LPTSTR)lpFileName); menjadi return DeleteFile((LPTSTR)lpFileName);
Intel IPP 6.1.1.035
  • Intel IPP 6.1.1.035 diambil, lalu dimodifikasi dan dikemas sebagai arsip
  • Jalankan unpack_intel_ipp_6.1.1.035.cmd untuk mengekstraknya

Ringkasan GN⁺

  • Winamp masih disukai banyak pengguna karena kompatibilitasnya dengan berbagai format audio
  • Kode sumbernya telah dibuka, memberi komunitas kesempatan untuk meningkatkan dan memodernisasi pemutar ini
  • Winamp dapat dibangun menggunakan Visual Studio 2019 dan berbagai library, serta memerlukan penanganan beragam dependensi
  • Pemutar multimedia lain dengan fungsi serupa Winamp antara lain VLC Media Player dan foobar2000

2 komentar

 
wedding 2024-09-25

Dari isunya, sepertinya ada banyak perdebatan soal lisensi.

 
GN⁺ 2024-09-25
Opini Hacker News
  • Mempertanyakan cara berkontribusi pada proyek

    • Pasal 4 lisensi menganjurkan untuk menyumbangkan perbaikan, peningkatan, dan perbaikan bug ke proyek
    • Namun, Pasal 5 melarang fork kode atau distribusi versi yang telah dimodifikasi
    • Alur kerja GitHub standar menjadi pelanggaran lisensi
    • Saat ini, yang terbaik adalah tidak ikut berpartisipasi dalam proyek
    • Akan dicek lagi jika lisensinya berubah
  • Kenangan tentang Justin Frankel di #mpeg3 EFNet

    • Membuat skin dan ikon tray untuk digunakan di aplikasi
    • Nama dimasukkan ke kredit
  • Permintaan DMCA dan masalah hak cipta

    • Harus mengajukan banyak permintaan DMCA ke GitHub
    • Fork adalah fitur bawaan GitHub
    • Lisensi tidak mengizinkan fork
    • Ada risiko kehilangan hak cipta
    • Pengadilan kemungkinan akan menuntut perlindungan hak secara tegas
    • Pengalaman pengguna GitHub akan memburuk
  • Riwayat pribadi dengan Winamp

    • Pernah menulis plugin yang populer di masa lalu
    • Kode sumber Winamp 3 ditulis ulang sepenuhnya dalam C++
    • Kode sumber aslinya ditulis dalam C oleh Justin Frankel
  • Pesta MP3 saat kuliah pada 1999

    • Menggunakan MP3 alih-alih pengacak disk CD
    • Memutar musik secara acak dengan Winamp
    • Menikmati pesta tanpa jeda musik
    • Berterima kasih pada Winamp
  • Open-sourcing yang membingungkan

    • Open-sourcing perangkat lunak ini sangat membingungkan
  • Pemutar musik yang praktis

    • Memiliki antarmuka yang lebih praktis dibanding para pesaing
    • Menjalankan fungsinya tanpa grafis yang tidak perlu
  • Distorsi istilah "open"

    • Syarat lisensi tidak mengizinkan redistribusi atau penjualan kembali
    • Lebih tepat menyebutnya "source-available" daripada "open source"
  • Pembagian ilegal perangkat lunak server SHOUTcast

    • Ada kode yang dibagikan secara ilegal di repositori