Commit graph

131 commits

Author SHA1 Message Date
Laurent Fasnacht 2e821b79a9 encoder_state in now in encoder_state.[ch] 2014-06-03 13:51:30 +02:00
Laurent Fasnacht f4f9093cb5 Parallel SAO 2014-05-21 11:48:29 +02:00
Laurent Fasnacht a3fcb141ed lcu_order_element now has pointer to neighbor LCUs 2014-05-21 11:06:53 +02:00
Laurent Fasnacht bdc2d43180 Write bitstream directly after doing the search. This is required since we need the correct entropy status for wpp 2014-05-20 09:29:01 +02:00
Laurent Fasnacht 06532292fc Wavefront are in tile coordinates 2014-05-20 09:28:58 +02:00
Laurent Fasnacht 8ff9ea0eee Wavefront works with parallelism + deblock (still no SAO) 2014-05-14 14:01:26 +02:00
Laurent Fasnacht e72408249b Add encoder_state pointer to lcu_order_element, new worker_encoder_state_search_lcu function to run the search stuff on one LCU 2014-05-14 14:01:24 +02:00
Laurent Fasnacht 1ba1683c05 search buffer has to be allocated tile-wise to avoid problems with wavefronts 2014-05-14 13:27:13 +02:00
Laurent Fasnacht 1680273e80 Store search borders in a buffer for the whole picture 2014-05-14 13:27:11 +02:00
Laurent Fasnacht baede7f6c4 threadqueue 2014-05-14 13:27:08 +02:00
Ari Koivula fb763f7940 Move coefficient generation functions from encoder.c to transform.c.
- These functions probably should have been there to begin with.
2014-05-12 11:37:39 +03:00
Laurent Fasnacht dc34a5eac6 LCU borders 2014-05-08 15:04:54 +02:00
Laurent Fasnacht ae6a7a9c4b Leaf encoder uses encoder_state->lcu_order 2014-05-08 15:04:49 +02:00
Laurent Fasnacht b740142325 Add is_leaf to encoder_state 2014-05-08 15:04:48 +02:00
Laurent Fasnacht 1cb3f14dfe lcu_order_count in (leaves) encoder 2014-05-08 15:04:47 +02:00
Laurent Fasnacht 0e6f1c99fc Refactor picture to remove hidden dependency between slice and tiles
picture.type -> encoder_state->global->pictype
picture.slicetype -> encoder_state->global->slicetype
picture.slice_sao_luma_flag -> 1 (was constant)
picture.slice_sao_chroma_flag -> 1 (was constant)

This may be changed later. For now it's better to avoid having slice related stuff in picture.
2014-05-07 11:55:48 +02:00
Laurent Fasnacht 831b221cf8 Parsing seems to work now 2014-05-07 11:53:01 +02:00
Laurent Fasnacht 8b5cb62237 Debug code to generate a graph 2014-05-07 11:52:04 +02:00
Laurent Fasnacht cee6bb0e71 Fix iteration on children 2014-05-07 11:49:14 +02:00
Laurent Fasnacht 6c6adf18c7 Refactor encoder_state 2014-05-07 11:47:31 +02:00
Laurent Fasnacht a23edd0339 added parent to encoder_state 2014-05-07 11:42:54 +02:00
Laurent Fasnacht c2872bd6b0 Slices and WPP in command line and encoder 2014-05-07 11:42:04 +02:00
Laurent Fasnacht 2d6f199246 reorganized encoder_state structure 2014-05-07 11:41:27 +02:00
Laurent Fasnacht f97e60a80d Doc for encoder state 2014-05-02 10:00:12 +02:00
Laurent Fasnacht 161fe38f5e Remove USE_TILES define 2014-05-01 13:58:13 +02:00
Laurent Fasnacht 73c574fb45 P-frame: first try... 2014-04-24 08:38:22 +02:00
Laurent Fasnacht 01580a93c3 Encoding with tiles now more or less works with -p 1 --no-sao --no-deblock 2014-04-24 08:38:19 +02:00
Laurent Fasnacht 066ce6c9f4 Remove unused prototype 2014-04-24 08:38:15 +02:00
Laurent Fasnacht 7bd6aa2e9c encoder_control_input_init call moved to encoder_control_init 2014-04-24 08:38:13 +02:00
Laurent Fasnacht ff318ae0e9 Tiles in encoder_control 2014-04-24 08:38:12 +02:00
Laurent Fasnacht 19b1642aa2 Removed all cabac parameters (cabac is part of encoder_state) 2014-04-22 11:46:53 +02:00
Laurent Fasnacht 5fea5875a5 Huge refactoring
Split some parts of encoder_control into encoder_state
(idea: encoder_control is immutable)

Goal is to allow multiple substreams in the future.
2014-04-22 10:39:12 +02:00
Laurent Fasnacht 3396264f3c Moved g_cur_lambda_cost into encoder_control.cur_lambda_cost 2014-04-17 12:00:21 +02:00
Laurent Fasnacht 534013be77 Remove g_lambda_cost 2014-04-17 11:49:27 +02:00
Laurent Fasnacht 7a2b883059 Remove encoder_input width, height, height_in_lcu, and width_in_lcu 2014-04-17 11:13:12 +02:00
Laurent Fasnacht d01e3ae67f bitstream is a union, and is statically in encoder_control structure 2014-04-17 11:13:12 +02:00
Laurent Fasnacht e06253d437 scalinglist changes missing in previous commit 2014-04-16 11:00:29 +02:00
Laurent Fasnacht 9901c38dd5 scalinglist in independent file 2014-04-16 10:25:16 +02:00
Laurent Fasnacht 9112cbb58c Generate and use static tables 2014-04-16 09:49:09 +02:00
Laurent Fasnacht 960f2cb4b0 g_sig_last_scan -> const uint32_t* 2014-04-15 16:09:52 +02:00
Laurent Fasnacht 763b775d3e encoder_control->cfg is const 2014-04-15 16:09:52 +02:00
Laurent Fasnacht ae2d79c954 Remove encoder_control.cqmfile 2014-04-15 16:09:51 +02:00
Laurent Fasnacht 486768fc79 scalinglist privatization 2014-04-14 13:39:28 +02:00
Laurent Fasnacht 78c579053a encoder_control should be const in nearly all the code 2014-04-14 10:56:06 +02:00
Marko Viitanen c38ec1aa10 Added commandline option for RDO (--rd) 2014-04-09 12:29:15 +03:00
Ari Koivula 6e0bc655e2 Resolve unused variable warning.
- This unexpectedly changes bitstream, but as that makes no sense, it must be
  because some part of the program uses uninitialized memory.
2014-04-04 17:28:50 +03:00
Marko Viitanen e15a86268d Clean up tabs and whitespaces 2014-04-04 16:04:44 +03:00
Laurent Fasnacht 8a14bd3b7b Remove cabac global variable 2014-04-04 14:26:40 +02:00
Ari Koivula d44d1837bb Remove unreferenced parameters.
- Working towards issue #11.
2014-04-04 12:56:24 +03:00
Ari Koivula 313466fdff Remove unused variables.
- Working towards issue #11.

- Either removed or redefined variables to not cause a warning.
2014-04-03 15:37:59 +03:00