これを行うためのさまざまな方法を見てきましたが、どれも具体的ではありません (そして、それらを実装する私の試みはすべて失敗しました)。
Blackberry で http ビデオをストリーミングする既知の方法はありますか? サンプルコード、チュートリアル、何か?
私が見つけた最も近いものは次のとおりです。
上記のチュートリアルですが、いくつかの問題があります。
まず、提供されるサンプル コードはローカル ビデオ用です (正常に再生できます)。「任意の有効な URL」が HTTP ストリーミングで機能すると主張していますが、既知の適切な .sgp URL を提供しても何も起こらないため、これは明らかに誤りです。
createPlayer メソッドには InputStream を受け入れる機能があり、有望に思えたので、サンプル コードを次の行に変更しました。
// player = Manager.createPlayer("file:///SDCard/eggs.3gp");
HttpConnection c = (HttpConnection)Connector.open("http://good-3gp-videos.com/viapic/e39903da6e5c1e1c5d572a49a88a99e6.3gp");
int rc = c.getResponseCode();
if (rc != HttpConnection.HTTP_OK) {
throw new IOException("HTTP response code: " + rc);
}
player = Manager.createPlayer(c.openInputStream(), null);
player.realize();
文字列から作成された以前のプレーヤーの代わりに (私のソースではコメントアウトされています)。
ただし、これによりまったく同じ問題が発生します(具体的には、ビデオを再生しようとすると、「JUMエラー104:キャッチされていないNullPointer例外」が表示されます。)
URL から読み取ろうとする両方の方法で、Null 応答が返されるようです。
これは初めての Blackberry アプリなので、デバッグ方法にあまり慣れていません (たとえば、サンプル コードで System.out.println() 呼び出しが何度かありますが、コンソールに表示されることはありません)。 .
コードをデバッグするにはどうすればよいですか? あるいは、HTTP ビデオをストリーミングする正しい方法は何ですか?
コードを少し変更する (Stream Connection にキャストを追加する) と、null ポインター エラーが解消されますが、何もクラッシュせず、例外もありませんが、まだストリーミングされません。
シミュレーターはストリーミングできないと確かに聞いたことがありますが、コードを電話に入れることもできません。
さらに紛らわしいのは、私のシミュレーターも実際の電話も m.youtube から RTSP をストリーミングできないことです。サーバー/コンテンツが見つかりませんというエラーが表示されます。
職場のファイアウォールが何か重要なことを妨げている可能性はありますか?