Menarik Maklumat Trek dari Strim Audio Menggunakan PHP
Masalah:
Adakah ia boleh dilakukan untuk ekstrak butiran runut daripada aliran audio menggunakan PHP, khususnya daripada aliran AOL? Walaupun meneroka fungsi PHP yang tersedia, penyelesaian yang berdaya maju masih sukar difahami.
Jawapan:
Mengenal pasti Jenis Strim
Yang disediakan strim ialah strim SHOUTcast, yang mempunyai mekanisme tersendiri untuk menghantar metadata. Ia bebas daripada teg ID3.
Mewujudkan Sambungan Terus
Untuk mewujudkan sambungan terus dengan pelayan, gunakan fsockopen(), memastikan untuk menentukan port yang betul (biasanya 80 untuk strim yang dihoskan AOL).
Menghantar Permintaan
Bina permintaan seperti berikut:
GET /whatever HTTP/1.0 Icy-MetaData:1
Mendapatkan Selang Meta
Periksa pengepala respons untuk metaint icy nilai. Ini menunjukkan selang masa metadata dihantar.
Menyahkod Metadata
Selepas menerima 8192 bait data MP3, baca bait seterusnya. Ini menandakan permulaan metadata dan menunjukkan panjangnya. Darabkan nilai ini dengan 16 untuk menentukan bilangan bait untuk dibaca.
Pangkas rentetan yang terhasil untuk mengalih keluar sifar mengekor. Rentetan yang terhasil akan mengandungi metadata dalam format berikut:
Atas ialah kandungan terperinci Bolehkah PHP Mengekstrak Maklumat Jejak daripada AOL SHOUTcast Streams?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!