アイスキャストストリーミングラジオから曲名を抽出したいと思っています。私は氷 - ジャンル、氷 - 名前nのものを得ています。曲名ではありません。ストリームから抽出できますか?アイスキャストストリーミングラジオの曲名を抽出しているiPhone
2
A
答えて
4
私はあなたがすでにIcy-Metadataを追加したと推測しています。
"icy-metaint"レスポンスヘッダーを読む必要があります。これは、ストリーム内の各メタデータの更新の間に読み込むバイト数を示します。
次の擬似コードです:
byteinterval = int(response.getHeader("icy-metaint"))
stream = response.getBodyStream()
stream.read(byteinterval)
metadata_len = byte(stream.read(1)) * 16
metadata = stream.read(metadata_len)
メタデータは、次のようなものになります。
StreamTitle='Some Song Name Stream Client Sent';StreamUrl='http://someurl.com/';
を残念ながら完全なメタデータバッファのエンコーディング、または内容のどちらかには絶対的な基準はありませんStreamTitle。
曲名には、アルバム名、アーティスト名、曲名などのフィールドが含まれる場合もあります。
メタデータバッファ自体は、UTF-8であってもなくてもよい。何を注入するかはストリーミングクライアントが決定します。まともなクライアントは、ASCII以外のデータを送信するように強制された場合はUTF-8を使用しますが、Windows-1521やUTF-16などのネイティブエンコーディングを送信する場合もあります。
メタデータの更新を継続したい場合は、「byteinterval」バイトの長さのブロックを単純に消費して、メタデータの更新を増やしたり、後でストリームを切断してポーリングしたりできます。
関連する問題
- 1. 曲のタグを抽出する
- 2. 曲線からドットを抽出する
- 3. 2Dへの曲線の抽出
- 4. iPhone:最初の曲は、バッファリングを通じてマイアプリソングプレイで次の曲
- 5. 抽出ファイル名
- 6. 抽出テーブル名
- 7. 抽出名前
- 8. HTML5ウェブオーディオAPIを使用してmp3ファイルの曲の周波数を抽出
- 9. ファイル名を抽出する
- 10. iPhoneでUISegmentedControlの画像を抽出
- 11. EXIFを使用して元のイメージ名を抽出する
- 12. 抽出スクリプト名URL
- 13. 抽出はUCSC名
- 14. Rのファイル名を抽出して使用する方法R
- 15. "invokables"の署名を抽出する
- 16. 関数を使用して列名を抽出する
- 17. テーブルをマージして名前を抽出する
- 18. Ansible:デバッグを介してファイル名を抽出する
- 19. VBScript抽出したzipファイルのフォルダ名
- 20. 名前を別の名前リストと照合してラスターファイルを抽出します
- 21. 基本名を抽出してパスに追加する方法
- 22. HTMLから抽出して特定の行を抽出する
- 23. UNIXの場合:ファイル名の一部を抽出し、新しい名前
- 24. ファイル名を含まないパス名の抽出方法
- 25. 曲コンテンツベースの特徴抽出コードはありますか?
- 26. 曲線衛星からの領域抽出データセット
- 27. 異なる.appの名前 - 新しい提出iPhone
- 28. すべてのフォーム要素を抽出します。名前htmlagilitypack
- 29. phingでphpファイル名を抽出する
- 30. LLVMで名前を抽出するIR
[Pythonで曲名を取得する方法](http://stackoverflow.com/a/35104372/4279) – jfs