omx: Update video encoder/decoder base classes from gst-plugins-bad

This commit is contained in:
Sebastian Dröge 2012-04-24 15:41:38 +02:00
parent 2aff72a0b0
commit d99fa5e3b3
2 changed files with 3 additions and 8 deletions

View file

@ -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 */

View file

@ -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 */