diff --git a/avidemux_core/ADM_coreUtils/src/ADM_coreCodecMapping.cpp b/avidemux_core/ADM_coreUtils/src/ADM_coreCodecMapping.cpp index 0776121f0a..356b8126f0 100644 --- a/avidemux_core/ADM_coreUtils/src/ADM_coreCodecMapping.cpp +++ b/avidemux_core/ADM_coreUtils/src/ADM_coreCodecMapping.cpp @@ -39,6 +39,7 @@ const ffVideoCodec ffCodec[]= {"MJPB", AV_CODEC_ID_MJPEGB, false, false, false}, {"FPS1", AV_CODEC_ID_FRAPS, false, false, false}, {"cvid", AV_CODEC_ID_CINEPAK, false, false, false}, + {"FICV", AV_CODEC_ID_FIC, false, false, false}, // Need extradata {"WMV2", AV_CODEC_ID_WMV2, true, false, false}, {"WMV1", AV_CODEC_ID_WMV1, true, false, false}, diff --git a/avidemux_core/ADM_coreVideoCodec/src/ADM_ffmp43.cpp b/avidemux_core/ADM_coreVideoCodec/src/ADM_ffmp43.cpp index 1253848aa7..382e7504ba 100644 --- a/avidemux_core/ADM_coreVideoCodec/src/ADM_ffmp43.cpp +++ b/avidemux_core/ADM_coreVideoCodec/src/ADM_ffmp43.cpp @@ -441,6 +441,17 @@ bool decoderFF::uncompress (ADMCompressedImage * in, ADMImage * out) _context->reordered_opaque=(int64_t)in->demuxerPts; } out->_qStride = 0; //Default = no quant + + // Don't trust the FICV decoder to set frame type and PTS + if(codecId == AV_CODEC_ID_FIC) + { + if(in->flags&AVI_KEY_FRAME) + _frame->pict_type=AV_PICTURE_TYPE_I; + else + _frame->pict_type=AV_PICTURE_TYPE_P; + _frame->reordered_opaque=(int64_t)in->demuxerPts; + } + #if 0 if (0 > ret && !hurryUp) { diff --git a/cmake/admFFmpegBuild_helpers.cmake b/cmake/admFFmpegBuild_helpers.cmake index 6845dc88d2..c1a189275e 100644 --- a/cmake/admFFmpegBuild_helpers.cmake +++ b/cmake/admFFmpegBuild_helpers.cmake @@ -19,7 +19,7 @@ set(FFMPEG_BASE_DIR "${FFMPEG_EXTRACT_DIR}/ffmpeg") set(FFMPEG_SOURCE_DIR "${FFMPEG_BASE_DIR}/source") set(FFMPEG_BINARY_DIR "${FFMPEG_BASE_DIR}/build") -set(FFMPEG_DECODERS aac ac3 eac3 adpcm_ima_amv amv bmp cinepak cyuv dca dvbsub dvvideo ffv1 ffvhuff flv fraps h263 h264 +set(FFMPEG_DECODERS aac ac3 eac3 adpcm_ima_amv amv bmp cinepak cyuv dca dvbsub dvvideo ffv1 ffvhuff fic flv fraps h263 h264 hevc huffyuv mjpeg mjpegb mpeg2video mpeg4 msmpeg4v2 msmpeg4v3 msvideo1 nellymoser png qdm2 rawvideo snow svq3 theora tscc mp2 mp3 mp2_float mp3_float