ホームページ >バックエンド開発 >PHPチュートリアル >PHP はオーディオ ストリームからトラック情報を抽出できますか?
PHP を使用してオーディオ ストリームからトラック情報を取得する
PHP を使用してオーディオ ストリームからトラック情報を抽出できるかどうかを判断することで、 stream_get_transports 関数に。ただし、fsockopen() による HTTP トランスポートのサポート制限に遭遇した場合は、代替方法を検討する必要があります。
メタデータ抽出の詳細
幸いなことに、ファイルからトラック情報を抽出できます。特に SHOUTcast ストリームの場合、オーディオ ストリームが可能です。この操作は ID3 タグの抽出とは異なり、独自のアプローチが必要です。
接続の確立
適切なポート (例: 、ポート80)。 HTTP リクエストを使用してサーバーと通信し、Icy-MetaData:1 ヘッダーを含めてメタデータをリクエストします。
メタ間隔について
サーバーは、次のヘッダーで応答します。メタ間隔を示す icy-metaint 値。この間隔は、ストリーム内のメタデータ パケットの頻度を決定します。
メタデータの読み取りと解析
8192 バイトの MP3 データを破棄し、次に、メタデータパケットの長さ。このバイト値に 16 を掛けて、メタデータとして読み取るバイト数を決定します。
情報の分割と取得
メタデータ文字列をトリミングしてパディングを削除します。文字列を「;」で分割して解析します。
オプションのリソース
SHOUTcast メタデータの取得の詳細については、次のような外部リソースを参照してください。 https://web.archive.org/web/20191121035806/http://www.smackfu.com/stuff/programming/shoutcast.html.
以上がPHP はオーディオ ストリームからトラック情報を抽出できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。