explicitly set profile+level for encoder

some modern Androids (namely my Xiaomi Mi A1 after the update to Andorid 9) seem to require that
This commit is contained in:
Christian Schneppe 2019-02-18 20:56:48 +01:00
parent 150f035d3f
commit 5814744dca

View file

@ -76,6 +76,10 @@ class AndroidStandardFormatStrategy implements MediaFormatStrategy {
format.setInteger(MediaFormat.KEY_FRAME_RATE, 30);
format.setInteger(MediaFormat.KEY_I_FRAME_INTERVAL, 3);
format.setInteger(MediaFormat.KEY_COLOR_FORMAT, MediaCodecInfo.CodecCapabilities.COLOR_FormatSurface);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
format.setInteger(MediaFormat.KEY_PROFILE ,MediaCodecInfo.CodecProfileLevel.AVCProfileBaseline);
format.setInteger(MediaFormat.KEY_LEVEL, MediaCodecInfo.CodecProfileLevel.AVCLevel13);
}
return format;
}