Tüm Sayfalar / 137 - HLS Encoder
Sayfa 137 / 161
Şifreleme & Güvenlik

HLS Encoder

Şarkılarınızı koruma altına alan şifreleme sistemi

Biz Ne Yaptık?

Şarkılarınızın çalınmasını önlemek için askeri seviye şifreleme sistemi kurduk. Her ses dosyası AES-256 ile şifrelenir ve sadece yetkili kullanıcılar dinleyebilir.

Eski Yöntem

  • Düz MP3 dosyaları sunucuda
  • URL bilenler indirebilir
  • Korsan dağıtım kolayca yapılır

Modern Mimari

  • AES-256: Askeri şifreleme
  • HLS Segmentler: 10 saniyelik parçalar
  • Signed URL: Zaman sınırlı erişim

Şarkı Nasıl Şifrelenir?

1. Şarkı Yüklenir

Admin panelden MP3, WAV, FLAC gibi formatlardan biri yüklenir.

2. Parçalara Bölünür

FFmpeg kullanılarak şarkı 10 saniyelik segmentlere ayrılır.

3. AES-256 Şifreleme

Her segment benzersiz bir anahtar ile şifrelenir. Anahtar olmadan çözülemez.

4. Hazır!

Şifreli dosyalar sunucuya kaydedilir. Artık sadece yetkili kullanıcılar dinleyebilir.

3 Katmanlı Güvenlik

AES-256

Bankalar ve devletlerin kullandığı şifreleme standardı

Signed URL

Linkler 5 dakika sonra geçersiz olur

Abonelik Kontrolü

Sadece aktif aboneler erişebilir

Bu Sayfanın Anahtar Terimleri

AES-256

(Advanced Encryption Standard)

256-bit anahtar kullanan güçlü şifreleme algoritması.

Kırılması için evrendeki atomlardan fazla deneme gerekir

HLS

(HTTP Live Streaming)

Apple'ın geliştirdiği, içeriği parçalara bölerek aktaran protokol.

Netflix, YouTube, Spotify hepsi bunu kullanır

Arkaplanda Neler Çalışıyor?

Ses dosyası HLS formatına dönüştürülürken arka planda şu işlemler gerçekleşir:

1. Dosya Yükleme ve Analiz

MP3/WAV/FLAC dosyası yüklendiğinde FFprobe ile dosya analiz edilir. Süre, bit rate, sample rate, kanal sayısı gibi bilgiler çıkarılır. Bu bilgiler encoding parametrelerini belirler.

ffprobe -v quiet -print_format json -show_format -show_streams input.mp3

2. Queue Job Oluşturma

Encoding işlemi zaman alıcı olduğu için Laravel Queue sistemine bir job eklenir. Admin beklemek zorunda kalmaz, işlem arka planda çalışır ve tamamlanınca bildirim alır.

ProcessHlsEncoding::dispatch($song)->onQueue('encoding')

3. FFmpeg Encoding

FFmpeg ile ses dosyası AAC formatına ve 3 farklı kalite seviyesine (64k, 128k, 256k) encode edilir. Her kalite için ayrı segment dosyaları (.ts) oluşturulur.

ffmpeg -i input.mp3 -c:a aac -b:a 128k -hls_time 10 -hls_list_size 0 output.m3u8

4. AES-128 Şifreleme

Segment dosyaları AES-128 ile şifrelenir. Encryption key ayrı sunucuda tutulur. Yetkisiz kullanıcılar dosyayı indirse bile çözemez, key olmadan dinleyemez.

-hls_key_info_file keyinfo.txt - Her şarkı için benzersiz key

5. Manifest Dosyası

Master playlist (.m3u8) oluşturulur. Bu dosya tüm kalite seviyelerini ve segment listelerini içerir. Player bu dosyayı okuyarak hangi kalitede çalacağına karar verir.

storage/app/hls/{song_id}/master.m3u8

6. Veritabanı Güncelleme

Encoding tamamlandığında şarkının durumu "ready" olarak güncellenir. HLS path ve süre bilgisi kaydedilir. Şarkı artık dinlenmeye hazırdır.

$song->update(['hls_path' => $path, 'status' => 'ready', 'duration' => $duration])
Orijinal Dosya
AES-256

Şifreleniyor...

Korumalı HLS
Kırılamaz Güvenlik

Şarkılarınız banka kasası gibi korunuyor