qdrzwd / VideoRecorder

android视频录制,模仿微视,支持按下录制、抬起暂停。进度条断点显示。
Apache License 2.0
1.8k stars 563 forks source link

改变尺寸画面拼接 #9

Open GitaiQAQ opened 10 years ago

GitaiQAQ commented 10 years ago
private int previewWidth = 640, screenWidth = 640;
private int previewHeight = 480, screenHeight = 480;
// 获取摄像头的所有支持的分辨率
        /*List<Camera.Size> resolutionList = Util.getResolutionList(mCamera);
        if (resolutionList != null && resolutionList.size() > 0) {
            Collections.sort(resolutionList, new Util.ResolutionComparator());
            Camera.Size previewSize = null;
            if (defaultScreenResolution == -1) {
                boolean hasSize = false;
                // 如果摄像头支持640*480,那么强制设为640*480
                for (int i = 0; i < resolutionList.size(); i++) {
                    Size size = resolutionList.get(i);
                    if (size != null && size.width == 640 && size.height == 480) {
                        previewSize = size;
                        hasSize = true;
                        break;
                    }
                }
                // 如果不支持设为中间的那个
                if (!hasSize) {
                    int mediumResolution = resolutionList.size() / 2;
                    if (mediumResolution >= resolutionList.size())
                        mediumResolution = resolutionList.size() - 1;
                    previewSize = resolutionList.get(mediumResolution);
                }
            } else {
                if (defaultScreenResolution >= resolutionList.size())
                    defaultScreenResolution = resolutionList.size() - 1;
                previewSize = resolutionList.get(defaultScreenResolution);
            }
            // 获取计算过的摄像头分辨率
            if (previewSize != null) {
                previewWidth = previewSize.width;
                previewHeight = previewSize.height;
                cameraParameters.setPreviewSize(previewWidth, previewHeight);
                if (videoRecorder != null) {
                    videoRecorder.setImageWidth(previewWidth);
                    videoRecorder.setImageHeight(previewHeight);
                }

            }
        */

还有什么要改的吗?

这样输出的视频左边480*480正常 右边(640-480)是左边的重叠

去掉`rotateYUV420Degree90()`画面完全乱了!这个不只是转向吗?