Commit Graph

13 Commits

Author SHA1 Message Date
clang-format
33e40cb5db test: apply clang-format
Change-Id: I0d9ab85855eb723f653a7bb09b3d0d31dd6cfd2f
2016-07-27 01:58:52 +00:00
Vignesh Venkatasubramanian
fa99c376e5 TODO cleanup: Remove unused buffer_size
Remove unused variable buffer_size and rename bytes_in_buffer to
buffer_size in webm_read_frame.

Change-Id: I18b6ccbb044cd366610a5e39d83883cc0b174051
2016-04-26 22:40:37 -07:00
hkuang
be6aeadaf4 Try again to merge branch 'frame-parallel' into master branch.
In frame parallel decode, libvpx decoder decodes several frames on all
cpus in parallel fashion. If not being flushed, it will only return frame
when all the cpus are busy. If getting flushed, it will return all the
frames in the decoder. Compare with current serial decode mode in which
libvpx decoder is idle between decode calls, libvpx decoder is busy
between decode calls.

Current frame parallel decode will only speed up the decoding for frame
parallel encoded videos. For non frame parallel encoded videos, frame
parallel decode is slower than serial decode due to lack of loopfilter
worker thread.

There are still some known issues that need to be addressed. For example:
decode frame parallel videos with segmentation enabled is not right sometimes.

* frame-parallel:
  Add error handling for frame parallel decode and unit test for that.
  Fix a bug in frame parallel decode and add a unit test for that.
  Add two test vectors to test frame parallel decode.
  Add key frame seeking to webmdec and webm_video_source.
  Implement frame parallel decode for VP9.
  Increase the thread test range to cover 5, 6, 7, 8 threads.
  Fix a bug in adding frame parallel unit test.
  Add VP9 frame-parallel unit test.
  Manually pick "Make the api behavior conform to api spec." from master branch.
  Move vp9_dec_build_inter_predictors_* to decoder folder.
  Add segmentation map array for current and last frame segmentation.
  Include the right header for VP9 worker thread.
  Move vp9_thread.* to common.
  ctrl_get_reference does not need user_priv.
  Seperate the frame buffers from VP9 encoder/decoder structure.
  Revert "Revert "Revert "Revert 3 patches from Hangyu to get Chrome to build:"""
 Conflicts:
       test/codec_factory.h
       test/decode_test_driver.cc
       test/decode_test_driver.h
       test/invalid_file_test.cc
       test/test-data.sha1
       test/test.mk
       test/test_vectors.cc
       vp8/vp8_dx_iface.c
       vp9/common/vp9_alloccommon.c
       vp9/common/vp9_entropymode.c
       vp9/common/vp9_loopfilter_thread.c
       vp9/common/vp9_loopfilter_thread.h
       vp9/common/vp9_mvref_common.c
       vp9/common/vp9_onyxc_int.h
       vp9/common/vp9_reconinter.c
       vp9/decoder/vp9_decodeframe.c
       vp9/decoder/vp9_decodeframe.h
       vp9/decoder/vp9_decodemv.c
       vp9/decoder/vp9_decoder.c
       vp9/decoder/vp9_decoder.h
       vp9/encoder/vp9_encoder.c
       vp9/encoder/vp9_pickmode.c
       vp9/encoder/vp9_rdopt.c
       vp9/vp9_cx_iface.c
       vp9/vp9_dx_iface.c

This reverts commit a18da9760a.

Change-Id: I361442ffec1586d036ea2e0ee97ce4f077585f02
2015-01-30 21:00:13 -08:00
Johann
a18da9760a Revert "Merge branch 'frame-parallel' to enable frame parallel decode in master branch."
This reverts commit bde04ce503

Change-Id: I053dae04c761b04a36dc239558503905a14d2470
2015-01-23 08:42:02 -08:00
hkuang
ad693e1ff5 Add key frame seeking to webmdec and webm_video_source.
This is for the frame parallel's pause/seek/resume unit test.

Change-Id: Ie235f86ca5f3d525896222766f6d610e6682fd76
2014-11-06 13:51:08 -08:00
James Zern
96f8895266 test/WebMVideoSource: fix WebMInputContext leak
lost in the shuffle of:
4fd6317 Remove duplicate code in test/webm_video_source.h

Change-Id: I89792fa17f03920616c55486bbdaf56c6461c9eb
2014-04-19 09:29:26 -07:00
Vignesh Venkatasubramanian
4fd6317545 Remove duplicate code in test/webm_video_source.h
Remove duplicate WebM parsing code in test/webm_video_source.h and linking it
against webmdec.c which does the exact same thing.

Change-Id: Ib7152eecde890fca58be42028cab18c9cb54221c
2014-04-18 00:32:30 -07:00
James Zern
bb3b9aa93f move nestegg to third_party
Change-Id: Idf58109195a88dec66c5e1ea6a51c61e6c659ff1
2014-02-21 17:16:04 -08:00
James Zern
cc6117d0f3 update nestegg
+ prune some unused files

https://github.com/kinetiknz/nestegg.git

commit f46223191d8116a36bf299b5b9793fcb798417b1
Merge: 0851279 4b0190a
Author:     Matthew Gregan <kinetik@flim.org>
AuthorDate: Wed Nov 27 13:50:43 2013 -0800
Commit:     Matthew Gregan <kinetik@flim.org>
CommitDate: Wed Nov 27 13:50:43 2013 -0800

    Merge pull request #15 from shadone/master

    Fix compiler warning.

Change-Id: I59eecdd68fced1ef61b67d446735539628d81484
2014-02-21 11:50:01 -08:00
Tom Finegan
eb2325ee9f video_source.h: Minor clean up.
- Use size_t for frame_size() (fixes warnings elsewhere)
- Remove unnecessary use of const.

Change-Id: Id2cba182ac3fd2f67d25fd1db3a0bc3e1eda040b
2014-02-19 14:17:55 -08:00
James Zern
c5aaf923d8 webmdec/tests: fix leak when file isn't read to eof
the nestegg packet was only freed by subsequent reads

Change-Id: Ib687a13907861c7575830783e47a596d85169cf1
2013-12-13 19:06:21 -08:00
James Zern
66c7dffd5c tests/*source: test file pointer before reading
if the caller did not abort after an ASSERT failure in Begin()
FillFrame() would segfault.

Change-Id: I2d3f5a0918611bbd081be6f686dea19c56695073
2013-06-25 17:57:52 -07:00
John Koleszar
119c9812a5 Add vp9 test vectors unit test
These files can stand in until we get proper syntax vectors. They
should provide some additional assurance against inadvertant
bitstream changes.

Change-Id: I12f6c9a5f054e30df40a7ff1f33145abf7e1d59d
2013-06-13 12:54:01 -07:00