Loading media/codecs/m4v_h263/dec/src/vop.cpp +48 −17 Original line number Diff line number Diff line Loading @@ -107,27 +107,58 @@ PV_STATUS DecodeVOLHeader(VideoDecData *video, int layer) #ifndef PV_TOLERATE_VOL_ERRORS if (layer) /* */ { /* support SSPL0-2 */ if (tmpvar != 0x10 && tmpvar != 0x11 && tmpvar != 0x12 && tmpvar != 0xA1 && tmpvar != 0xA2 && tmpvar != 0xA3/* Core SP@L1-L3 */) switch (tmpvar) { /* Simple Scalable Profile Levels */ case 0x10: case 0x11: case 0x12: /* Core Scalable Profile Levels */ case 0xA1: case 0xA2: case 0xA3: // Do Nothing, the cases listed above are supported values break; default: // Unsupport profile level return PV_FAIL; } } else { /* support SPL0-3 & SSPL0-2 */ if (tmpvar != 0x01 && tmpvar != 0x02 && tmpvar != 0x03 && tmpvar != 0x08 && /* While not technically supported, try to decode SPL4&SPL5 files as well. */ /* We'll fail later if the size is too large. This is to allow playback of */ /* some <=CIF files generated by other encoders. */ tmpvar != 0x04 && tmpvar != 0x05 && tmpvar != 0x10 && tmpvar != 0x11 && tmpvar != 0x12 && tmpvar != 0x21 && tmpvar != 0x22 && /* Core Profile Levels */ tmpvar != 0xA1 && tmpvar != 0xA2 && tmpvar != 0xA3 && tmpvar != 0xF0 && tmpvar != 0xF1 && /* Advanced Simple Profile Levels*/ tmpvar != 0xF2 && tmpvar != 0xF3 && tmpvar != 0xF4 && tmpvar != 0xF5) switch (tmpvar) { /* Simple Profile Levels */ case 0x01: case 0x02: case 0x03: case 0x04: case 0x05: case 0x06: case 0x08: case 0x10: case 0x11: case 0x12: /* Core Profile Levels */ case 0x21: case 0x22: case 0xA1: case 0xA2: case 0xA3: /* Advanced Simple Profile Levels*/ case 0xF0: case 0xF1: case 0xF2: case 0xF3: case 0xF4: case 0xF5: // Do Nothing, the cases listed above are supported values break; default: // Unsupport profile level return PV_FAIL; } } #else profile = tmpvar; #endif Loading Loading
media/codecs/m4v_h263/dec/src/vop.cpp +48 −17 Original line number Diff line number Diff line Loading @@ -107,27 +107,58 @@ PV_STATUS DecodeVOLHeader(VideoDecData *video, int layer) #ifndef PV_TOLERATE_VOL_ERRORS if (layer) /* */ { /* support SSPL0-2 */ if (tmpvar != 0x10 && tmpvar != 0x11 && tmpvar != 0x12 && tmpvar != 0xA1 && tmpvar != 0xA2 && tmpvar != 0xA3/* Core SP@L1-L3 */) switch (tmpvar) { /* Simple Scalable Profile Levels */ case 0x10: case 0x11: case 0x12: /* Core Scalable Profile Levels */ case 0xA1: case 0xA2: case 0xA3: // Do Nothing, the cases listed above are supported values break; default: // Unsupport profile level return PV_FAIL; } } else { /* support SPL0-3 & SSPL0-2 */ if (tmpvar != 0x01 && tmpvar != 0x02 && tmpvar != 0x03 && tmpvar != 0x08 && /* While not technically supported, try to decode SPL4&SPL5 files as well. */ /* We'll fail later if the size is too large. This is to allow playback of */ /* some <=CIF files generated by other encoders. */ tmpvar != 0x04 && tmpvar != 0x05 && tmpvar != 0x10 && tmpvar != 0x11 && tmpvar != 0x12 && tmpvar != 0x21 && tmpvar != 0x22 && /* Core Profile Levels */ tmpvar != 0xA1 && tmpvar != 0xA2 && tmpvar != 0xA3 && tmpvar != 0xF0 && tmpvar != 0xF1 && /* Advanced Simple Profile Levels*/ tmpvar != 0xF2 && tmpvar != 0xF3 && tmpvar != 0xF4 && tmpvar != 0xF5) switch (tmpvar) { /* Simple Profile Levels */ case 0x01: case 0x02: case 0x03: case 0x04: case 0x05: case 0x06: case 0x08: case 0x10: case 0x11: case 0x12: /* Core Profile Levels */ case 0x21: case 0x22: case 0xA1: case 0xA2: case 0xA3: /* Advanced Simple Profile Levels*/ case 0xF0: case 0xF1: case 0xF2: case 0xF3: case 0xF4: case 0xF5: // Do Nothing, the cases listed above are supported values break; default: // Unsupport profile level return PV_FAIL; } } #else profile = tmpvar; #endif Loading