-
Notifications
You must be signed in to change notification settings - Fork 53
encode_profile
zanxiaofei edited this page Aug 29, 2017
·
2 revisions
短视频在录制、编辑合成、多段导入转码的参数配置中,在h264模式下均支持编码性能参数的配置
在给定性能参数后,会极大提升视频的画面质量和有效降低CPU负载。 性能参数在开始录制/合成/转码前设置有效,在开始后不支持动态修改。
目前支持以下三个性能档次
- ENCODE_PROFILE_LOW_POWER
低功耗档次: 编码时长较短,视频质量差一些(硬编模式下对应 H264 的 baseline profile) - ENCODE_PROFILE_BALANCE
均衡档次: 编码时长与视频质量较为均衡(硬编模式下对应 H264 的 main profile) - ENCODE_PROFILE_HIGH_PERFORMANCE
高性能档次: 编码时长较高,画面质量最佳(硬编模式下对应 H264 的 high profile)
NOTE:
- 编码档次可以根据手机实际配置进行选择,低端手机可以选择低功耗模式,高端手机可以选择高性能模式。
- 硬编模式下选用均衡或者高性能档次,SDK会尝试配置MediaCodec使用H264的main/high profile进行编码,如果当前机型不支持(目前支持的机型还比较有限),则会自动fallback回baseline profile.
- 硬编模式下选用高性能档次,并不会有显著的cpu占用提升,因此建议开发者使用264硬编时开启高性能模式以获取更好的画质。
录制建议默认配置为VideoEncodeFormat.ENCODE_PROFILE_HIGH_PERFORMANCE
mKSYRecordKit.setVideoEncodeProfile(VideoEncodeFormat.ENCODE_PROFILE_HIGH_PERFORMANCE);
ksyTranscodeKit.setVideoEncodeProfile(VideoEncodeFormat.ENCODE_PROFILE_HIGH_PERFORMANCE);
在软编模式下,配置性能档次越高,画质越清晰,相应合成速度也会变慢,在部分性能较差的手机上建议软编使用ENCODE_PROFILE_LOW_POWER
mEditKit.setVideoEncodeProfile(VideoEncodeFormat.ENCODE_PROFILE_HIGH_PERFORMANCE);