如何为Android创建Ziggeo嵌入式视频录像机

问题描述

我已经创建了Ziggeo嵌入式视频录像机,我的视图要求是320 * 320,但是在实现后,摄像机分辨率与视图不符(打开认摄像机分辨率),所以请帮忙。

此处的Java代码

Ziggeo ziggeo1 = new Ziggeo(appToken,this);
        RecorderConfig config = ziggeo1.getRecorderConfig();
        config.setResolution(new Size(320,320));
        RecorderConfig configBuilder = new RecorderConfig.Builder(this)
                .maxDuration(5000)
                .shouldSendImmediately(false)
                .shouldEnableCoverShot(false)
                .resolution(config.getResolution())
                .configureStopRecordingConfirmationDialog(new StopRecordingConfirmationDialogConfig())
                .shouldConfirmStopRecording(true)
                .facing(Cameraview.FACING_FRONT)
                .shouldShowFaceOutline(true)
                .quality(Cameraview.QUALITY_HIGH)
                .callback(this)
                .build();


        ziggeo1.setRecorderConfig(configBuilder);
        ziggeo1.enableCrashTracker(this);
        ziggeo1.attachCameraRecorder(getSupportFragmentManager(),R.id.video_container);

此处是XML代码

<LinearLayout
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:id="@+id/recorder_layout"
            android:orientation="vertical"
            android:layout_marginTop="20dp"
            android:layout_gravity="center">
            <FrameLayout
                android:id="@+id/video_container"
                android:layout_width="320dp"
                android:layout_height="320dp"
                />
        </LinearLayout>

解决方法

首先让我提到Pawan是我在Ziggeo工作的,因此请记住这一点,希望下一个可以对您和其他任何人有所帮助。

设置分辨率的方法只能用于指定所需的 分辨率。由于没有内部视频处理器会对视频进行转码,因此Ziggeo SDK会尝试找到最接近所需分辨率的分辨率。通过从实际可用的选项中选择一个来做到这一点。

换句话说,在某些设备上,当您设置320x320时,它将选择320x270。它必须基于设备的可用分辨率。

现在,为了使分辨率的设置更容易或更接近所需,我在SDK上工作的同事将进行一些更改,从而允许您设置要保留的宽度和高度或宽度/高度和比率因此它会根据此选择最佳分辨率。

我还要提及的是,您的摄像机视图和实际视频分辨率可能会有所不同,并且在您指的是这种情况下仍可以正确预览。