Skip to content
This repository has been archived by the owner on Apr 23, 2019. It is now read-only.

Fix lose frame bug. #2

Open
wants to merge 163 commits into
base: master
Choose a base branch
from
Open

Fix lose frame bug. #2

wants to merge 163 commits into from

Conversation

zhongcong
Copy link
Contributor

The timeout time is short for waiting unit commponent to
be drained and EOS sent to output port.

Signed-off-by: Zhong Cong [email protected]

Gerrit Code Review and others added 30 commits August 8, 2013 17:07
bit/byte reader and h264/vc1/mpeg4/mpeg2 stream
parsers are added here

signed-off-by: Li,Xiaowei <[email protected]>
vaapi wrappers for picture/image/buffer operation.

Signed-off-by: Li Xiaowei <[email protected]>
Author: Zhao, Halley <[email protected]>
Signed-off-by: Li, Xiaowei <[email protected]>
correct typo error when adding picture and comparing the timestamp
value of different picture to be rendered.

Signed-off-by: Li Xiaowei <[email protected]>
H264 start code should be "000001" according to ITU spec,
although "00000001" are constantly used and be considered as
start code, we need treat the first byte to leading zero byte.

Signed-off-by: Li Xiaowei <[email protected]>
config_set should not be set to false again when
some config flag are set in config buffer.

Signed-off-by: Li Xiaowei <[email protected]>
These files are required in chromeos portage system,
otherwise the package installation will fail

Signed-off-by: Li, Xiaowei <[email protected]>
add pkgconfig to subdir, otherwise the package info
will not be made and installed.

Signed-off-by: Li Xiaowei <[email protected]>
  1. Add libvacodec_common package info
  2. Modify LDFLAGS and CPPFLAGS of Package info
  2. Refine codecparser/common/decoder Makefile.am

Signed-off-by: Li Xiaowei <[email protected]>
 1. support format string output in fprintf log
 2. add flag to control whether to turn on all logs

Signed-off-by: Li Xiaowei <[email protected]>
some libva interfaces change dramatically since version
0.34, now adapt libvacodec coded to legacy and new interface
through checking the libva version

Signed-off-by: Li, Xiaowei  <[email protected]>
copy the video decoder host header file to package
installation directory, which will be referenced by
other library.

Signed-off-by: Li Xiaowei <[email protected]>
add setXDisplay interface to accept XDisplay created by
Openmax IL client in chromeOS, and libvacodec does not
need create it again.

Signed-off-by: Li Xiaowei <[email protected]>
when video resolution or profile change detected in bitstream,
decoder need to return "DECODE_FORMAT_CHANGE" to upper omx
component to reconfigure its output port

Signed-off-by: Li Xiaowei <[email protected]>
xuguangxin and others added 9 commits June 26, 2014 15:51
The initialization of reference picture lists (8.2.4.2) applies to all
slices. So, the RefPicList0/1 lists need to be constructed prior to
each slice submission to the HW decoder.

This fixes decoding of video sequences where frames are encoded with
multiple slices of different types, e.g. 4 slices in this order I, P,
I, and P. More precisely, CABAST3_Sony_E and CABASTBR3_Sony_B.

Signed-off-by: Zhong Cong <[email protected]>
Fix reference picture marking process with memory_management_control_op
set to 3 and 6, i.e. assign LongTermFrameIdx to a short-term reference
picture, or the current picture.

This fixes decoding of FRExt_MMCO4_Sony_B.

Signed-off-by: Zhong Cong <[email protected]>
@@ -3152,7 +3152,7 @@ gst_omx_video_dec_drain (GstOMXVideoDec * self, gboolean is_eos)
GST_DEBUG_OBJECT (self, "Waiting until component is drained");

if (G_UNLIKELY (self->dec->hacks & GST_OMX_HACK_DRAIN_MAY_NOT_RETURN)) {
gint64 wait_until = g_get_monotonic_time () + G_TIME_SPAN_SECOND / 2;
gint64 wait_until = g_get_monotonic_time () + G_TIME_SPAN_SECOND * 2;
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why we need more than half second to drain the pipeline?If failed clips are not HD video. It's more like logical error in our code. We should fix logical error instead add long delay here.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

since we download/upload video frame data in gst-omx mode. more time consumed.
it is work around to pass qa test; improve the performance in gst-omx is not our priority for now.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If the video is not high resolution video, It should not cost so much time even we use memory copy.

@halleyzhao
Copy link
Contributor

we need better explanation.
i will temporarily merge this patch for next Monday's QA test

@xuguangxin
Copy link
Contributor

ok

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants