Граф коммитов

15075 Коммитов

Автор SHA1 Сообщение Дата
Jingning Han e9630de8f2 Unify the entropy coding system for dynamic motion vector referencing
This commit unifies the probability models for the dynamic motion
vector referencing system.

Change-Id: I2b8a5e3da9824b52779a6b8ef43b7a588eade93a
2016-04-12 18:08:31 -07:00
Jingning Han cbeab1c722 Dynamic motion vector referencing based motion estimation
This commit enables motion estimation process based on the dynamic
motion vector referencing system. It allows the codec to select
the optimal predicted motion vector for motion vector coding.

Change-Id: Ic2a4d16e17c3fc320b1435d9ff564d5902c89f16
2016-04-12 18:00:04 -07:00
Jingning Han 69b50d2828 Support context based entropy coding for compound mode syntax
This commit allows the compound mode to use entropy coding contexted
on the dynamic motion vector referencing system.

Change-Id: Ie6f3219183ac3fce322d340728af26c1c1dfa37f
2016-04-12 15:45:48 -07:00
Jingning Han 35488f67a9 Apply mv precision check to reference mv candidate
This allows the codec to use effective motion vector as the candidate
to produce the reference motion vector list.

Change-Id: I4e00719f059ad82e5e8a0c843f7f96f59135cefd
2016-04-12 15:45:48 -07:00
Yaowu Xu 7fed303fe5 Fix several MSVC compiler warnings
Change-Id: I958ce22857068fef37f1c8c3ee718894f2716f01
2016-04-08 18:39:46 -07:00
Michael Bebenita 03394bd8c4 Remove dead code from av1_dering_search.
Change-Id: I893914d4678372970680b514843da87a75c14889
2016-04-08 15:36:45 -07:00
Jean-Marc Valin 337b23a590 Changing the weights of the first CRF filter in deringing
The old taps were equivalent to [2 2 3 2 3 2 2], while the new taps are
equivalent to [1 2 3 4 3 2 1]. The new coefficients improve metrics
slightly (not clear why).

ntt-short1 results:
          LOW (%)  MEDIUM (%) HIGH (%)
    PSNR NaN -0.126426 -0.209062
 PSNRHVS NaN 0.043873 -0.038114
    SSIM NaN -0.054293 -0.138431
FASTSSIM NaN -0.143498 0.245350

Change-Id: Iecadda68a4e9b33a49a807faf0a7dee6c9a119cb
2016-04-08 13:37:04 -04:00
Jingning Han d2bfbb6f28 Reduce rate-distortion optimizations complexity
Skip the transform type search in the dynamic motion vector
referencing mode. Always fall back to 2D-DCT setting.

Change-Id: Ia483172e13ce0da313855106a194fee48fcc0514
2016-04-06 14:49:25 -07:00
Jingning Han 06795c59c4 Expand the motion vector context set
Increase the number of context from 2 to 3.

Change-Id: I2327c59da958e9376cd632ae390f0cc57979f000
2016-04-06 08:39:51 -07:00
Jingning Han 604a546255 Check the entire collocated block for zeromv context
Check through all the collcated blocks in the previous frame for
zeromv mode context.

Change-Id: I1a521d49573d3def125e1a09f22b8a34c661cebf
2016-04-05 10:32:09 -07:00
Jingning Han 4a1b6d8196 Account context based prob model for motion vector cost estimate
This commit accounts for the context based probability model for
motion vector cost estimate in rate-distortion optimization.

Change-Id: I18961b25ef356e4751407a178702e9a7a1213100
2016-04-05 09:28:04 -07:00
Jingning Han a8c1d85e5f Vectorize motion vector probability models
This commit converts the scalar motion vector probability model
into vector format for entropy coding contexted on the predicted
motion vector.

Change-Id: I09a17ed4d01efa49640c2882efbf78913b32556e
2016-04-04 17:30:28 -07:00
Jingning Han efc115f481 Store the predicted motion vectors
Change-Id: I860ebd612cac998e143ac5bcbf06e3954a62b047
2016-04-04 15:00:22 -07:00
Jingning Han 6a720986ac Add reference motion vectors from collocated reference blocks
This commit extends the search range to include the motion vectors
from collocated reference blocks.

Change-Id: I1c856ab42c78d7a92cdb8bc169713a9335b0e908
2016-04-04 14:49:00 -07:00
Jingning Han 79864820de Refactor vp10_drl_idx concept
Remove the implicit assumption on offsetting the index by 1.

Change-Id: I2d2b9848916e16723fddd58e7a15e4e7ac4963e3
2016-04-04 11:57:37 -07:00
Jingning Han 8a13bbe828 Enable entropy coding of the dynamic motion vector referencing syntax
This commit enables entropy coding of the syntax elements used in
the dynamic motion vector referencing system.

Change-Id: If876c7df6402caf4b6daa3d511328da522e95233
2016-04-04 10:35:08 -07:00
Jingning Han c443f820b7 Enable dynamic ref motion vector mode for compound inter block
This commit enables the dynamic reference motion vector coding mode
for the compound inter blocks.

Change-Id: I3d6edea7cf241cbb108709b57aeb54f811029237
2016-04-04 09:42:19 -07:00
Jingning Han 9fdd1124d0 Support multiple reference motion vector candidates
This commit generalizes dynamic reference motion vector coding mode
to support multiple candidate modes in the rate-distortion
optimization scheme and to support the selection in the bit-stream
syntax. The maximum number of modes allowed is currently limited to
4. The syntax elements for the dynamic reference motion vector
modes are using binary codes.

Change-Id: I63ada01c18d4aaa2e3770811130fa8a42a88ab62
2016-04-01 18:09:05 -07:00
Jingning Han 883f1df7c7 Enable dynamic motion vector referencing system
This commit enables the dynamice motion vector referencing system
for inter predicted modes with single reference frame.

Change-Id: Ib3502c746276a859a7b443ec2687b71d4c788dc0
2016-04-01 16:24:00 -07:00
Jingning Han 472615c342 Generate compound reference motion vector
Use and compare the reference frame vector to find the reference
motion vector candidates for compound mode.

Change-Id: Ie9d1006f5121593a2311fcaeac411a54a705d266
2016-04-01 11:12:37 -07:00
Jingning Han d53bc5f9f2 Properly reset ZEROMV mode context
When the current frame does not have its previous frame for
reference, reset the ZEROMV mode context.

Change-Id: I6018ede03adea76c4c5335e0eb34ab60df0576c7
2016-04-01 09:40:12 -07:00
Jingning Han 51c5b0d9c0 Fix use_prev_frame_mvs assignment
This commit synchronizes the value assigned to cm->use_prev_frame_mvs.
It resolves a potential mismatch between encoder and decoder.

Change-Id: I2208017db73f8a83cbb50027776db8dc67526b44
2016-04-01 09:11:58 -07:00
Jingning Han aeb60057e5 Refactor reference motion vector search process
Unify the reference motion vector candidate search for row, column,
and single block cases. Make it support later extended reference
frame contexts.

Change-Id: I1278a9f1ed8561eccc8460b4edff4b97d438ad9b
2016-03-31 16:51:03 -07:00
Jingning Han 3b4479eb82 Enable context analyzer for inter mode entropy coding
It allows the codec to account for certain corner cases when
processing inter prediction mode entropy coding.

Change-Id: I51a1adda0d9e27bd1e18d912fd56ca4422b607b4
2016-03-31 16:26:14 -07:00
Jingning Han de6741bfa3 Enable adaptive prediction mode coding
This commit allows the codec to analyze the reference motion vector
candidate list and adaptively reduce the size of inter prediction
mode set.

Change-Id: I98f25bbf17cc844a84cfc568be27912f31fbe478
2016-03-31 15:48:47 -07:00
Jingning Han 6e03ddffa8 Re-design motion compensated prediction mode entropy coding system
This commit re-works the entropy coding scheme of the motion
compensated prediction modes. It allows a more flexible hyperplane
partition for precise classification.

Change-Id: Id02d4015a053affea9c19b1188873fbd7b906e92
2016-03-31 15:48:44 -07:00
Yaowu Xu 8d264d1042 change the host and server urls
Change-Id: Iffdc7e2caac5a973d3609711da2a4f9e6061f962
2016-03-31 14:04:13 -07:00
Yaowu Xu ca45beb1fa Restore history in CHANGELOG
Change-Id: I0bd257bb4724b85a7e522eeddefa1b7edf0ed420
2016-03-31 11:54:23 -07:00
Jingning Han d7f1cb0082 Add top-right neighbor into candidate list
This commit allows the codec to check the top-right neighbor block
when available for reference motion vector candidates.

Change-Id: I94c19bdb5e2cb8c1f58bd39a3001873fcc55b08c
2016-03-30 17:45:18 -07:00
Jingning Han 793e2a1bd3 Make sub8x8 block ref mv search consistent to regular blocks
Check all motion vectors in the immediate above and left blocks if
the boundary condition matched with that of the reference block.

Change-Id: Ie1c263065eded01fbf735c1518de8162cc377e89
2016-03-30 15:59:08 -07:00
Jingning Han 98ee80185a Integrate motion vector into the coding pipeline
This commit ports the motion vector stack from motion field
analyzer to the encoding and decoding pipeline.

Change-Id: I9f265f198b3f7b52dad8948490959041159fd6b2
2016-03-30 15:53:08 -07:00
Jingning Han 1d1ede9431 Construct motion vector reference candidate list
The motion vectors are ranked according to their likelihood to be
chosen for the coding block.

Change-Id: Ib3bb40aa6794da015c4760b98f02334a396e6459
2016-03-30 15:46:51 -07:00
Adrian Grange 0defd8f261 Changed "WebM" to "AOMedia" & "webm" to "aomedia"
Change-Id: I5e1a9b79ecc50ea9e7eea2746f40ba872d7d80e4
2016-03-29 23:04:48 +00:00
Jingning Han 117c1e38a0 Add n8_h/w to macroblockd
This will simplify the block size update in many places.

Change-Id: I255093692315d81340900baea6ccee0c02b9abd4
2016-03-29 14:43:15 -07:00
Adrian Grange 54e6676757 Replace "VPx" by "AVx"
Change-Id: If363eccaa8be7fb9f8cf41488bf3f5e6d4c00645
2016-03-29 21:35:38 +00:00
Adrian Grange 5082a369e4 Change "Vpx" to "Avx"
Change-Id: I0d1e439b75eb749dd80a86474ac5f494478d0360
2016-03-29 21:35:16 +00:00
Adrian Grange 7df44f1700 Replace "Vp9" w/ "Av1"
Change-Id: I4e7c9e8e0081ab96f44ca1cdf63731c060a9be9b
2016-03-29 21:34:38 +00:00
Adrian Grange 967f722feb Remove kVp9CodecId
Change-Id: I1b4926da0dad0e9a44e352c2b4428ce9e24cfa0c
2016-03-29 21:34:16 +00:00
Adrian Grange 828f30ce83 Change "Vp8" to "AOM"
Change-Id: I16d78a3715b185b6209b3bc2af68055d6c80b729
2016-03-29 21:33:36 +00:00
Jim Bankoski 030b5ffc64 AUTHORS regenerated
script changed to remove extra entities and clang-format bot.

Change-Id: I102cd80fdf4b240e6e4d5172943e49146a601a72
2016-03-29 14:21:56 -07:00
Jingning Han 2524caeeb6 Add ref-mv experimental flag
Change-Id: Ifbb899b36ffccd461367806dc0a3cb1ed3a41cbe
2016-03-29 11:24:25 -07:00
Adrian Grange 016762be5c Change copyright notice to AOMedia form
Change-Id: Ia5f721b2f64a0a1aeff9c097b20c6c423be666cf
2016-03-29 10:40:06 -07:00
Adrian Grange 81e552690e Replace vp9 w/ av1
Change-Id: I9611c6e0798de4fc26bde6d72b7e5291cca0613f
2016-03-29 10:23:53 -07:00
Adrian Grange 00ce1fb2b3 Set project to AOMedia & version number to 0.1.0
Change-Id: I04a2a732274f7773a9a1991591d881ea4d4874e8
2016-03-29 10:15:34 -07:00
Adrian Grange d8a02294a6 Add copyright notice to all .sh files
Change-Id: Iaa774235fbccefa2f75dedb7fd5081eff570fe93
2016-03-29 09:51:35 -07:00
Adrian Grange 24386350a9 Add copyright notice to all .py files
Change-Id: I5dd3600404945460c32271273a3620119d4c7a60
2016-03-29 09:50:40 -07:00
Adrian Grange ade5b21fd5 Add copyright notice to .hpp files
Change-Id: I64874794a64be9ec8d151de59df461115dcf9de3
2016-03-29 09:49:41 -07:00
Adrian Grange b0d49f15bd Add copyright notice to .pm file
Change-Id: Iff58d5746af20431f9e91f030da47b7beabbd76d
2016-03-29 09:48:29 -07:00
Adrian Grange f2a8c2f63d Add copyright notice to .c & .cc files
Change-Id: I3eb7d6d65a00981ccd629a03fa19d8d140b99c6e
2016-03-29 09:46:59 -07:00
Adrian Grange e224395fba Add copyright notice to .pl files
Change-Id: Ib44a6d7fdb0d9e91c2105139ee7b8b3038d8fce6
2016-03-29 09:43:55 -07:00