からバイト配列を受け取ることができますSocket
。このバイト配列からオーディオを再生する必要があります-オーディオはAMR8000Hzでエンコードされています。
でAMRオーディオを再生できることがわかりましたMediaPlayer
。ただし、MediaPlayer
バイト配列から音楽を再生することはできません。ファイルに書き込みたくありません。
Androidでバイト配列からAMRサウンドを再生する方法はありますか?
AudioTrack
Android フレームワークでは、クラスを使用してメモリからオーディオ データを直接再生できます。欠点は、オーディオを既に PCM データにデコードする必要があることです。幸運にも Android 4.1 をターゲットにすることができた場合は、データを個別にデコードしてデータを渡すことができる新しい API がありますAudioTrack
(MediaExtractor
およびを参照MediaCodec
)。MediaRecorder
ただし、それ以前は、およびを超えてエンコード/デコードするための API は公開されていませんでしたMediaPlayer
。
4.1 より前のバージョンの Android をターゲットにしている場合 (おそらくそうであると思います)、次の 2 つのオプションがあります。
AudioTrack
MediaPlayer
HTH