İçeriğe geç
Tüm projeler
AraçlarAçık kaynak

PowerShell CLI Audio Streamer

Ağır GUI bileşenlerini atlayarak internet radyo endpoint'lerini doğrudan `mpv` motoru üzerinden oynatan, otonom ve son derece düşük kaynak tüketimine sahip CLI tabanlı PowerShell aracı.

Teknoloji yığını

Çatılar & kütüphaneler
Araçlar

Performans & metrikler

  • Bellek ayak izini (memory footprint), standart web çalarların (~300MB) tüketiminden, yalnızca mpv daemon'unun ve uyku halindeki bir PS oturumunun ihtiyaç duyduğu minimum seviyeye indirger
  • Windows DWM (Desktop Window Manager) katmanını tamamen atlayıp headless donanımsal ses kod çözmeye (hardware decoding) zorlayarak grafik işleme maliyetlerini (overhead) sıfırlar

Neden geliştirdim?

Tarayıcılar ve Electron tabanlı müzik çalarlar, basit bir ses akışı için dahi devasa RAM ve CPU tüketirler. Bu aracı, arayüz şişkinliğini (GUI bloat) tamamen aradan çıkarıp, ses akışlarını doğrudan yüksek düzeyde optimize edilmiş mpv daemon'una yönlendirmek (pipe) amacıyla yazdım. Geliştirme ortamlarında arka planda çalışırken sistem ayak izini (footprint) neredeyse sıfıra indirir.

Mimari & kararlar

PowerShell host'u üzerinde çalışan senkron bir REPL döngüsü olarak yapılandırılmıştır. İstasyon metadataları ve ağ endpoint'leri bellek içi (in-memory) bir hashtable dizisinde tutulur. Akış yönlendirmesi, video render kancaları (hooks) açıkça devre dışı bırakılarak (--no-video), & çağrı operatörü (call operator) üzerinden mpv motoruna delege edilir. Kullanıcının SIGINT (Ctrl+C) sinyali ile alt süreci (subprocess) kesmesi durumu, PipelineStoppedException yakalanarak güvenli bir şekilde (graceful teardown) sonlandırılır.

Temel özellikler

  1. 01Alt süreç (subprocess) delegasyonu ile mpv motoru üzerinden tamamen headless (arayüzsüz) ses akışı
  2. 02Menü indeksi seçimlerinde bellek erişim ihlallerini önlemek için [int]::TryParse kullanılarak uygulanan katı tip doğrulaması (strict type validation)
  3. 03Alt sürecin zombi process bırakmadan temiz bir şekilde sonlandırılmasını sağlayan kararlı SIGINT interrupt yönetimi

Araçlar

OCR: PNG'den Metne Çevirici

PNG formatındaki görsellerden toplu (batch) olarak metin çıkaran ve bunları düzenlenebilir dosyalara dönüştüren, manuel veri girişini ortadan kaldıran otomatik bir optik karakter tanıma aracı.

  • Python
  • Tkinter
  • Tesseract OCR
  • +2

Araçlar

Terminal Sınav Simülatörü

Soruları ve cevapları ham metin dosyalarından okuyan, kullanıcı girdilerini değerlendiren ve sonuçları terminal üzerinden hesaplayan hafif bir sınav simülatörü.

  • Java
  • File I/O

Araçlar

Open Me Daily (Telemetri Tuzağı)

Kendi çalışma sıklığını izleyen ve kullanıcının hareketsizliğini (inactivity) disk alanını suni olarak şişirerek cezalandıran bir arka plan telemetri uygulaması.

  • C++
  • SQLite

Benzer bir ihtiyacınız mı var?

Bu tür bir sistemi sizin için de kurabilirim.

Projenizi birkaç cümleyle anlatın; doğru yaklaşımı ve tahmini kapsamı birlikte belirleyelim.