Commit graph

3370 commits

Author SHA1 Message Date
Ari Koivula 116d5b14be Fix handling of non factor of 8 resolution.
- Reimplement bit filling routines to copy bits form the edge, instead of
  using a constant.

- Add real_width and real_height to encoder_input and store the actual input
  resolution in them instead of in encoder_input.width and height. This fixed
  a crash. It's also clearer.

- Correctly scale conf_win offsets to be in terms of chroma.
2013-09-11 20:02:38 +03:00
Marko Viitanen 6ede4c60df Merge branch 'master' of Z:/Work/HEVC_encoder into fador
Conflicts:
	src/context.c
	src/search.c
2013-09-11 14:38:23 +03:00
Marko Viitanen 1763eb22cb Fixed search_best_mode() to select inter blocks 2013-09-11 14:32:20 +03:00
Ari Koivula 7cd57087da Fix string constant. 2013-09-11 00:31:13 +03:00
Ari Koivula 850e8b2586 Add filling out the blanks for reading non multiple of 8 resolutions. 2013-09-09 22:19:16 +03:00
Ari Koivula 2426a4bc1f Move file reading to encoder module. 2013-09-09 21:19:49 +03:00
Ari Koivula be98d8fef1 Clarify some comments. 2013-09-09 20:44:21 +03:00
Ari Koivula 2b9e2485db Add handling of resolutions that are not multiples of the smallest block size.
- When resolution is not a multiple of 8, increase the size of the picture.

- Add conformance window information to the SPS NAL. Thested to work in all
  dimensions with YUVplayer.
2013-09-09 20:43:14 +03:00
Marko Viitanen d6e51374e3 Added new context for root cbf, fixed a bug in MVD coding 2013-09-09 17:37:49 +03:00
Ari Koivula 28ce121f32 Improve code style for search_best_mode before analyzing. 2013-09-09 14:39:01 +03:00
Ari Koivula 5acb280407 Change "ToDo" to "TODO".
Visual Studio recognized only TODO.
2013-09-09 14:22:53 +03:00
Ari Koivula 96cfc84dd8 Fix compiler warnings. 2013-09-09 14:09:08 +03:00
Marko Viitanen dce892dce8 Merge branch 'master' of Z:/Work/HEVC_encoder into fador
Conflicts:
	.gitignore
2013-09-09 12:11:09 +03:00
Ari Koivula fede3d95b7 Add Doxygen generated files to gitignore. 2013-09-09 11:11:47 +03:00
Ari Koivula 2b94b9db4c Rename NAL type names to the ones used in the standard. 2013-09-09 11:04:09 +03:00
Ari Koivula 17fa5af4be Add remaining NAL unit type codes.
- Fix incorrect type code for NAL_IDR_N_LP.

- Unused reserved type codes have been left out.
2013-09-09 10:58:21 +03:00
Ari Koivula 2b4f98e83d Add checksum SEI packages to the bit-stream. 2013-09-06 16:36:28 +03:00
Marko Viitanen 5ea8532167 Merge branch 'master' of Z:/Work/HEVC_encoder into fador 2013-09-05 15:04:40 +03:00
Marko Viitanen 0f4a720206 Changed parameter from cabac_ctx** to cabac_ctx* in cabac_writeUnaryMaxSymbol() 2013-09-05 15:04:16 +03:00
Marko Viitanen cc9169bcd9 Added /doxygen and /doxygen_html to .gitignore 2013-09-05 15:03:17 +03:00
Marko Viitanen 31a8574f1b Modified search to check for inter cost 2013-09-05 15:02:53 +03:00
Ari Koivula 0c0f72c908 Increase doxygen max node size for graphs. 2013-09-04 17:57:38 +03:00
Marko Viitanen 0af55b8676 P-Slice testing, outputs P-slice as the second output slice 2013-09-04 17:47:54 +03:00
Ari Koivula ae14913af4 Configure doxygen for project. 2013-09-04 16:30:25 +03:00
Ari Koivula ee80c3bcc1 Add doxygen configuration file. 2013-09-04 16:01:03 +03:00
Marko Viitanen cb2eecf002 Defined more NAL typed and added better checking for NAL type in slice_header 2013-09-03 17:55:36 +03:00
Marko Viitanen 764cf60971 Changed output slices to TRAIL_R (0x01) from TRAIL_N (0x00) 2013-09-03 17:22:54 +03:00
Ari Koivula fbd884cb9a Remove unused variables. 2013-09-03 15:14:15 +03:00
Marko Viitanen f064c66e65 Added Yasm build configuration files 2013-09-03 14:53:12 +03:00
Marko Viitanen 9125244338 Fix for cabac_flush, fixes decoding on HM11+ 2013-09-03 11:42:17 +03:00
Marko Viitanen e4a8aaa8eb Added and fixed some functionality to support inter frames 2013-09-02 09:53:36 +03:00
Marko Viitanen b3a724afb0 Added codes for inter coding 2013-08-02 16:35:30 +03:00
Marko Viitanen 06fd1d6fa9 Fix for sign bit hiding, not working yet 2013-06-12 15:41:57 +03:00
Marko Viitanen d32f06b4e6 Fixed chroma QP scaling on filtering, this version produces bit-perfect output 2013-06-03 14:22:50 +03:00
Marko Viitanen b6daafecef Fixed deblocking and more variable name cleaning 2013-05-31 09:57:10 +03:00
Marko Viitanen d33304e5ec Fixed 4x4 chroma deblocking and cleaned deblocking functions 2013-05-30 10:37:47 +03:00
Marko Viitanen 1d7d411709 Added chroma deblocking, bugs with 4x4 blocks 2013-05-29 14:50:03 +03:00
Marko Viitanen 5be68846c3 Deblocking filter fixes and structural changes 2013-05-29 12:13:47 +03:00
Marko Viitanen 4c1e015c5f Work on Deblocking filter 2013-05-22 17:27:15 +03:00
Marko Viitanen fd2e25727c Fixed transform split bug by moving intra prediction to the transform-quant loop 2013-05-21 15:57:22 +03:00
Marko Viitanen 8afb5086c9 Changed scaling list derivation to support inter coding 2013-05-21 10:14:12 +03:00
Marko Viitanen 2a70231c06 Fixed Chroma 4x4 2013-05-20 17:26:57 +03:00
Marko Viitanen 1b007efe43 Fixed bug with 8x8 split_flag coding. 4x4 chroma still produces wrong data. 2013-05-16 15:27:54 +03:00
Marko Viitanen 3942bbda51 Added short-term ref list parameters to allow HM10.0 to decode it properly 2013-05-07 10:36:04 +03:00
Marko Viitanen 8054b8ccb4 Bugfix for coeff scan order == 2 (with 8x8 CU's) 2013-04-25 16:29:44 +03:00
Marko Viitanen 9011478dba New contexts and other inter code 2013-04-24 16:49:47 +03:00
Marko Viitanen 003093b1ef Added inter.c/.h 2013-04-24 10:35:27 +03:00
Marko Viitanen 3f009e6421 Added skipflag and predflag coding when not in I-slice 2013-04-19 10:56:40 +03:00
Marko Viitanen e8f04b32f1 Bug fixes, this version produces bit-perfect output 2013-04-18 14:37:56 +03:00
Marko Viitanen 58ba4b306c Fixes for search-tree, almost working, some visible errors 2013-04-18 14:04:15 +03:00