0

我一直在使用相机 2 开发相机应用程序并从这些视频系列中获取代码:https ://www.youtube.com/watch?v=69J2ycNCtpE&lc=z23lu3jo4xuwzjataacdp43bf4ywaag5x2tpbiljkf1w03c010c 我必须使用运行时权限更新代码。

我获得的视频质量很糟糕,我不知道为什么。我尝试使用输出格式、视频编码器、比特率(根据我在其他答案中找到的内容),但质量没有改变,而且与原始相机应用程序相比要差得多。比较两个长度相同的相似视频时,分辨率相同 (1080x1920),但此应用生成的视频大小为 0.95 MB,而使用原始相机应用拍摄的视频为 12 MB。显然,有些东西不起作用,但我不知道是什么。PS:教程小哥在手机上试用该应用程序时似乎没有发生这种现象。任何帮助都感激不尽!

4

2 回答 2

1

如果您尝试官方视频录制示例Camera2Video,它是否也录制了较差的视频?

如果是这样,则可能存在导致它忽略配置的视频质量的设备错误。如果 Camera2Video 工作正常,那么看看它与您自己的应用程序的不同之处。

于 2019-02-05T19:42:47.080 回答
-1

我建议您查看此示例 https://github.com/googlesamples/android-Camera2Basic

也许使用此配置可​​以解决

// For still image captures, we use the largest available size.
            Size largest = Collections.max(
                    Arrays.asList(map.getOutputSizes(ImageFormat.JPEG)),
                    new CompareSizesByArea());
            mImageReader = ImageReader.newInstance(largest.getWidth(), largest.getHeight(),
                    ImageFormat.JPEG, /*maxImages*/2);
            mImageReader.setOnImageAvailableListener(
                    mOnImageAvailableListener, mBackgroundHandler);
于 2019-02-05T19:05:42.303 回答