Skip to content
tarikelertarnakPublic

About

Modern, cross-platform media player with music, video, audio, plugins and AI integration.

Topics

Resources

Stars

3 stars

Watchers

2 watching

Forks

Repository files navigation

Player 1.0.0

Müzik, video, ses... uygulaması. Pek çok özelliğiyle eklentiler ve yapay zeka. Sade bir arayüz ve kullanıcı dostu bir yapı benimsedim.

Player — Modern, çapraz platform medya oynatıcı. Müzik, video ve ses dosyalarını oynatır; eklenti sistemi ve AI entegrasyonu ile genişletilebilir.


⬇️ Download Page

Release Downloads Platform


💻 Operating System

Player 5 platformda hazır paketlenmiş olarak indirilebilir. Her platform için ayrı derlenmiş binary sunulur — kullanıcının kendi derlemesine gerek yoktur.

Platform İşletim Sistemi Mimari İndirme
Windows 🪟 Windows x86-64 (Setup installer) Player-1.0.0-setup-x64.exe • 106 MB
macOS 🍎 macOS Intel (x64) + Apple Silicon (arm64) DMG Player-1.0.0.dmg • indirilebilir
Linux 🐧 Linux x86-64 (AppImage / deb / rpm) Player-1.0.0.AppImage • indirilebilir
Android 🤖 Android ARM64 + ARMv7 (APK) — 3.4 MB Player-1.0.0.apk • indirilebilir
iOS 🍎 iOS ARM64 (IPA) Player-1.0.0.ipa • indirilebilir

ℹ️ Tüm platformlar için derlenmiş binary'ler Releases sayfasında. Windows için Setup installer (NSIS) önerilir.


📥 Download Page

Doğrudan linkler (son sürüm v1.0.0):

İşletim Sistemi Tip Dosya Boyut
🪟 Windows x86-64 (Setup) Player-1.0.0-setup-x64.exe 106 MB
🪟 Windows x86-64 (Portable) Player-1.0.0-portable-x64.exe 94 MB
🐧 Linux x86-64 (AppImage) Player-1.0.0-linux-x86_64.AppImage indirilebilir
🐧 Linux x86-64 (deb) Player-1.0.0-linux-amd64.deb indirilebilir
🐧 Linux x86-64 (rpm) Player-1.0.0-linux-x86_64.rpm indirilebilir
🍎 macOS x64 + arm64 (DMG) Player-1.0.0.dmg indirilebilir
🤖 Android ARM (APK) Player-1.0.0.apk indirilebilir
🍎 iOS ARM64 (IPA) Player-1.0.0.ipa indirilebilir
📦 Source zip / tar.gz Player-1.0.0-source.zip 86 MB

💡 Tüm platformlar için binary hazır — kullanıcının kendi derlemesine gerek yok. macOS / iOS sertifikalı değildir; ilk açılışta "Geliştirici onaylanmamış" uyarısı çıkabilir (sistem ayarlarından izin verilebilir).


Özellikler

🎵 Medya Oynatma

  • Desteklenen Formatlar: MP3, FLAC, WAV, M4A, OGG, AAC, WMA, MP4, MKV, AVI, WEBM
  • Video Oynatma: Tam video desteği
  • Ses Görselleştirici: 3D spektrum analizörü + dalga formu
  • 10 Bantlı Ekolayzer: Grafik ekolayzer ile ses profili oluşturma
  • Ses Efektleri: Hız değiştirme, yankı, kompresör, filtreler
  • Altyazı Desteği: SRT/VTT yükleme, zaman çizelgesinde takip, tıklayarak atlama

🤖 Yapay Zeka

  • AI Sohbet: Eklenti oluşturmak için AI desteği (OpenRouter API)
  • AI Güvenlik Analizi: Eklentileri yüklemeden önce AI ile analiz etme
  • AI Sağlayıcı: OpenRouter, OpenAI, Anthropic, Google ve özel uç nokta desteği

🧩 Eklenti Sistemi

  • Eklenti Mağazası: Keşfet, indir, kur
  • Eklenti Oluşturma: AI sohbet ile eklenti geliştirme
  • GitHub Yayınlama: Eklentileri doğrudan GitHub'a yayınlama
  • Güvenlik: AI destekli güvenlik analizi, erişim seviyesi değerlendirmesi

🎨 Arayüz

  • Sade ve Modern: Tailwind CSS ile temiz, minimal tasarım
  • Tamamen Türkçe: Menüler, ayarlar, bildirimler
  • Koyu/Açık Tema: İki tema seçeneği
  • Özelleştirilebilir Renk: Vurgu rengi seçimi
  • Saydamlık Ayarı: Pencere saydamlığı
  • Mini Mod: Küçültülmüş pencere modu
  • Tam Ekran Medya: Sadece medya içeriği ile tam ekran deneyimi

📂 Kütüphane Yönetimi

  • Kategori bazlı müzik kütüphanesi
  • Sürükle-bırak dosya ekleme
  • YouTube URL'den müzik indirme (FFmpeg ile)
  • Ses dosyası metaveri okuma (ID3 etiketleri)

⌨️ Kısayol Tuşları

  • Boşluk: Oynat/Duraklat
  • Ctrl+→ / ←: İleri/Geri
  • Ctrl+↑ / ↓: Ses aç/kapa
  • F11: Mini mod
  • F: Tam ekran medya
  • C: Altyazı aç/kapa (YouTube tarzı)
  • L: Altyazı paneli
  • Escape: Tam ekrandan çık

🆕 Son Eklenen Özellikler

  • Uyku Zamanlayıcısı: Belirli dakika sonra otomatik duraklatma
  • Ses Boost: %100-%200 arası ses artırma (kırmızı gösterge)
  • Otomatik Bypass: EQ ve efektler 0'dayken ses işleme devre dışı (kalite artışı)
  • Geri Dönüşüm Silme: Sağ tık > Sil dosyayı geri dönüşüme gönderir
  • Daraltılabilir Playlist: Çalışma listesi küçültülüp büyütülebilir
  • Global Görselleştirici: Tüm sekmelerde ses dalgası/spektrum görünür

Kurulum

  1. Player Setup 1.0.0.exe dosyasını çalıştırın
  2. Kurulum sihirbazını takip edin
  3. Uygulamayı başlatın

Sistem Gereksinimleri

Bileşen Gereksinim
İşletim Sistemi Windows 10/11, macOS 10.15+, Linux (Ubuntu 20.04+/Fedora 38+)
RAM En az 4 GB
Depolama 500 MB boş alan
İsteğe Bağlı FFmpeg (YouTube indirme), git, Node.js 18+ (geliştirme)

🔧 Platformlar Arası Derleme

Player Windows, macOS, Linux, Android ve iOS için derlenebilir.

📦 Neden APK (3.4 MB) ile Windows EXE (84 MB) Arasında Büyük Fark Var?

Bu normaldir ve endişelenecek bir durum değildir:

Platform İçerik Yaklaşık Boyut
Windows / macOS / Linux (Electron) Chromium (~80 MB) + Node.js + uygulama kodu 80–150 MB
Android (APK) Sadece Capacitor runtime + HTML/CSS/JS bundle. WebView ve medya codec'leri (ExoPlayer/MediaPlayer) işletim sisteminden gelir. 3–5 MB
iOS Sadece Capacitor runtime + HTML/CSS/JS bundle. WKWebView ve AVFoundation işletim sisteminden gelir. 3–5 MB

APK ve iOS paketleri gerçek birer medya oynatıcıdır; sadece görsel değildir. Tüm ses/video formatları (mp3, flac, mp4, mkv, vb.) işletim sisteminin native codec'leri ile çalınır. Sadece uygulama kabuğu (HTML/CSS/JS) pakete dahil edilir, çünkü WebView ve medya motoru zaten cihazda mevcuttur.

# Bağımlılıkları yükle
npm install

# Web derlemesi
npm run build-web

# ── Windows ──
npm run build                    # NSIS installer (x64 + ia32)
npm run build:win:portable       # Portable executable (x64)
npm run build:win:zip            # ZIP archive (x64)
# Çıktı: dist/Player-{version}-x64.exe

# ── macOS ──
npm run build:mac                # DMG + ZIP (x64)
npm run build:mac:arm            # Apple Silicon (ARM64)
npm run build:mac:zip            # ZIP only (x64)
# Çıktı: dist/Player-{version}-mac-{arch}.dmg

# ── Linux ──
npm run build:linux              # AppImage + deb + rpm (x64)
npm run build:linux:appimage     # Sadece AppImage
npm run build:linux:deb          # Sadece Debian/Ubuntu paketi
npm run build:linux:rpm          # Sadece Fedora/RHEL paketi
# Çıktı: dist/Player-{version}-linux-{arch}.AppImage

# ── Tümü ──
npm run build:all:desktop        # Win + Mac + Linux
npm run build:all                # Tüm platformlar + tüm hedefler
npm run release                  # Build + GitHub'a yükle

# ── Android ──
npm run mobile:init              # Capacitor bağımlılıklarını yükle
npm run mobile:android           # Android Studio ile aç
# Not: Android SDK kurulu olmalı

# ── iOS ──
npm run mobile:init              # Capacitor bağımlılıklarını yükle
npm run mobile:ios               # Xcode ile aç
# Not: macOS + Xcode gerekli

# ── Geliştirme ──
npm run start:dev                # Vite HMR + Electron canlı yeniden yükleme

macOS İmzalama (Noterizasyon)

macOS dağıtımı için Apple Developer hesabı gerekir:

export APPLE_ID="ornek@email.com"
export APPLE_APP_SPECIFIC_PASSWORD="xxxx-xxxx-xxxx-xxxx"
export APPLE_TEAM_ID="TEAMID"
npm run build:mac

Platform Mimarisi

Mimarî Windows macOS Linux Android iOS
x86-64 ✅ NSIS ✅ DMG/ZIP ✅ AppImage/deb/rpm — —
ARM64 — ✅ DMG/ZIP ✅ AppImage/deb ✅ ✅
x86-32 ✅ NSIS — — — —

Hızlı Başlangıç

# Uygulamayı açın
# Dosyaları sürükleyip bırakın veya "Aç" butonunu kullanın
# Çalmak istediğiniz şarkıya tıklayın
# Ekolayzer ve efektleri özelleştirin
# Eklentiler ile genişletin
# AI ile eklenti oluşturun

Eklenti Geliştirme

Detaylı rehber: EKLENTI_YAPMA.md

Player, JavaScript tabanlı eklentileri destekler. Eklentiler;

  • Yeni özellikler ekleyebilir
  • Yeni sayfalar oluşturabilir
  • Tema/skin değiştirebilir
  • API entegrasyonları yapabilir

Kullanım Kılavuzu

Detaylı kullanım: KULLANIM_KILAVUZU.md


Teknolojiler

Teknoloji Amaç
Electron 28 Masaüstü uygulama çatısı
React 19 Kullanıcı arayüzü
Vite 8 Derleme aracı
Tailwind CSS 4 Stil çatısı
Zustand Durum yönetimi
Tone.js Ses işleme (ekolayzer/efektler)
Three.js 3D görselleştirici
lunr.js Yerel arama motoru
Wavesurfer.js Dalga formu gösterimi
electron-builder Cross-platform installer (Win/Mac/Linux)
Capacitor Android/iOS mobil sarmalayıcı

Vizyon

"It's a music, video, audio... application with many features like plugins and artificial intelligence. I've adopted a simple interface and user-friendly structure."

Player, basit bir medya oynatıcı fikrinden doğdu. Zamanla eklenti sistemi, AI entegrasyonu ve görsel araçlarla zenginleşti. Ama özünde hep sade ve kullanıcı dostu kaldı.


📚 Kütüphaneye İçerik Ekleme

Kütüphane ekranının sağ üstündeki ☰ (hamburger) butonuna tıklayın. Açılan menüden bir içerik türü seçin:

Seçenek Açıklama
📁 Dosya Ekle Tek veya birden çok ses/video dosyası seçin (mp3, wav, flac, mp4, mkv, vb.)
📂 Klasör Ekle Tüm medya içeren bir klasör seçin — uygulama klasörü özyinelemeli olarak tarar
🗜️ ZIP Ekle .zip arşivi seçin — içindeki medya dosyaları otomatik çıkarılır ve eklenir
🔗 URL / Bağlantı Ekle http(s):// ile başlayan doğrudan medya bağlantısı (mp4, m3u8, mp3, vb.)
▶️ YouTube Linki Ekle youtube.com/watch?v=... veya youtu.be/... — yt-dlp ile indirilir

Özellikler:

  • ✅ Platform bazlı izin kontrolü (Android: STORAGE, iOS: PHOTO_LIBRARY, masaüstü: doğrudan erişim)
  • ✅ Tüm eklenen öğeler SQLite'a kaydedilir (path, type, title, thumbnail, date_added)
  • ✅ Thumbnail'lar userData/thumbnails/ altında önbelleğe alınır
  • ✅ Duplicate kontrolü: aynı path zaten varsa atlanır, kullanıcıya bildirilir
  • ✅ ZIP dosyalarında Zip Slip açığı önlenir (extract path doğrulaması)

🛠️ Geliştirici Notları

SQLite Şeması (sql.js)

Veritabanı: userData/player-library.db

Tablo Amaç
tracks Tüm medya öğeleri (id, title, artist, album, location, duration, picture, addedAt, playCount, lastPlayed, favorite, lyrics)
playlists Kullanıcı çalma listeleri
playlist_tracks Playlist-track ilişki tablosu
categories Kullanıcı kategorileri
track_categories Track-category many-to-many
eq_presets Ekolayzer preset'leri
track_eq Track-spesifik EQ ayarları
scrobbles Dinleme geçmişi
settings Key-value store (key, value, updatedAt)
cache_metadata Thumbnail önbellek metadata (cacheKey, path, size, mimeType, expiresAt)

Önbellek Yapısı

  • LRU Bellek Cache: Son 100 thumbnail Map'te (LRU eviction) — Code/src/lib/lru-cache.js
  • Disk Cache: userData/thumbnails/{hash}.jpg (SHA-256 prefix, 12 karakter)
  • TTL: 7 gün (DEFAULT_TTL_MS), cache_metadata tablosunda expiresAt ile
  • Hash: Dosya adı + boyut → SHA-256 → 12 char prefix

Güvenlik Katmanı (Code/src/lib/security.js)

  • sanitizePath() — path traversal (..) ve mutlak yol engeli
  • escapeHtml() — XSS önlemi (kullanıcı girdisi → HTML)
  • escapeUrl() — javascript:, vbscript:, data: tehlikeli scheme'lerini engelle
  • parseSafeUrl() — URL API ile, sadece http(s): kabul eder
  • parseYouTubeUrl() — sadece bilinen YouTube domain'leri (youtube.com, youtu.be, /shorts/, /embed/)
  • isSafeZipEntry() — Zip Slip önlemi (entry path .. içeremez, base dışına çıkamaz)
  • getMediaType() — izin verilen ses/video uzantıları whitelist

IPC Handler'lar (src/main.js)

  • add-music-files — Tek/çoklu dosya seçici
  • add-music-folder — Klasör seçici + recursive tarama
  • add-music-compressed — ZIP açma + tarama
  • add-music-link — HTTP(S) URL / YouTube indirme
  • validate-location — Path doğrulama (güvenlik)
  • select-source-files / select-source-folder — Source bundle için

Platform-Spesifik

  • Windows: System tray (src/platform/tray.js), Media Foundation codec'leri
  • macOS: Menu bar (src/platform/menu.js), Keychain erişimi, dark mode
  • Linux: AppImage self-contained, libnotify, xdg-open
  • Android: MediaSession API, STORAGE izni, immersive mode
  • iOS: AVAudioSession, MPNowPlayingInfoCenter, document picker

Build Süreci

npm install
npm start              # development (Vite + Electron)
npm run build-web      # sadece Vite build
npm run build          # Windows NSIS installer
npm run build:win:portable
npm run build:mac      # macOS DMG (x64+arm64)
npm run build:linux    # Linux AppImage/deb/rpm
npm run mobile:android # Capacitor sync + Android Studio
npm run mobile:ios     # Capacitor sync + Xcode

Lisans

© 2026 TARIK ELER — Tüm hakları saklıdır.


Player — Müzik deneyiminizi yeniden tanımlayın.

About

Modern, cross-platform media player with music, video, audio, plugins and AI integration.

Topics

Resources

Stars

3 stars

Watchers

2 watching

Forks

Releases

Packages

Contributors

Languages