Rhapsody 音楽サービス SDKと対話する iOS アプリを作成しています。音楽ファイルの RAD 部分と EA 部分を結合する必要があるところで行き詰まっています。彼らのドキュメントによると:
トラック再生情報が返されたら、Rhapsody オーディオ データの取得を開始できます。まず、getTrackPlaybackInfos メソッドから返されたメディア URL プロパティをクライアントに読み込みます。ストリーミングが許可されている Rhapsody 形式のほとんどは、RAD/EA と呼ばれる Rhapsody で使用されるセキュリティー方式を必要とします。RAD/EA セキュリティ モデルでは、トラックの大部分 (オーディオの RAD 部分と呼ばれます) を HTTP 経由ですぐにダウンロードできます。次にクライアントは、ファイルの暗号化された小さな部分 (ファイルの EA 部分と呼ばれる) を 30 秒ごとにダウンロードして、音楽ファイル全体を構成します。
メディア URL に RAD が含まれている場合は、getEA メソッドを呼び出してエッセンシャル オーディオ (EA) を取得します。cal から getTrackPlaybackInfos に返されたセッション ID、RAD バージョン (Rhapsody Direct 担当者から特に指示がない限り、3)、フォーマット、およびビットレートを使用します。オーディオ トラック全体を再生するには、getEA メソッドを複数回呼び出す必要があります。position パラメーターには、オーディオ データの取得を開始する EA ブロック内のオフセットが含まれ、count パラメーターには、返される実際のバイト数が含まれます。たとえば、getEA の最初の呼び出しで、position パラメータを 0 に設定し、count パラメータを 4096 に設定できます。これにより、トラックの先頭から始まる 4096 バイトのオーディオ データが返されます。EA を取得するための 2 回目の cal では、
RADファイルは簡単に見つけることができます。しかし、RAD ファイルと EA ファイルをストリーミング可能/再生可能なメディア ファイルに再結合する方法がよくわかりません。Google に失敗したのはこれが初めてだと思います。進め方のヒントすら見つからない。