问题描述
我是 mediaCodec 的新手,我使用 MediaFormat 来提取视频信息。 我正在使用:
int width = format.getInteger(MediaFormat.KEY_WIDTH);
int height = format.getInteger(MediaFormat.KEY_HEIGHT);
int bitrate = format.getInteger(MediaFormat.KEY_BIT_RATE);
高度和宽度没问题,我得到正确的高度和宽度,但比特率部分抛出 NullPointerException。
java.lang.NullPointerException: 尝试在空对象引用上调用虚方法“int java.lang.Integer.intValue()”
解决方法
使用
修复了这个问题MediaMetadataRetriever 类。
MediaMetadataRetriever m = new MediaMetadataRetriever();
m.setDataSource(filepath);
int bitrate = Integer.valueOf(m.extractMetadata(MediaMetadataRetriever.METADATA_KEY_BITRATE));
这有效