视频播放区CROP功能问题

时间:2018-11-18 12:45:08

标签: video view crop textureview

已实现视频播放。我正在使用TextureView或SurfaceView播放视频。

这里,选择特定区域的坐标值x,y,w和h都已导入。

但是实际上,如果您在Textureview或Surfaceview中使用矩阵给出比例,则位置不正确。

我不知道问题是什么。你认识谁?找到下面的值以获取源。

public void onCrop(int nLeft,int nTop,int nRight,int nBottom,int nCenterX,int nCenterY,int nCropWidth,int nCropHight)     {

    float fScaleX = (float)m_TextureView.getWidth()  / (float)nCropWidth;
    float fScaleY = (float)m_TextureView.getHeight() / (float)nCropHight;

    Matrix matrix = m_TextureView.getMatrix();
    matrix.setScale(fScaleX, fScaleY, nCenterX, nCenterY);
    m_TextureView.setTransform(matrix);

    if (nCropWidth < nCropHight)
    {
        m_TextureView.setLayoutParams(new FrameLayout.LayoutParams(m_nBottom - m_nTop, m_nRight - m_nLeft, Gravity.CENTER));
    }
    else if(nCropHight < nCropWidth)
    {
        m_TextureView.setLayoutParams(new FrameLayout.LayoutParams(m_nRight - m_nLeft, m_nBottom - m_nTop, Gravity.CENTER));
    }

}

0 个答案:

没有答案