5
私は、ビデオ用のAndroid MediaPlayerデモを使用しています。私は640x480のビデオをストリーミングしています。私は単に、アスペクト比を維持しながらビデオを(どんなデバイス方向でも)できるだけ大きくすることを望んでいます。私はこれをすることができません。画面全体に広がるだけです。レイアウト内のSurfaceViewは、「fill_parent」または「wrap_content」のいずれかで縦横比を維持しません。私がチェック(およびコード内の表面サイズを変更すると、すべての変更を無視するようで、どのような奇妙なのは、私は自分のビデオサイズは、このコードでは聞いています:。176×144Androidストリーミングビデオ - アスペクト比が必要
public void onVideoSizeChanged(MediaPlayer mp, int width, int height)
{
Log.v(TAG, "onVideoSizeChanged called");
Log.v(TAG, "Surface Width: " + width + " Surface Height: " + height);
if (width == 0 || height == 0) {
Log.e(TAG, "invalid video width(" + width + ") or height(" + height + ")");
return;
}
mIsVideoSizeKnown = true;
mVideoWidth = width;
mVideoHeight = height;
mVideoWidth = mp.getVideoWidth();
mVideoHeight = mp.getVideoHeight();
Log.v(TAG, "Surface Width: " + mVideoWidth + " Surface Height: " + mVideoHeight);
if (mIsVideoReadyToBePlayed && mIsVideoSizeKnown) {
startVideoPlayback();
}
}
これはどこです私が試してみて、サイズを変更:
private void startVideoPlayback() {
Log.v(TAG, "startVideoPlayback");
holder.setFixedSize(mVideoWidth, mVideoHeight);
mMediaPlayer.start();
}
思考