[encoder] Improved motion estimation.
[schroedinger/research-port.git] / doc / schroedinger-sections.txt
blob904aaee1482803b7381c3f882a76ded0b7f47ef9
1 <SECTION>
2 <FILE>schrobitstream</FILE>
3 SchroAuxiliaryDataID
4 SchroParseCode
5 SchroVideoFormatEnum
6 SchroChromaFormat
7 SchroColourMatrix
8 SchroColourSpec
9 SchroColourPrimaries
10 SchroWaveletIndex
11 SchroSignalRange
12 SchroTransferFunction
13 SCHRO_PARSE_HEADER_SIZE
14 SCHRO_PARSE_CODE_PICTURE
15 SCHRO_PARSE_CODE_IS_INTER
16 SCHRO_PARSE_CODE_IS_INTRA
17 SCHRO_PARSE_CODE_IS_NON_REFERENCE
18 SCHRO_PARSE_CODE_IS_REFERENCE
19 SCHRO_PARSE_CODE_IS_LOW_DELAY
20 SCHRO_PARSE_CODE_IS_PICTURE
21 SCHRO_PARSE_CODE_NUM_REFS
22 SCHRO_PARSE_CODE_IS_AUXILIARY_DATA
23 SCHRO_PARSE_CODE_IS_CORE_SYNTAX
24 SCHRO_PARSE_CODE_IS_END_OF_SEQUENCE
25 SCHRO_PARSE_CODE_IS_PADDING
26 SCHRO_PARSE_CODE_IS_SEQ_HEADER
27 SCHRO_PARSE_CODE_USING_AC
28 </SECTION>
30 <SECTION>
31 <FILE>schrolimits</FILE>
32 SCHRO_LIMIT_WIDTH
33 SCHRO_LIMIT_ENCODER_TRANSFORM_DEPTH
34 SCHRO_LIMIT_FRAME_QUEUE_LENGTH
35 SCHRO_LIMIT_REFERENCE_FRAMES
36 SCHRO_LIMIT_SUBBANDS
37 SCHRO_LIMIT_TRANSFORM_DEPTH
38 SCHRO_LIMIT_BLOCK_SIZE
39 SCHRO_LIMIT_METRIC_SCAN
40 </SECTION>
42 <SECTION>
43 <FILE>schrodecoder</FILE>
44 SchroDecoder
45 schro_decoder_new
46 schro_decoder_free
47 schro_decoder_reset
48 schro_decoder_get_video_format
49 schro_decoder_add_output_picture
50 schro_decoder_push_ready
51 schro_decoder_push
52 schro_decoder_push_end_of_stream
53 schro_decoder_pull
54 schro_decoder_is_parse_unit
55 schro_decoder_is_access_unit
56 schro_decoder_is_intra
57 schro_decoder_is_picture
58 schro_decoder_iterate
59 schro_decoder_wait
60 schro_decoder_set_earliest_frame
61 schro_decoder_set_skip_ratio
62 schro_decoder_get_picture_number
63 <SUBSECTION Unstable API>
64 schro_decoder_decode_parse_header
65 schro_decoder_decode_transform_data
66 schro_decoder_decode_lowdelay_transform_data
67 schro_decoder_subband_dc_predict
68 schro_decoder_compare_access_unit_buffer
69 schro_decoder_decode_block_data
70 schro_decoder_decode_macroblock
71 schro_decoder_decode_picture
72 schro_decoder_decode_prediction_unit
73 schro_decoder_init_subband_frame_data_interleaved
74 schro_decoder_iterate_picture
75 schro_decoder_parse_access_unit
76 schro_decoder_parse_block_data
77 schro_decoder_parse_lowdelay_transform_data
78 schro_decoder_parse_picture
79 schro_decoder_parse_picture_header
80 schro_decoder_parse_picture_prediction_parameters
81 schro_decoder_parse_transform_data
82 schro_decoder_parse_transform_parameters
83 schro_decoder_x_check_references
84 schro_decoder_x_combine
85 schro_decoder_x_decode_motion
86 schro_decoder_x_decode_residual
87 schro_decoder_x_render_motion
88 schro_decoder_x_upsample
89 schro_decoder_x_wavelet_transform
90 SchroPicture
91 schro_picture_new
92 schro_picture_ref
93 schro_picture_unref
94 </SECTION>
96 <SECTION>
97 <FILE>schrodomain</FILE>
98 SchroExecDomain
99 SchroMemoryDomain
100 SCHRO_EXEC_DOMAIN_CPU
101 SCHRO_EXEC_DOMAIN_CUDA
102 SCHRO_EXEC_DOMAIN_OPENGL
103 SCHRO_MEMORY_DOMAIN_CPU
104 SCHRO_MEMORY_DOMAIN_CUDA
105 SCHRO_MEMORY_DOMAIN_OPENGL
106 SCHRO_MEMORY_DOMAIN_SLOTS
107 SCHRO_MEMORY_DOMAIN_SLOT_ALLOCATED
108 SCHRO_MEMORY_DOMAIN_SLOT_IN_USE
109 schro_memory_domain_alloc
110 schro_memory_domain_alloc_2d
111 schro_memory_domain_free
112 schro_memory_domain_memfree
113 schro_memory_domain_new
114 schro_memory_domain_new_cuda
115 schro_memory_domain_new_local
116 </SECTION>
118 <SECTION>
119 <FILE>schrocuda</FILE>
120 SchroCUDAStream
121 SchroGPUMotion
122 SCHRO_FRAME_IS_CUDA
123 schro_cuda_init
124 schro_gpumotion_copy
125 schro_gpumotion_free
126 schro_gpumotion_init
127 schro_gpumotion_new
128 schro_gpumotion_render
129 schro_frame_to_gpu
130 schro_gpuframe_add
131 schro_gpuframe_compare
132 schro_gpuframe_convert
133 schro_gpuframe_inverse_iwt_transform
134 schro_gpuframe_iwt_transform
135 schro_gpuframe_subtract
136 schro_gpuframe_to_cpu
137 schro_gpuframe_upsample
138 schro_gpuframe_zero
139 schro_upsampled_gpuframe_free
140 schro_upsampled_gpuframe_new
141 schro_upsampled_gpuframe_upsample
142 </SECTION>
144 <SECTION>
145 <FILE>schropack</FILE>
146 SchroPack
147 schro_pack_new
148 schro_pack_free
149 schro_pack_encode_init
150 schro_pack_sync
151 schro_pack_append
152 schro_pack_encode_bit
153 schro_pack_encode_bits
154 schro_pack_encode_uint
155 schro_pack_encode_sint
156 schro_pack_copy
157 schro_pack_estimate_sint
158 schro_pack_estimate_uint
159 schro_pack_flush
160 schro_pack_get_bit_offset
161 schro_pack_get_offset
162 schro_pack_append_zero
163 </SECTION>
165 <SECTION>
166 <FILE>schrowavelet</FILE>
167 SCHRO_N_WAVELETS
168 schro_wavelet_transform_2d
169 schro_wavelet_inverse_transform_2d
170 schro_split_ext_desl93
171 schro_split_ext_53
172 schro_split_ext_135
173 schro_split_ext_haar
174 schro_split_ext_fidelity
175 schro_split_ext_daub97
176 schro_synth_ext_desl93
177 schro_synth_ext_53
178 schro_synth_ext_135
179 schro_synth_ext_haar
180 schro_synth_ext_fidelity
181 schro_synth_ext_daub97
182 schro_iwt_desl_9_3
183 schro_iwt_5_3
184 schro_iwt_13_5
185 schro_iwt_haar0
186 schro_iwt_haar1
187 schro_iwt_haar2
188 schro_iwt_fidelity
189 schro_iwt_daub_9_7
190 schro_iiwt_desl_9_3
191 schro_iiwt_5_3
192 schro_iiwt_13_5
193 schro_iiwt_haar0
194 schro_iiwt_haar1
195 schro_iiwt_haar2
196 schro_iiwt_fidelity
197 schro_iiwt_daub_9_7
198 </SECTION>
200 <SECTION>
201 <FILE>schroarith</FILE>
202 SchroArith
203 SchroArithContext
204 schro_arith_new
205 schro_arith_free
206 schro_arith_decode_init
207 schro_arith_encode_init
208 schro_arith_flush
209 schro_arith_decode_bit
210 schro_arith_decode_flush
211 schro_arith_decode_sint
212 schro_arith_decode_uint
213 schro_arith_encode_bit
214 schro_arith_encode_sint
215 schro_arith_encode_uint
216 schro_arith_estimate_bit
217 schro_arith_estimate_init
218 schro_arith_estimate_sint
219 schro_arith_estimate_uint
220 </SECTION>
222 <SECTION>
223 <FILE>schrobuffer</FILE>
224 SchroBuffer
225 schro_buffer_new
226 schro_buffer_new_and_alloc
227 schro_buffer_new_with_data
228 schro_buffer_new_subbuffer
229 schro_buffer_ref
230 schro_buffer_unref
231 schro_buffer_compare_data
232 schro_buffer_dup
233 </SECTION>
235 <SECTION>
236 <FILE>schrodebug</FILE>
237 SCHRO_ERROR
238 SCHRO_WARNING
239 SCHRO_INFO
240 SCHRO_DEBUG
241 SCHRO_LOG
242 SCHRO_DEBUG_LEVEL
243 SCHRO_MILD_ASSERT
244 SCHRO_ASSERT
245 schro_debug_log
246 schro_debug_set_level
247 schro_debug_get_level
248 schro_dump
249 </SECTION>
251 <SECTION>
252 <FILE>schroencoder</FILE>
253 SchroEncoder
254 SchroEncoderFrame
255 SchroEncoderFrameStateEnum
256 SchroEncoderPerceptualEnum
257 SchroPrefEnum
258 SchroEncoderSettings
259 SchroQuantiserEngineEnum
260 SchroStateEnum
261 SchroEncoderGOPEnum
262 SchroEncoderRateControlEnum
263 SchroEncoderSetting
264 SchroEncoderSettingTypeEnum
265 SchroEngineIterateFunc
266 schro_encoder_new
267 schro_encoder_free
268 schro_encoder_get_video_format
269 schro_encoder_set_video_format
270 schro_encoder_end_of_stream
271 schro_encoder_push_frame
272 schro_encoder_copy_to_frame_buffer
273 schro_encoder_encode_access_unit_header
274 schro_encoder_encode_parse_info
275 schro_encoder_pull
276 schro_encoder_preference_get_range
277 schro_encoder_preference_get
278 schro_encoder_preference_set
279 schro_encoder_analyse_picture
280 schro_encoder_calculate_subband_weights
281 schro_encoder_calculate_test_info
282 schro_encoder_choose_quantisers
283 schro_encoder_clean_up_transform
284 schro_encoder_encode_access_unit
285 schro_encoder_encode_auxiliary_data
286 schro_encoder_encode_end_of_stream
287 schro_encoder_encode_lowdelay_transform_data
288 schro_encoder_encode_picture
289 schro_encoder_encode_picture_all
290 schro_encoder_encode_picture_header
291 schro_encoder_encode_subband
292 schro_encoder_encode_subband_noarith
293 schro_encoder_engine_backref
294 schro_encoder_engine_backtest
295 schro_encoder_engine_intra_only
296 schro_encoder_engine_lossless
297 schro_encoder_engine_lowdelay
298 schro_encoder_engine_test_intra
299 schro_encoder_engine_tworef
300 schro_encoder_estimate_entropy
301 schro_encoder_frame_analyse
302 schro_encoder_frame_downsample
303 schro_encoder_frame_insert_buffer
304 schro_encoder_frame_new
305 schro_encoder_frame_queue_get
306 schro_encoder_frame_queue_remove
307 schro_encoder_frame_ref
308 schro_encoder_frame_unref
309 schro_encoder_init_subbands
310 schro_encoder_insert_buffer
311 schro_encoder_output_push
312 schro_encoder_perceptual_weight_ccir959
313 schro_encoder_perceptual_weight_constant
314 schro_encoder_perceptual_weight_moo
315 schro_encoder_postanalyse_picture
316 schro_encoder_predict_picture
317 schro_encoder_push_ready
318 schro_encoder_recalculate_allocations
319 schro_encoder_reconstruct_picture
320 schro_encoder_reference_add
321 schro_encoder_reference_get
322 schro_encoder_set_default_subband_weights
323 schro_encoder_start
324 schro_encoder_wait
325 schro_encoder_get_n_settings
326 schro_encoder_get_setting_info
327 schro_encoder_global_estimation
328 schro_encoder_init_error_tables
329 schro_encoder_phasecorr_estimation
330 schro_encoder_setting_get_double
331 schro_encoder_setting_set_double
332 </SECTION>
334 <SECTION>
335 <FILE>schro</FILE>
336 schro_init
337 </SECTION>
339 <SECTION>
340 <FILE>schroparams</FILE>
341 SchroVideoFormat
342 SchroParams
343 SchroMotionVector
344 SchroMotionField
345 SchroMotionVectorDC
346 SchroGlobalMotion
347 SchroPictureNumber
348 schro_params_calculate_iwt_sizes
349 schro_params_calculate_mc_sizes
350 schro_params_set_block_params
351 schro_params_set_default_codeblock
352 schro_params_get_block_params
353 schro_params_get_frame_format
354 schro_params_init
355 schro_params_is_default_codeblock
356 schro_params_is_default_quant_matrix
357 schro_params_set_default_quant_matrix
358 schro_params_verify_block_params
359 </SECTION>
361 <SECTION>
362 <FILE>schrovideoformat</FILE>
363 schro_video_format_validate
364 schro_video_format_set_std_video_format
365 schro_video_format_get_std_video_format
366 schro_video_format_set_std_frame_rate
367 schro_video_format_get_std_frame_rate
368 schro_video_format_set_std_aspect_ratio
369 schro_video_format_get_std_aspect_ratio
370 schro_video_format_set_std_signal_range
371 schro_video_format_get_std_signal_range
372 schro_video_format_set_std_colour_spec
373 schro_video_format_get_std_colour_spec
374 </SECTION>
376 <SECTION>
377 <FILE>schroframe</FILE>
378 SchroFrame
379 SchroFrameData
380 SchroFrameFreeFunc
381 SchroFrameFormat
382 SchroUpsampledFrame
383 SCHRO_FRAME_FORMAT_DEPTH
384 SCHRO_FRAME_FORMAT_DEPTH_S16
385 SCHRO_FRAME_FORMAT_DEPTH_S32
386 SCHRO_FRAME_FORMAT_DEPTH_U8
387 SCHRO_FRAME_FORMAT_H_SHIFT
388 SCHRO_FRAME_FORMAT_V_SHIFT
389 SCHRO_FRAME_IS_PACKED
390 SCHRO_FRAME_DATA_GET_LINE
391 SCHRO_FRAME_DATA_GET_PIXEL_S16
392 SCHRO_FRAME_DATA_GET_PIXEL_U8
393 schro_frame_new
394 schro_frame_new_and_alloc
395 schro_frame_new_from_data_AYUV
396 schro_frame_new_from_data_I420
397 schro_frame_new_from_data_YUY2
398 schro_frame_dup
399 schro_frame_ref
400 schro_frame_unref
401 schro_frame_set_free_callback
402 schro_frame_clone
403 schro_frame_data_get_codeblock
404 schro_frame_get_metric
405 schro_frame_get_subdata
406 schro_frame_inverse_iwt_transform_cuda
407 schro_frame_new_from_data_UYVY
408 schro_frame_new_from_data_YV12
409 <SUBSECTION>
410 schro_frame_convert
411 schro_frame_convert_to_444
412 schro_frame_add
413 schro_frame_subtract
414 schro_frame_shift_left
415 schro_frame_shift_right
416 schro_frame_edge_extend
417 schro_frame_zero_extend
418 schro_frame_iwt_transform
419 schro_frame_inverse_iwt_transform
420 schro_frame_downsample
421 schro_frame_mark
422 schro_frame_upsample_horiz
423 schro_frame_upsample_vert
424 <SUBSECTION>
425 schro_frame_ssim
426 schro_frame_mean_squared_error
427 schro_frame_md5
428 schro_frame_calculate_average_luma
429 <SUBSECTION>
430 <SUBSECTION>
431 schro_upsampled_frame_free
432 schro_upsampled_frame_new
433 schro_upsampled_frame_upsample
434 schro_upsampled_frame_get_block_fast_precN
435 schro_upsampled_frame_get_block_precN
436 schro_upsampled_frame_get_pixel_prec0
437 schro_upsampled_frame_get_pixel_prec1
438 schro_upsampled_frame_get_pixel_prec3
439 schro_upsampled_frame_get_pixel_precN
440 </SECTION>
442 <SECTION>
443 <FILE>schrofft</FILE>
444 schro_fft_fwd_f32
445 schro_fft_generate_tables_f32
446 schro_fft_rev_f32
447 </SECTION>
449 <SECTION>
450 <FILE>schrofilter</FILE>
451 schro_frame_filter_adaptive_lowpass
452 schro_frame_filter_addnoise
453 schro_frame_filter_cwm7
454 schro_frame_filter_cwmN
455 schro_frame_filter_cwmN_ref
456 schro_frame_filter_lowpass
457 schro_frame_filter_lowpass2
458 schro_frame_filter_lowpass_16
459 schro_frame_filter_wavelet
460 schro_filter_cwm7
461 schro_filter_cwmN
462 schro_filter_cwmN_ref
463 </SECTION>
465 <SECTION>
466 <FILE>schroutils</FILE>
467 schro_bool
468 SCHRO_GET
469 OFFSET
470 SCHRO_INTERNAL
471 ARRAY_SIZE
474 CLAMP
475 DIVIDE_ROUND_UP
476 ROUND_UP_SHIFT
477 ROUND_UP_POW2
478 ROUND_UP_2
479 ROUND_UP_4
480 ROUND_UP_8
481 ROUND_UP_64
482 ROUND_SHIFT
483 NEED_CLAMP
484 schro_divide
485 schro_utils_entropy
486 schro_utils_multiplier_to_quant_index
487 schro_utils_probability_to_entropy
488 schro_utils_reduce_fraction
489 schro_dequantise
490 schro_quantise
491 schro_dequantise_s16
492 schro_quantise_s16
493 schro_malloc
494 schro_malloc0
495 schro_realloc
496 schro_free
497 schro_utils_get_time
498 muldiv64
499 <SUBSECTION Private>
500 SCHRO_BEGIN_DECLS
501 SCHRO_END_DECLS
502 SCHRO_GNUC_PREREQ
503 </SECTION>
505 <SECTION>
506 <FILE>schroasync</FILE>
507 SchroAsync
508 SchroAsyncTask
509 SchroAsyncCompleteFunc
510 SchroAsyncScheduleFunc
511 SchroThread
512 schro_async_new
513 schro_async_free
514 schro_async_get_num_completed
515 schro_async_lock
516 schro_async_unlock
517 schro_async_pull
518 schro_async_pull_locked
519 schro_async_run_locked
520 schro_async_signal_scheduler
521 schro_async_wait_locked
522 schro_async_wait_one
523 schro_async_add_cuda
524 schro_async_get_exec_domain
525 schro_async_wait
526 </SECTION>
528 <SECTION>
529 <FILE>schrometric</FILE>
530 SchroMetricScan
531 SCHRO_METRIC_INVALID
532 schro_metric_absdiff_u8
533 schro_metric_haar
534 schro_metric_haar_const
535 schro_metric_abssum_s16
536 schro_metric_sum_u8
537 schro_metric_get
538 schro_metric_get_biref
539 schro_metric_get_dc
540 schro_metric_scan_do_scan
541 schro_metric_scan_get_min
542 schro_metric_scan_setup
543 </SECTION>
545 <SECTION>
546 <FILE>schromotion</FILE>
547 SchroMotion
548 SCHRO_MOTION_GET_BLOCK
549 SCHRO_MOTION_GET_DC_BLOCK
550 schro_motion_dc_prediction
551 schro_motion_vector_prediction
552 schro_motion_split_prediction
553 schro_motion_get_mode_prediction
554 schro_motion_block_estimate_entropy
555 schro_motion_copy_from
556 schro_motion_copy_to
557 schro_motion_estimate_entropy
558 schro_motion_field_global_estimation
559 schro_motion_field_lshift
560 schro_motion_free
561 schro_motion_get_global_prediction
562 schro_motion_new
563 schro_motion_render
564 schro_motion_render_cuda
565 schro_motion_render_ref
566 schro_motion_superblock_estimate_entropy
567 schro_motion_superblock_try_estimate_entropy
568 schro_motion_vector_is_equal
569 schro_motion_field_new
570 schro_motion_field_free
571 schro_motion_field_scan
572 schro_motion_field_inherit
573 schro_motion_field_copy
574 schro_motion_verify
575 </SECTION>
577 <SECTION>
578 <FILE>schromotionest</FILE>
579 SchroMotionEst
580 SchroMotionScan
581 SchroBlock
582 schro_motionest_free
583 schro_motionest_new
584 schro_motionest_superblock_get_metric
585 schro_block_check
586 schro_block_fixup
587 </SECTION>
589 <SECTION>
590 <FILE>schrohistogram</FILE>
591 SchroHistogram
592 SchroHistogramTable
593 SCHRO_HISTOGRAM_SHIFT
594 SCHRO_HISTOGRAM_SIZE
595 schro_histogram_init
596 schro_histogram_add
597 schro_histogram_add_array_s16
598 schro_histogram_apply_table
599 schro_histogram_apply_table_range
600 schro_histogram_estimate_entropy
601 schro_histogram_estimate_noise_level
602 schro_histogram_estimate_slope
603 schro_histogram_get_range
604 schro_histogram_scale
605 <SECTION>
606 schro_histogram_table_generate
607 </SECTION>
609 <SECTION>
610 <FILE>schrounpack</FILE>
611 SchroUnpack
612 schro_unpack_byte_sync
613 schro_unpack_copy
614 schro_unpack_decode_bit
615 schro_unpack_decode_bits
616 schro_unpack_decode_sint
617 schro_unpack_decode_sint_s16
618 schro_unpack_decode_sint_slow
619 schro_unpack_decode_uint
620 schro_unpack_get_bits_read
621 schro_unpack_get_bits_remaining
622 schro_unpack_init_with_data
623 schro_unpack_limit_bits_remaining
624 schro_unpack_skip_bits
625 </SECTION>
627 <SECTION>
628 <FILE>schroqueue</FILE>
629 SchroQueue
630 SchroQueueElement
631 SchroQueueFreeFunc
632 schro_queue_add
633 schro_queue_clear
634 schro_queue_delete
635 schro_queue_find
636 schro_queue_free
637 schro_queue_is_empty
638 schro_queue_is_full
639 schro_queue_new
640 schro_queue_pop
641 schro_queue_pull
642 schro_queue_remove
643 </SECTION>
645 <SECTION>
646 <FILE>schrosubband</FILE>
647 SCHRO_SUBBAND_IS_HORIZONTALLY_ORIENTED
648 SCHRO_SUBBAND_IS_VERTICALLY_ORIENTED
649 SCHRO_SUBBAND_SHIFT
650 schro_subband_get
651 schro_subband_get_frame_data
652 schro_subband_get_position
653 </SECTION>
655 <SECTION>
656 <FILE>schrooil</FILE>
657 oil_lift_haar_split
658 oil_lift_haar_synth
659 oil_mas10_across_u8
660 oil_multsumshift8_str_s16
661 oil_splat_s16_ns
662 oil_split_haar
663 oil_sum_s32_s16
664 oil_sum_s32_u8
665 oil_sum_square_diff_u8
666 oil_synth_haar
667 oil_addc_rshift_clipconv_u8_s16
668 oil_convert_f64_s16
669 oil_convert_f64_u8
670 oil_iir3_across_s16_f64
671 oil_iir3_across_u8_f64
672 oil_iir3_rev_s16_f64
673 oil_iir3_rev_u8_f64
674 oil_iir3_s16_f64
675 oil_iir3_u8_f64
676 oil_mas10_s16
677 oil_mas12across_addc_rshift_u8
678 oil_mas4_s16
679 oil_mas4_u8
680 oil_mas8_across_u8
681 oil_mas8_s16
682 schro_cog_mas10_u8_edgeextend
683 schro_cog_mas8_u8_edgeextend
684 </SECTION>
686 <SECTION>
687 <FILE>schrolist</FILE>
688 SchroList
689 SchroListFreeFunc
690 schro_list_append
691 schro_list_delete
692 schro_list_free
693 schro_list_get
694 schro_list_get_size
695 schro_list_insert
696 schro_list_new
697 schro_list_new_full
698 schro_list_prepend
699 schro_list_remove
700 schro_list_replace
701 </SECTION>