android上的pjsip视频不是全屏

时间:2018-02-21 12:31:00

标签: android video pjsip

当我进行视频通话时,视频与SurfaceView不匹配,视频被拉伸。我该怎么做才能让它充满SurfaceView?谢谢你的任何建议!

1 个答案:

答案 0 :(得分:0)

要获得设备的宽度和高度,您应该使用此

DisplayMetrics displayMetrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(displayMetrics);
int height = displayMetrics.heightPixels;
int width = displayMetrics.widthPixels;

然后将这些数据放入MediaFormatVideo中,就像这样

    VidCodecParam para = ((Endpoint)(ep)).getVideoCodecParam("H264"); 
MediaFormatVideo encFmt = para.getEncFmt(); encFmt.setWidth(width); 
encFmt.setHeight(height); ep.setVideoCodecParam("H264", para);

你也可以用这两种方法获得宽度和高度

public static int getScreenWidth() {
    return Resources.getSystem().getDisplayMetrics().widthPixels;
}

public static int getScreenHeight() {
    return Resources.getSystem().getDisplayMetrics().heightPixels;
}

然后做同样的事情

    VidCodecParam para = ((Endpoint)(ep)).getVideoCodecParam("H264"); 
MediaFormatVideo encFmt = para.getEncFmt(); encFmt.setWidth(getScreenWidth()); 
encFmt.setHeight(getScreenHeight()); ep.setVideoCodecParam("H264", para);