6 poin oleh GN⁺ 2023-08-15 | 1 komentar | Bagikan ke WhatsApp
  • Artikel tentang cara melewati pembatasan kecepatan unduhan video di YouTube
  • YouTube menghasilkan pendapatan dari tayangan iklan, dan menerapkan pembatasan untuk mencegah video ditonton atau diunduh melalui klien tidak resmi
  • Langkah pertama untuk melewati pembatasan kecepatan adalah berkomunikasi dengan API YouTube untuk menemukan URL sebenarnya yang berisi file video
  • YouTube menggunakan parameter khusus bernama n pada sebagian besar URL file, yang harus ditransformasikan menggunakan algoritma JavaScript yang berada di file base.js. Parameter ini berfungsi sebagai tantangan untuk memverifikasi apakah unduhan dimulai dari klien yang "resmi"
  • Karena algoritma JavaScript tersebut diobfuskasi dan sering berubah, mencoba memahaminya melalui rekayasa balik tidaklah realistis. Solusinya adalah mengunduh file JavaScript, mengekstrak kode algoritmanya, lalu menjalankannya dengan memberikan parameter n
  • YouTube tetap menerapkan aturan pembatasan kecepatan unduhan yang bervariasi berdasarkan ukuran dan durasi video. Untuk melewati pembatasan ini, unduhan dapat dipecah menjadi beberapa bagian kecil menggunakan header HTTP Range
  • YouTube mendistribusikan kanal video dan audio sebagai dua file terpisah. Langkah terakhir adalah menggabungkan kedua kanal ini menjadi satu file, yang dapat dilakukan menggunakan ffmpeg
  • Saat ini banyak proyek menggunakan teknik-teknik ini untuk melewati pembatasan yang dipasang guna mencegah pengunduhan video YouTube. Yang paling populer adalah yt-dlp yang diprogram dengan Python (fork dari youtube-dl), tetapi ini menyertakan interpreter JavaScript kustomnya sendiri untuk mentransformasikan parameter n
  • Artikel ini menjelaskan prosesnya dan menyediakan cuplikan kode, sehingga dapat diakses oleh insinyur perangkat lunak pemula

1 komentar

 
GN⁺ 2023-08-15
Komentar Hacker News
  • Artikel tentang cara melewati pembatasan unduhan video YouTube: membagi unduhan menjadi bagian-bagian kecil menggunakan header HTTP Range
  • Header HTTP Range: memungkinkan Anda menentukan bagian mana dari file yang ingin diunduh setiap kali mengirim permintaan
  • Beberapa pengguna: dengan menambahkan parameter kueri rentang, mereka dapat melewati pembatasan dan memulihkan kecepatan transfer
  • Laporan tentang pencabutan pembatasan YouTube: sebagian pengguna masih mengalami masalah pembatasan
  • Perubahan kecil YouTube: menyebabkan masalah pada alat yang perlu mengunduh file MP4 dari platform
  • Sebagian pengguna menemukan perbedaan kualitas video: mengisyaratkan bahwa YouTube mungkin menerapkan filter halus yang melembutkan artefak kompresi
  • Distribusi video YouTube: dipuji karena kelancarannya bahkan di wilayah dengan koneksi internet yang buruk
  • Diskusi tentang implikasi etis dari melewati pembatasan YouTube: sebagian berpendapat bahwa mengoptimalkan kecepatan browser biasa itu wajar, sementara yang lain merasa tidak adil karena menggunakan lebih banyak sumber daya YouTube
  • yt-dlp yang disebut dalam artikel: fork berbasis Python dari youtube-dl, mencakup interpreter JavaScript kustom untuk mengubah parameter