From 5693233c0f366e685d98e49871c83fb13e01a0d0 Mon Sep 17 00:00:00 2001 From: Udaya Bhaskara Reddy Mallavarapu Date: Wed, 15 Mar 2017 23:29:09 +0530 Subject: [PATCH] media: platform: msm: dvb: video frame event notification changes video frame event notification is changed so that events will be raised for all frames both predicted and non predicted frames and invalidate pts and dts values for predicted frames. This change is specific to IoT targets in which only non predicted frames will be decoded and rendered for performance improvement. CR's-Fixed: 2005724 Change-Id: I08f648a89eb043938fcc7d3d81e83c3599a2f160 Signed-off-by: Udaya Bhaskara Reddy Mallavarapu --- .../msm/dvb/demux/mpq_dmx_plugin_common.c | 21 ++++++++++++------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/drivers/media/platform/msm/dvb/demux/mpq_dmx_plugin_common.c b/drivers/media/platform/msm/dvb/demux/mpq_dmx_plugin_common.c index ef0ef1512211..2fc3ce406c27 100644 --- a/drivers/media/platform/msm/dvb/demux/mpq_dmx_plugin_common.c +++ b/drivers/media/platform/msm/dvb/demux/mpq_dmx_plugin_common.c @@ -3969,6 +3969,18 @@ static int mpq_dmx_process_video_packet_framing( mpq_dmx_update_decoder_stat(mpq_feed); + if (video_b_frame_events == 1) { + if (non_predicted_video_frame == 0) { + struct dmx_pts_dts_info *pts_dts; + + pts_dts = + &meta_data.info.framing.pts_dts_info; + pts_dts->pts_exist = 0; + pts_dts->pts = 0; + pts_dts->dts_exist = 0; + pts_dts->dts = 0; + } + } /* * Write meta-data that includes the framing information */ @@ -3986,14 +3998,7 @@ static int mpq_dmx_process_video_packet_framing( stream_buffer, &data, ret); /* Trigger ES Data Event for VPTS */ - if (video_b_frame_events == 1) { - if (non_predicted_video_frame == 1) - feed->data_ready_cb.ts - (&feed->feed.ts, &data); - } else { - feed->data_ready_cb.ts(&feed->feed.ts, - &data); - } + feed->data_ready_cb.ts(&feed->feed.ts, &data); if (feed_data->video_buffer->mode == MPQ_STREAMBUFFER_BUFFER_MODE_LINEAR)