am 63845f1b: am c398f175: Merge "media: fix isSupportedFormat for integer frame rate" into lmp-mr1-dev

* commit '63845f1b5853aa3a84df4a161f6c8e96b98fba8a':
  media: fix isSupportedFormat for integer frame rate
This commit is contained in:
Lajos Molnar
2014-11-24 18:05:46 +00:00
committed by Android Git Automerger

View File

@ -973,7 +973,7 @@ public final class MediaCodecInfo {
} }
private boolean supports( private boolean supports(
Integer width, Integer height, Double rate) { Integer width, Integer height, Number rate) {
boolean ok = true; boolean ok = true;
if (ok && width != null) { if (ok && width != null) {
@ -985,7 +985,7 @@ public final class MediaCodecInfo {
&& (height % mHeightAlignment == 0); && (height % mHeightAlignment == 0);
} }
if (ok && rate != null) { if (ok && rate != null) {
ok = mFrameRateRange.contains(Utils.intRangeFor(rate)); ok = mFrameRateRange.contains(Utils.intRangeFor(rate.doubleValue()));
} }
if (ok && height != null && width != null) { if (ok && height != null && width != null) {
ok = Math.min(height, width) <= mSmallerDimensionUpperLimit; ok = Math.min(height, width) <= mSmallerDimensionUpperLimit;
@ -998,7 +998,7 @@ public final class MediaCodecInfo {
new Rational(widthInBlocks, heightInBlocks)) new Rational(widthInBlocks, heightInBlocks))
&& mAspectRatioRange.contains(new Rational(width, height)); && mAspectRatioRange.contains(new Rational(width, height));
if (ok && rate != null) { if (ok && rate != null) {
double blocksPerSec = blockCount * rate; double blocksPerSec = blockCount * rate.doubleValue();
ok = mBlocksPerSecondRange.contains( ok = mBlocksPerSecondRange.contains(
Utils.longRangeFor(blocksPerSec)); Utils.longRangeFor(blocksPerSec));
} }
@ -1013,7 +1013,7 @@ public final class MediaCodecInfo {
final Map<String, Object> map = format.getMap(); final Map<String, Object> map = format.getMap();
Integer width = (Integer)map.get(MediaFormat.KEY_WIDTH); Integer width = (Integer)map.get(MediaFormat.KEY_WIDTH);
Integer height = (Integer)map.get(MediaFormat.KEY_HEIGHT); Integer height = (Integer)map.get(MediaFormat.KEY_HEIGHT);
Double rate = (Double)map.get(MediaFormat.KEY_FRAME_RATE); Number rate = (Number)map.get(MediaFormat.KEY_FRAME_RATE);
// we ignore color-format for now as it is not reliably reported by codec // we ignore color-format for now as it is not reliably reported by codec