デバイスから Chromecast にローカル mp3 ファイルを送信したいと考えています。私はすでにNanohttpdのバージョンを実行しており、うまく動作しています。テレビで問題なく曲を再生できます:
MediaMetadata mediaMetadata = new MediaMetadata(MediaMetadata.MEDIA_TYPE_MUSIC_TRACK);
MediaInfo mediaInfo = new MediaInfo.Builder(
"http://192.168.0.XX:8080")
.setContentType("audio/mp3")
.setStreamType(MediaInfo.STREAM_TYPE_BUFFERED)
.setMetadata(mediaMetadata)
.build()
mRemoteMediaPlayer.load(mApiClient, mediaInfo, true) .....
...ここで、「http://192.168.0.XX:8080」はサーバーの URL です。
ここで、mediaMetadata にカバーを追加したいのですが、この画像は次のように WebImage として Cromecast に送信されるため、画像ファイルも提供する必要があります。
mediaMetadata.addImage(new WebImage(Uri.parse("My Url in Nanohttpd ")));
リソースから直接 WebImage を作成することは可能でしょうか??
そうでない場合、両方(歌と絵)を同時に提供する方法はありますか?http://192.168.0.XX:8080/song の曲と http://192.168.0.XX:8080/image の画像またはそのようなものを提供できるかもしれませんが、方法がわかりません。 ..
これが私の現在の Nanohttpd serve メソッドです。
@Override
public Response serve(String uri, Method method,
Map<String, String> header,
Map<String, String> parameters,
Map<String, String> files) {
String mediasend = "audio/mp3";
FileInputStream fis = null;
File song = new File(songLocalPath);
Log.e("Creando imputStream", "Size: ");
try {
fis = new FileInputStream(song);
} catch (FileNotFoundException e) {
e.printStackTrace();
}
Response.Status st = Response.Status.OK;
return new NanoHTTPD.Response(st, mediasend, fis,song.length());
}
これに対するすべてのアプローチは歓迎されます。