diff --git a/omx/gstbasevideodecoder.c b/omx/gstbasevideodecoder.c index e3ec9aa6c9..271551d4f2 100644 --- a/omx/gstbasevideodecoder.c +++ b/omx/gstbasevideodecoder.c @@ -1001,7 +1001,7 @@ gst_base_video_decoder_chain_forward (GstBaseVideoDecoder * base_video_decoder, if (base_video_decoder->packetized) { base_video_decoder->current_frame->sink_buffer = buf; - if (GST_BUFFER_FLAG_IS_SET (buf, GST_BUFFER_FLAG_DELTA_UNIT)) + if (!GST_BUFFER_FLAG_IS_SET (buf, GST_BUFFER_FLAG_DELTA_UNIT)) base_video_decoder->current_frame->is_sync_point = TRUE; ret = gst_base_video_decoder_have_frame_2 (base_video_decoder); @@ -2028,10 +2028,7 @@ gst_base_video_decoder_set_src_caps (GstBaseVideoDecoder * base_video_decoder) info->fps_d = state->fps_d; if (state->have_interlaced) { - if (state->interlaced) - GST_VIDEO_INFO_FLAG_SET (info, GST_VIDEO_FLAG_INTERLACED); - if (state->top_field_first) - GST_VIDEO_INFO_FLAG_SET (info, GST_VIDEO_FLAG_TFF); + info->interlace_mode = GST_VIDEO_INTERLACE_MODE_INTERLEAVED; } /* FIXME : Handle chroma site */ diff --git a/omx/gstbasevideoencoder.c b/omx/gstbasevideoencoder.c index 36248bb068..13160ce0a4 100644 --- a/omx/gstbasevideoencoder.c +++ b/omx/gstbasevideoencoder.c @@ -351,9 +351,7 @@ gst_base_video_encoder_sink_setcaps (GstBaseVideoEncoder * base_video_encoder, /* FIXME (Edward): We need flags in GstVideoInfo to know whether * interlaced field was present in input caps */ tmp_state.have_interlaced = tmp_state.interlaced = - GST_VIDEO_INFO_FLAG_IS_SET (&tmp_info, GST_VIDEO_FLAG_INTERLACED); - tmp_state.top_field_first = - GST_VIDEO_INFO_FLAG_IS_SET (&tmp_info, GST_VIDEO_FLAG_TFF); + GST_VIDEO_INFO_IS_INTERLACED (&tmp_info); if (changed) { /* arrange draining pending frames */