diff options
Diffstat (limited to 'libhb/muxmkv.c')
-rw-r--r-- | libhb/muxmkv.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/libhb/muxmkv.c b/libhb/muxmkv.c index f169e3de1..63f3e94cd 100644 --- a/libhb/muxmkv.c +++ b/libhb/muxmkv.c @@ -107,6 +107,8 @@ static int MKVInit( hb_mux_object_t * m ) track->codecID = MK_VCODEC_MP4ASP; track->codecPrivate = job->config.mpeg4.bytes; track->codecPrivateSize = job->config.mpeg4.length; + if (job->areBframes) + track->minCache = 1; break; case HB_VCODEC_THEORA: { @@ -448,7 +450,8 @@ static int MKVMux( hb_mux_object_t * m, hb_mux_data_t * mux_data, } mk_addFrameData(m->file, mux_data->track, buf->data, buf->size); mk_setFrameFlags(m->file, mux_data->track, timecode, - ((job->vcodec == HB_VCODEC_X264 && + (((job->vcodec == HB_VCODEC_X264 || + job->vcodec == HB_VCODEC_FFMPEG) && mux_data == job->mux_data) ? (buf->frametype == HB_FRAME_IDR) : ((buf->frametype & HB_FRAME_KEY) != 0)), 0 ); |