7

MediaPlayer を使用して、TextureView で動画を再生しています。TextureView のサイズは固定で、動画のサイズは異なります。ビデオを再生しますが、問題はビデオの一部が外側にあり、ビデオが TextureView に合わせて縮小されていないことです。

黒い長方形 + 写真 (ビデオ) が TextureView です。赤い長方形は実際のビデオです。もちろん、問題を示すために描きました。

そのため、ビデオの一部のみが表示され、残りは表示されません。

すべてのビデオを表示し、元のスケール比を維持したい。

ありがとう。

ここに画像の説明を入力

// The class implements SurfaceTextureListener 

// Set TextureView to MediaPlayer
m_TextureView.setSurfaceTextureListener(this);

@Override
public void onSurfaceTextureAvailable(SurfaceTexture surfaceTexture, int width, int height) {
    m_MediaPlayer = new MediaPlayer();
    m_MediaPlayer.setSurface(new Surface(surfaceTexture));
}

// Play video
m_MediaPlayer.reset();
m_MediaPlayer.setDataSource(videoFilePath);
m_MediaPlayer.prepare();
m_MediaPlayer.start();
4

0 に答える 0