diff --git a/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/avi/AviExtractor.java b/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/avi/AviExtractor.java index f8797b29b0..2db2d17b0a 100644 --- a/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/avi/AviExtractor.java +++ b/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/avi/AviExtractor.java @@ -210,13 +210,17 @@ public class AviExtractor implements Extractor { if (streamFormat != null) { i++; if (streamHeader.isVideo()) { + final String mimeType = streamHeader.getMimeType(); + if (mimeType == null) { + Log.w(TAG, "Unknown FourCC: " + toString(streamHeader.getFourCC())); + continue; + } final VideoFormat videoFormat = streamFormat.getVideoFormat(); final TrackOutput trackOutput = output.track(streamId, C.TRACK_TYPE_VIDEO); final Format.Builder builder = new Format.Builder(); builder.setWidth(videoFormat.getWidth()); builder.setHeight(videoFormat.getHeight()); builder.setFrameRate(streamHeader.getFrameRate()); - final String mimeType = streamHeader.getMimeType(); builder.setSampleMimeType(mimeType); // final StreamDataBox codecBox = (StreamDataBox) peekNext(streamChildren, i, StreamDataBox.STRD); // final List codecData; diff --git a/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/avi/StreamHeaderBox.java b/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/avi/StreamHeaderBox.java index 8eea67db55..1c3be2ee6b 100644 --- a/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/avi/StreamHeaderBox.java +++ b/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/avi/StreamHeaderBox.java @@ -31,6 +31,7 @@ public class StreamHeaderBox extends ResidentBox { STREAM_MAP.put('3' | ('V' << 8) | ('I' << 16) | ('D' << 24), mimeType); STREAM_MAP.put('x' | ('v' << 8) | ('i' << 16) | ('d' << 24), mimeType); STREAM_MAP.put('X' | ('V' << 8) | ('I' << 16) | ('D' << 24), mimeType); + STREAM_MAP.put('D' | ('X' << 8) | ('5' << 16) | ('0' << 24), mimeType); STREAM_MAP.put('m' | ('j' << 8) | ('p' << 16) | ('g' << 24), MimeTypes.VIDEO_JPEG); }