Androidアプリケーションを、異なるビットレートで動的HTTPストリーミングを使用して複数のストリームをブロードキャストしているFTPサーバーに接続しようとしています.Flash Messaging Server(FMS)はH.264コーデックを使用してflv形式でビデオをブロードキャストしています.クライアント側(Android)異なるストリームを持つ f4m(manifest (xml) file)) を取得しています。f4m ファイルを使用して Android で FMS からビデオを取得できません。
String url = "http://d2233avv69kunu.cloudfront.net/hds-live/livepkgr/_definst_/liveevent/livestream.f4m";
Uri uri = Uri.parse(url);
// videoView.setVideoURI(uri);
videoView.setVideoPath(str);
MediaController mc = new MediaController(this);
//VMRuntime.getRuntime().setMinimumHeapSize(40);
mc.setAnchorView(videoView);
videoView.setMediaController(mc);
System.out.println("Max Memory - "+java.lang.Runtime.getRuntime().maxMemory());
videoView.requestFocus();
videoView.setOnPreparedListener(new OnPreparedListener()
{
public void onPrepared(MediaPlayer mp)
{
videoView.start();
}
});
上記のコードでは、f4m ファイルのリンクを渡すことで Video View コンポーネントでビデオを実行しようとしています。Flash エンコーダーは、動画を以下の 3 つのファイル形式に変換します。
- .f4m (マニフェスト ファイル) - ブートストラップ情報、メタデータ、ビットレート、フラッシュ アクセス ライセンス サーバーの場所
- .f4f (フラグメント ファイル) - F4V フォーマットの拡張、MP4 フラグメント標準
- .f4x (インデックス ファイル) - バイナリ
Android の HTTP ストリーミングを介して、さまざまな Android デバイスでビデオを再生するソリューションを提供してください。前もって感謝します。