android - 如何为 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>
解决方案
首先让我提到我在 Ziggeo 工作的 Pawan,所以请记住这一点,希望接下来对您和其他人有所帮助。
设置分辨率的方法只能用于指定所需的分辨率。因为没有内部视频处理器可以对视频进行转码,所以Ziggeo SDK会尝试找到最接近所需的分辨率。它通过从那些实际可用的中选择一个来做到这一点。
换句话说,在某些设备上,当您设置 320x320 时,它会选择 320x270。它必须基于设备可用的分辨率。
现在,为了使分辨率设置更容易或更接近您想要的,我在 SDK 上工作的同事将进行一些更改,允许您设置您想要保留的宽度和高度或宽度/高度和比率基于此选择最佳分辨率。
我还想提一下,您的相机视图和实际视频分辨率可能会有所不同,并且仍然可以正确预览,以防您指的是什么。
推荐阅读
- javascript - 不支持的样式属性 aria-label。你的意思是 ariaLabel
- php - 尝试将图像存储到数据库时出现 sql 错误(已更新)
- javascript - 为什么最小化引导卡时高度会增加
- laravel - 在 url laravel 中显示名称而不是 id
- python - 当我故意使用 HTML 错误时,是什么导致“没有属性 'object_list'
- python - 从数据框中打印数据
- android-layout - MotionLayout 未检测到 OnSwipe 是 ViewPager 的 anchorId
- authentication - python请求使用重定向登录
- r - R:合并函数中的点是什么意思?
- facebook - Facebook graph api升级到v7.0,但登录功能失败