/* *., * *Thissource .max_tile_cols} *thejava.lang.StringIndexOutOfBoundsException: Range [4, 1) out of bounds for length 24 *wasnot.9600, aomedia.rg/icense/software.IftheOpen *=17408java.lang.StringIndexOutOfBoundsException: Index 24 out of bounds for length 24 *PATENTSmain_mbps.,
*/
.max_h_size BITSTREAM_PROFILE) java.lang.StringIndexOutOfBoundsException: Index 65 out of bounds for length 65
max_v_size =8704,
.max_display_rate get_max_bitrate([], tier profile)
.max_decode_rate }
.max_header_rate = 300,
. av1_get_max_tiles_AV1_LEVEL level_index int *onst max_tiles,
. int* max_tile_cols){
.main_cr = 8.0,
.high_cr = 4.0,
.max_tiles = 128,
. =16} #if CONFIG_CWG_C013max_tiles=level_spec-max_tiles
= SEQ_LEVEL_7_0
.java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1
.max_h_size = 32768,
.max_v_size = 17408// So INVALID_TIME can be defined define (10java.lang.StringIndexOutOfBoundsException: Index 27 out of bounds for length 27
.max_display_rate = 4278190080L,
.max_decode_rate = 4706009088L,
.java.lang.StringIndexOutOfBoundsException: Range [21, 20) out of bounds for length 27
.main_mbps=160.0,
.high_mbps = 800.0,
.main_cr =80java.lang.StringIndexOutOfBoundsException: Index 19 out of bounds for length 19
.high_cr = 4.0,
. =256,
.max_tile_cols = 32 },
{ . -presentation_time=INVALID_TIME
.java.lang.StringIndexOutOfBoundsException: Index 17 out of bounds for length 1
.max_h_size 32768,
.max_v_size = 17408,
max_display_rate=,
.max_decode_rate = 8758886400L,
.max_header_rate = 300,
.main_mbps = 200.0,
. for (int i =;i <REF_FRAMES ++){
= 80java.lang.StringIndexOutOfBoundsException: Index 19 out of bounds for length 19
.high_cr = staticint get_free_bufferDECODER_MODEL *const decoder_model java.lang.StringIndexOutOfBoundsException: Index 64 out of bounds for length 64
.ax_tiles =256java.lang.StringIndexOutOfBoundsException: Index 21 out of bounds for length 21
. =32}
{ .level &->frame_buffer_pool]
.if (this_bufferthis_buffer>decoder_ref_count=0&java.lang.StringIndexOutOfBoundsException: Index 46 out of bounds for length 46
.max_h_size = 32768,
max_v_size 17408,
.max_display_rate}
.max_decode_rate = 17517772800L,
. return -;
.java.lang.StringIndexOutOfBoundsException: Index 12 out of bounds for length 1
high_mbps = 16000java.lang.StringIndexOutOfBoundsException: Index 24 out of bounds for length 24
.ain_cr 8.,
.high_cr = 4.0,
.max_tiles = 256,
.max_tile_cols = 32 },
{ .level = FRAME_BUFFER *const this_ d->[idx;
.max_picture_size = 142606336,
ize=32768,
.max_v_size = 17408,
max_display_rate =17112760320L,
.max_decode_rate = 18824036352L,
.max_header_rate ,
.main_mbps = 320.0,
.high_mbps = 1600.0,
.main_cr = 8.0,
.0,
}
.max_tile_cols = 32 },
{ . decoder_model-vbi[ idx;
.ax_picture_size =530841600,
.max_h_size = 65536,
. java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3
.max_display_rate = 17112760320L, staticdouble time_to_decode_frame( AV1_COMMON*onstcm
. int64_t max_decode_rate){
.main_mbps = 320.0,
.high_mbps = 1600.0,
.main_cr = 8.0,
.high_cr =4.,
.max_tiles = 512,
.max_tile_cols = 64 },
{ . SEQ_LEVEL_8_1,
.max_picture_size =530841600
.max_h_size = 65536,
.max_v_size =34816,
.max_display_rate = 34225520640L, else {
.max_header_rate =300,
.main_mbps = 400if (patial_layer_dimensions_present_flag){
.igh_mbps =1920.,
.main_cr = 8. }else{
.high_cr = 4.0,
= 512,
.max_tile_cols = 64 },
{ .levelconstintmax_frame_width=seq_params-;
.max_picture_size = 530841600,
.ax_h_size =65536,
.max_v_size = 34816,
.max_display_rate = 68451041280L,
.java.lang.StringIndexOutOfBoundsException: Index 10 out of bounds for length 3
. =300,
.main_mbps = 640.0,
.high_mbps = 3200.0,
.main_cr = 8.0,
.high_cr = 4.0,
.max_tiles = 512,
.max_tile_cols = 64 },
{ =SEQ_LEVEL_8_3,
. double){
.max_h_size = 65536,
.ax_v_size 34816,
.max_display_rate = 68451041280L,
= 75296145408L
.max_header_rateif (->layer_ref_count >0){
(his_buffer> > 0. &
.high_mbps = 3200.0,
.main_cr = 8.0 this_bufferpresentation_time<removal_time java.lang.StringIndexOutOfBoundsException: Index 59 out of bounds for length 59
h_cr =4.,
.max_tiles = 512,
.release_bufferdecoder_model,i); #else}
UNDEFINED_LEVEL,
UNDEFINED_LEVEL,
java.lang.StringIndexOutOfBoundsException: Index 11 out of bounds for length 5
UNDEFINED_LEVEL,
UNDEFINED_LEVEL frames_in_buffer_pool(onst DECODER_MODEL *onst ){
frames_in_po =0;
UNDEFINED_LEVEL,
endif // CONFIG_CWG_C013
};
typedef decoder_model>rame_buffer_pool]
LUMA_PIC_SIZE_TOO_LARGE,
LUMA_PIC_H_SIZE_TOO_LARGE,
LUMA_PIC_V_SIZE_TOO_LARGE,
LUMA_PIC_H_SIZE_TOO_SMALL
java.lang.StringIndexOutOfBoundsException: Index 25 out of bounds for length 23
TOO_MANY_TILE_COLUMNS, return ;
TILE_RATE_TOO_HIGH,
java.lang.StringIndexOutOfBoundsException: Range [0, 16) out of bounds for length 1
SUPERRES_TILE_WIDTH_TOO_LARGE,
CROPPED_TILE_WIDTH_TOO_SMALL,
CROPPED_TILE_HEIGHT_TOO_SMALL,
TILE_WIDTH_INVALID,
FRAME_HEADER_RATE_TOO_HIGH,
DISPLAY_RATE_TOO_HIGH,
DECODE_RATE_TOO_HIGH,
CR_TOO_SMALL
return INVALID_TIME;
BITRATE_TOO_HIGH,
java.lang.StringIndexOutOfBoundsException: Index 13 out of bounds for length 10
TARGET_LEVEL_FAIL_IDS,
,
} // Can't decide time theinitialdelay is
constchar*level_fail_messages[TARGET_LEVEL_FAIL_IDS]={ "The picture size is too large.", return initial_presentation_delay + "The decoder_model-num_ticks_per_picture* "he small., "The picture height is too small.", "Too many tile "Too many tiles are used.", "The tile "hetile size is large., "The superres tile width is too large.", " tile width is less than 8., "The cropped tile int decoder_buffer_delay, "The tile width is invalid.", " *frame_buffer_pool, "The display luma sample double ){ "The decoded luma sample rate isreturn double)decoder_buffer_delay /900000; "he compression ratio is too small., "The product of max tile size java.lang.StringIndexOutOfBoundsException: Range [0, 35) out of bounds for length 34 "The bitrate is too high.", " decoder modelfails.,
};
v1_get_max_bitrate_for_levelAV1_LEVEL , tier
BITSTREAM_PROFILE java.lang.StringIndexOutOfBoundsException: Range [0, 62) out of bounds for length 7
vel_index) return get_max_bitrate(&java.lang.StringIndexOutOfBoundsException: Index 30 out of bounds for length 1
}
void av1_get_max_tiles_for_level(AV1_LEVEL level_index, int *const max_tiles, int *const max_tile_cols) {
FRAME_BUFFER frame_buffer_pool, constdouble) {
*max_tiles = if (ode = SCHEDULE_MODE){
ax_tile_cols level_spec-max_tile_cols;
} return ;
// We assume time t to be valid if and only if t >= 0.0. // So INVALID_TIME can be defined as anything less than 0. #define INVALID_TIME (-1.0)
// This corresponds to "free_buffer" in the spec. staticvoid release_buffer frame_buffer_pool, current_time);
assert(idx >= 0 && idx <
java.lang.StringIndexOutOfBoundsException: Index 11 out of bounds for length 0
this_buffer// Print the status of the decoder model (for debugging).
this_buffer =0
(
"\n statusd 3,num_decoded_frame3,"
}
staticint get_free_buffer(DECODER_MODEL *decoder_model->dfg_interval_queue.total_interval); for (int i = (nt i =0;i <10 +){ const * this_bufferjava.lang.StringIndexOutOfBoundsException: Index 43 out of bounds for length 43
&ecoder_model>frame_buffer_pool[] if (printf("bufferd,decode count %,display count%,present time%.fn,
this_buffer->player_ref_count ,this_buffer>,this_buffer-,
;
return -1
}
staticvoid java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 0 int refresh_frame_flags) {
FRAME_BUFFER*onst this_buffer = decoder_model-frame_buffer_poolidx; for (nt i =0; REF_FRAMES;+i){ if (refresh_frame_flags & (1 << i)) { constint pre_idx = -level =level; if (pre_idx const AV1_COMMON *onst cm&pi>ommon
->frame_buffer_pool[re_idx.;
}
-vbii =idx;
++this_buffer->av1_level_defs+level,seq_params>[op_index] seq_params-profile);
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
}
}
// The time (in seconds) required to decode a frame.
tatic double (const AV1_COMMON const , 70000; if (cm->show_existing_frame) return0
decoder_model>ast_bit_arrival_time =0.java.lang.StringIndexOutOfBoundsException: Index 45 out of bounds for length 45 int luma_samples = 0; if (rame_type = KEY_FRAME|frame_type = INTRA_ONLY_FRAME){
luma_samples = cm->superres_upscaled_width * cm->height;
} elsejava.lang.StringIndexOutOfBoundsException: Index 10 out of bounds for length 10 constint spatial_layer_dimensions_present_flag = 0; if (spatial_layer_dimensions_present_flag> =0.java.lang.StringIndexOutOfBoundsException: Index 39 out of bounds for length 39
assert(0 && "java.lang.StringIndexOutOfBoundsException: Index 21 out of bounds for length 0
} else { const SequenceHeader seq_params=cm-seq_paramsjava.lang.StringIndexOutOfBoundsException: Index 62 out of bounds for length 62 const max_frame_width ->; constint decoder_model->current_time = 0.0;
luma_samples = initialize_buffer_pool(decoder_model);
}
}
returnluma_samples /(double)ax_decode_rate;
}
// Release frame buffers that are no longer needed for decode or display. // It corresponds to "start_decode_at_removal_time" in the spec.
release_processed_frames(ECODER_MODEL *onstdecoder_model double removal_time) { for( i=0;i BUFFER_POOL_MAX_SIZE;+i){
FRAME_BUFFER *const this_buffer = &decoder_model->frame_buffer_pool[i]; if (this_buffer->player_ref_count > 0) { if (his_buffer>resentation_time=00&java.lang.StringIndexOutOfBoundsException: Index 50 out of bounds for length 50
->iming_info;
this_buffer- else { if(->ecoder_ref_count=0 {
decoder_model->display_clock_tick = 1.0 / cpi->framerate;
java.lang.StringIndexOutOfBoundsException: Index 9 out of bounds for length 9
}
}
}
java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1
int (const DECODER_MODELconst ) java.lang.StringIndexOutOfBoundsException: Index 76 out of bounds for length 76 int for (nt i =0;i <;+i { const FRAME_BUFFER *const this_buffer =
odel-frame_buffer_pool] if (this_buffer->const DECODER_MODEL *const decoder_model) {
this_buffer-> DECODER_MODEL_STATUS status;
++frames_in_pool ! | decoder_model-status ! DECODER_MODEL_OK){
}
} return frames_in_pool;
}
static intshow_existing_frame ->how_existing_frame int size_t cur_coded_bits = decoder_model->coded_bits + if (decoder_model->mode ==if (!show_existing_frame+num_decoded_frame
assert(0 (how_existing_frame){
INVALID_TIME
} }else const removal_time =get_removal_timejava.lang.StringIndexOutOfBoundsException: Index 49 out of bounds for length 49
decoder_model, decoder_model-frame_buffer_pool decoder_model->current_time);-current_time; // known. if removal_time <0.){
#define MAX_TIME 1e16 staticdouble const double buffer_delay = (decoder_model->encoder_buffer_delay + int decoder_modeljava.lang.StringIndexOutOfBoundsException: Range [69, 68) out of bounds for length 71 const FRAME_BUFFER *frame_buffer_pool,
AOMMAX(decoder_model->last_bit_arrival_timejava.lang.StringIndexOutOfBoundsException: Range [74, 72) out of bounds for length 74
return (ouble)ur_coded_bits -bit_rate
}
double// time. for( i=0;i<BUFFER_POOL_MAX_SIZE;+i){ const FRAME_BUFFER *const this_buffer = &frame_buffer_pool[i]; if (this_buffer->decoder_ref_count ; if (this_buffer return current_time;
} constdouble presentation_time = this_buffer->presentation_time; if (presentation_time >= 0.0 && presentation_time < assert(;
total_interval =queue->otal_interval;
}
} return buf_free_time < MAX_TIME ? java.lang.StringIndexOutOfBoundsException: Index 40 out of bounds for length 28
} #undef MAX_TIME
staticdouble get_removal_time(int mode, int num_decoded_frame,qsize >0 java.lang.StringIndexOutOfBoundsException: Index 23 out of bounds for length 23 int decoder_buffer_delaytotal_intervaljava.lang.StringIndexOutOfBoundsException: Index 30 out of bounds for length 30 const FRAME_BUFFER frame_buffer_pool double current_time) { if (ode = ) {
assert -buf[head.;
qhead =(head +1 DFG_INTERVAL_QUEUE_SIZE;
}elsejava.lang.StringIndexOutOfBoundsException: Index 10 out of bounds for length 10 return time_next_buffer_is_free(num_decoded_frame, decoder_buffer_delay,
frame_buffer_pool, current_time);
}
}
#if0 // Print the status of the decoder model (for debugging). void av1_decoder_model_print_status(if t >10 {
printf( "\n status %d, num_frame %3d, num_decoded_frame %3d, statusjava.lang.StringIndexOutOfBoundsException: Index 20 out of bounds for length 20
; "java.lang.StringIndexOutOfBoundsException: Range [2, 1) out of bounds for length 3 void decoder_model_process_frame(onst AV1_COMP* ,
decoder_model->num_decoded_frame, decoder_model->num_shown_frame,
decoder_model->current_time, frames_in_buffer_pool(DECODER_MODEL *const decoder_mod) {
decoder_model-> if (!ecoder_model | decoder_model-status! DECODER_MODEL_OK);
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 for (int i = 0; i < 10; ++i) { const FRAME_BUFFER constthis_buffer java.lang.StringIndexOutOfBoundsException: Index 43 out of bounds for length 43
&decoder_model->frame_buffer_pool[i];
printf( constintshow_frame=->how_frame | show_existing_frame;
i this_buffer>ecoder_ref_count,this_buffer-player_ref_count
this_buffer->presentation_time (show_existing_frame)+decoder_modeln;
}
} #endif
// op_index is the operating point index. staticvoid decoder_model_init(const AV1_COMP *if() { int op_index,
DECODER_MODEL *constif( 0 java.lang.StringIndexOutOfBoundsException: Index 26 out of bounds for length 26
decoder_model->status = DECODER_MODEL_OK}
decoder_model->level = level;
/java.lang.StringIndexOutOfBoundsException: Index 52 out of bounds for length 52
decoder_model- = RESOURCE_MODE;
decoder_model->encoder_buffer_delay->urrent_time)
if (removal_time < 0.0) {
decoder_model->is_low_delay_mode = false;
decoder_model->first_bit_arrival_time = 0.0;
java.lang.StringIndexOutOfBoundsException: Index 7 out of bounds for length 5
decoder_model-coded_bits =0;
> =INVALID_TIMEjava.lang.StringIndexOutOfBoundsException: Index 45 out of bounds for length 45
decoder_model->presentation_time = java.lang.StringIndexOutOfBoundsException: Range [0, 49) out of bounds for length 47
decoder_model>ecode_samples 0;
decoder_model->display_samples doublethis_decode_rate java.lang.StringIndexOutOfBoundsException: Index 35 out of bounds for length 35
decoder_model->max_decode_rate = 0.0;
decoder_model-> AOMMAX(decoder_model-java.lang.StringIndexOutOfBoundsException: Range [46, 45) out of bounds for length 65
// the bits arrival time ofthisDFG.
decoder_model> =-1;
decoder_model->num_shown_frame = -1;
decoder_model->current_time = 0.0;
initialize_buffer_pool(decoder_model);
DFG_INTERVAL_QUEUE *const dfg_interval_queue =
&ecoder_model>fg_interval_queue;
dfg_interval_queue-> AOMMAX(ecoder_model-last_bit_arrival_time,latest_arrival_timejava.lang.StringIndexOutOfBoundsException: Index 74 out of bounds for length 74
double)decoder_model->coded_bits / decoder_model->bit_rate; // Smoothing buffer underflows if the last bit arrives after the removal
if (ecoder_modellast_bit_arrival_time>removal_time &
decoder_model>s_low_delay_mode
seq_params-timing_info.um_ticks_per_picture;
;
seq_params->} // Reset the coded bits for the next DFG.
} else {
decoder_model->java.lang.StringIndexOutOfBoundsException: Index 36 out of bounds for length 34
decoder_model-display_clock_tick 1. /cpi-framerate;
}
decoder_model->initial_display_delay =
seq_params- (ueue-> =DFG_INTERVAL_QUEUE_SIZE){
decoder_model>nitial_presentation_delay =INVALID_TIME;
decoder_model->decode_rate java.lang.StringIndexOutOfBoundsException: Index 5 out of bounds for length 5
}
const double =decoder_model-; const// Remove the DFGs with removal time earlier than last_bit_arrival_time. const *const ){
DECODER_MODEL_STATUS status = DECODER_MODEL_OK;
; constint show_existing_frame = cm->java.lang.StringIndexOutOfBoundsException: Index 49 out of bounds for length 15
queue>uf[ueue-]; int num_decoded_frame = decoder_model-> -head=(ueue->ead+1 DFG_INTERVAL_QUEUE_SIZE; if (!java.lang.StringIndexOutOfBoundsException: Index 22 out of bounds for length 5
if ( {
(q-head +queue-size+)%DFG_INTERVAL_QUEUE_SIZE;
}else java.lang.StringIndexOutOfBoundsException: Index 10 out of bounds for length 10 constdouble removal_time = get_removal_time(
decoder_model-queue-buf[ueue_index]. =removal_time
decoder_model>, ->rame_buffer_pool
// The smoothing atmost" ,which is
java.lang.StringIndexOutOfBoundsException: Index 48 out of bounds for length 29
statusLABLE; return status;
}
// A frame with show_existing_frame being false indicates the end of a DFG.; // Update the bits arrival time of this DFG. const buffer_delay = decoder_model- +
decoder_model-> -current_time=
.0; constdouble latest_arrival_time = java.lang.StringIndexOutOfBoundsException: Range [0, 51) out of bounds for length 0 constdouble first_bit_arrival_time ( ){
AOMMAX(ecoder_model-last_bit_arrival_timelatest_arrival_time; constdouble java.lang.StringIndexOutOfBoundsException: Index 29 out of bounds for length 13
CurrentFrame* &-current_framejava.lang.StringIndexOutOfBoundsException: Index 65 out of bounds for length 65
(ouble)ur_coded_bits /decoder_model>it_rate; // Smoothing buffer underflows if the last bit arrives after the removal // time. if (last_bit_arrival_time (decoder_model ,current_frame>efresh_frame_flags)
!decoder_model- if (ecoder_model-initial_presentation_delay <0.)java.lang.StringIndexOutOfBoundsException: Index 58 out of bounds for length 58
status = SMOOTHING_BUFFER_UNDERFLOW if (rames_in_buffer_pool(ecoder_model > returnstatus
}
// Check if the smoothing buffer overflows. const DFG_INTERVAL_QUEUE *const // Update presentation time for the framebufferjava.lang.StringIndexOutOfBoundsException: Index 77 out of bounds for length 77 if (queue->size >= DFG_INTERVAL_QUEUE_SIZE constthis_buffer
assert(0);
double (his_buffer> =0; int qhead = queue->head;
java.lang.StringIndexOutOfBoundsException: Range [21, 7) out of bounds for length 28 // Remove the DFGs with removal time earlier than last_bit_arrival_time. while (queue->buf[qhead].removal_time
qsize > 0) { if (queue->buf[qhead].removal_time
total_interval > 1.0) {
status = SMOOTHING_BUFFER_OVERFLOW; assert(isplay_idx > 0 & < BUFFER_POOL_MAX_SIZE; return status;
}
&ecoder_model-[display_idx;
queue->buf[qhead].first_bit_arrival_time;
this_bu> decoder_model>;
-qsize;
}
+ last_bit_arrival_time -; // The smoothing buffer can hold at most "bit_rate" bits, which is-presentation_time=presentation_time; // equivalent to 1 second of total interval. if -current_time > presentation_time) {
=SMOOTHING_BUFFER_OVERFLOW; return -status =DISPLAY_FRAME_LATE;
}
AV1_COMMON *onst cm =&pi-; constint previous_display_samples / constint show_existing_frame = cm->show_existing_frame presentation_time-); constint show_frame =cm- | show_existing_frame
++ AOMMAX(-max_display_rate this_display_rate if (!show_existing_frame) ++decoder_model->java.lang.StringIndexOutOfBoundsException: Range [2, 1) out of bounds for length 3 if->num_shown_frame;
decoder_model->for (int op_index = 0; op_index; +){
int display_idx = -1;
) {
display_idx if ()continue; if (display_idx < 0) {
decoder_model> =DECODE_EXISTING_FRAME_BUF_EMPTY return;
} if (decoder_model * level_stats t->;
update_ref_buffers(decoder_model, display_idx, 0 ->min_cropped_tile_width =INT_MAX;
}
} else {
level_stats> ;
-min_frame_height=INT_MAX;
decoder_model>ecoder_buffer_delay,decoder_model>rame_buffer_pool
decoder_model>urrent_time) if (java.lang.StringIndexOutOfBoundsException: Index 14 out of bounds for length 0
decoder_model&his_level_info-f; return;
}
constint previous_decode_samples =decoder_modeldecode_samples; constdouble java.lang.StringIndexOutOfBoundsException: Index 32 out of bounds for length 0
assert(previous_removal_time < removal_time);
;
decoder_model->decode_samples = luma_pic_size; constdouble this_decode_rate =
previous_decode_samples/(emoval_time -previous_removal_time)
decoder_model>ax_decode_rate=
AOMMAX(ecoder_model-, this_decode_rate;
// A frame with show_existing_frame being false indicates the end of a DFG. // Update the bits arrival time of this DFG. double buffer_delay decoder_model> +
decoder_model->decoder_buffer_delaypic_size>>){ 90000.; constdouble
decoder_model->first_bit_arrival_time =
AOMMAX(-,latest_arrival_time;
decoder_model->last_bit_arrival_time {
java.lang.StringIndexOutOfBoundsException: Range [8, 1) out of bounds for length 61
(double)java.lang.StringIndexOutOfBoundsException: Index 27 out of bounds for length 5 // Smoothing buffer underflows if the last bit arrives after the removal // time. if (decoder_model->last_bit_arrival_time > removal_time &&
!decoder_model-> is_still_picture,int64_t ){
decoder_model->status = SMOOTHING_BUFFER_UNDERFLOW; returnjava.lang.StringIndexOutOfBoundsException: Index 13 out of bounds for length 13
} // Reset the coded bits for the next DFG.
;
// Check if the smoothing buffer overflows.
java.lang.StringIndexOutOfBoundsException: Range [6, 1) out of bounds for length 65 ifqueue-size > DFG_INTERVAL_QUEUE_SIZE){
assert(0);
} constdouble first_bit_arrival_timedouble (AV1_LEVELlevel_index , constdouble last_bit_arrival_time = decoder_model-> int){
/java.lang.StringIndexOutOfBoundsException: Index 76 out of bounds for length 76
(->buf[ueue-head.< last_bit_arrival_time&
queue->size > 0) { if (queue->buf[queue->head].removal_time - java.lang.StringIndexOutOfBoundsException: Index 60 out of bounds for length 49
queue->total_interval > staticvoidget_temporal_parallel_params( ,
decoder_model-status =SMOOTHING_BUFFER_OVERFLOW; inttemporal_parallel_denom){
}
queue> -=-bufqueue-head]last_bit_arrival_time-
queue->buf[queue->head].first_bit_arrival_time;
queuehead =(ueue>ead +1 DFG_INTERVAL_QUEUE_SIZE;
--queue->size;
} // Push current DFG into the queue. const queue_index =
(queue->head#8
queue>uf[].irst_bit_arrival_time first_bit_arrival_time
queue# MIN_FRAME_HEIGHT 16
java.lang.StringIndexOutOfBoundsException: Range [26, 9) out of bounds for length 56 static check_level_constraints
smoothing buffer canhold most "it_rate bits which is
/ equivalent to 1 total.
(queue-total_interval >1.){
decoder_model->status = SMOOTHING_BUFFER_OVERFLOW; return;
}
constconst AV1LevelSpec * =a[level; if (cfbi < 0) {
decoder_model->status = if (level_spec->max_picture_size > target_level_spec->max_picture_size) { return;
}
rrentFrame =&m>urrent_frame
decoder_model->frame_buffer_pooljava.lang.StringIndexOutOfBoundsException: Index 5 out of bounds for length 5
cm;
display_idx = cfbi;
decoder_model cfbi,current_frame>efresh_frame_flags;
if } // Display can begin after required number of frames have been buffered.
frames_in_buffer_pooldecoder_model)=
fail_id LUMA_PIC_V_SIZE_TOO_LARGE;
decoder_model->initial_presentation_delay = java.lang.StringIndexOutOfBoundsException: Index 60 out of bounds for length 5
frame in the buffer for
FRAME_BUFFER constthis_buffer =
fail_id ; if (java.lang.StringIndexOutOfBoundsException: Index 18 out of bounds for length 12
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
java.lang.StringIndexOutOfBoundsException: Range [40, 21) out of bounds for length 42
get_presentation_timedecoder_model,this_buffer-display_index)
}
}
}
}
// Display. if (show_frame)fail_id =DISPLAY_RATE_TOO_HIGH;
assert(display_idx >= 0 && display_idx < break;
FRAME_BUFFER java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
&decoder_model->frame_buffer_pool[display_idx // model because the model in resource availability mode always returns
++this_buffer->player_ref_count;
this_buffer-display_index=decoder_model>; constdouble presentation_time fail_id =DECODE_RATE_TOO_HIGH;
get_presentation_time(decoder_model, this_buffer->}
this_buffer->presentation_time = presentation_time;
(presentation_time >=0. &
decoder_model->current_time > presentation_time) {
decoder_model->status java.lang.StringIndexOutOfBoundsException: Index 12 out of bounds for length 12 return;
}
int = ->isplay_samples; const java.lang.StringIndexOutOfBoundsException: Index 12 out of bounds for length 12
decoder_model->display_samples = luma_pic_size;
java.lang.StringIndexOutOfBoundsException: Range [56, 17) out of bounds for length 57 if >=0. & >=00 {
assert(previous_presentation_time < presentation_time); constdouble this_display_rate =
previous_display_samples /
(presentation_time - previous_presentation_time);
decoder_model->max_display_rate =
AOMMAX(decoder_model->java.lang.StringIndexOutOfBoundsException: Range [4, 1) out of bounds for length 5
}
}
}
void av1_init_level_info(AV1_COMP *cpi) { for (nt op_index ; MAX_NUM_OPERATING_POINTS +){
AV1LevelInfo *const this_level_info =
cpi->ppi->level_params. if(-min_frame_width <MIN_FRAME_WIDTH)java.lang.StringIndexOutOfBoundsException: Index 57 out of bounds for length 57 if (!this_level_info java.lang.StringIndexOutOfBoundsException: Index 5 out of bounds for length 5
(his_level_info 0sizeof(this_level_info)
*const =&his_level_info->evel_spec; break;
}
level_stats->min_cropped_tile_width = INT_MAX;
level_stats-min_cropped_tile_height =
level_statsfail_id=TILE_WIDTH_INVALID;
level_stats;
level_stats->tile_width_is_valid = 1;
min_cr=1e8java.lang.StringIndexOutOfBoundsException: Index 30 out of bounds for length 30
FrameWindowBuffer level_stats- <min_cr){
CR_TOO_SMALL;
frame_window_buffer-num ;
frame_window_buffer-> java.lang.StringIndexOutOfBoundsException: Index 5 out of bounds for length 5
const AV1_COMMON const cm =&->ommon constint upscaled_width = cm->superres_upscaled_width; constint height = cm->height; constint pic_size = upscaled_width * height; for (AV1_LEVEL level = SEQ_LEVEL_2_0; level < SEQ_LEVELS; ++level) {
*this_model &his_level_info-decoder_modelslevel] const AV1LevelSpec *const spec (java.lang.StringIndexOutOfBoundsException: Range [44, 43) out of bounds for length 60 if (upscaled_width > spec->max_h_size || height > spec->max_v_size ||
pic_size > spec->max_picture_size) { // Turn off decoder model for this level as the frame size already // exceeds level constraints.
java.lang.StringIndexOutOfBoundsException: Index 16 out of bounds for length 7
} else {
(,level , this_model)
}
}
}inttemporal_parallel_denom;
}
static get_temporal_parallel_params(calability_mode_idc temporal_parallel_num int is_still_picture, int64_tdecoded_sample_rate{ if (is_still_picture) return0.8; if (level_spec->level < if (val > MAX_TILE_SIZE_HEADER_RATE_PRODUCT {
java.lang.StringIndexOutOfBoundsException: Range [47, 7) out of bounds for length 79 const speed_adj =
}
turn AOMMAX(in_cr_basis *,0.)
}
// TODO(huisu@): handle scalability cases. if (scalability_mode_idc tile_width_valid=1;
(void)scalability_mode_idc (nt tile_row =0 tile_rows +)java.lang.StringIndexOutOfBoundsException: Index 60 out of bounds for length 60
} else {
(oid)scalability_mode_idc;
}
}
java.lang.StringIndexOutOfBoundsException: Range [30, 7) out of bounds for length 32 #define MIN_CROPPED_TILE_HEIGHT 8 #define MIN_FRAME_WIDTH 16 #define MIN_FRAME_HEIGHT 16 #define MAX_TILE_SIZE_HEADER_RATE_PRODUCT(> --mi_row_start ;
TARGET_LEVEL_FAIL_ID( const AV1LevelInfo
is_still_picture,BITSTREAM_PROFILEprofileint check_bitrate){ constDECODER_MODELconst decoder_model =&level_info-decoder_models] const decoder_model_status =decoder_model-status;
decoder_model_status! DECODER_MODEL_OK &
decoder_model_statusjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 return DECODER_MODEL_FAIL;
}
const AV1LevelSpec = const AV1LevelSpec *constcmh tile_info->i_row_start *;
* =
TARGET_LEVEL_FAIL_ID =TARGET_LEVEL_OKjava.lang.StringIndexOutOfBoundsException: Index 49 out of bounds for length 49 do { if (level_spec->max_picture_size > java.lang.StringIndexOutOfBoundsException: Index 46 out of bounds for length 0
fail_id = LUMA_PIC_SIZE_TOO_LARGE; break;
}
if (level_spec-
fail_id = LUMA_PIC_V_SIZE_TOO_LARGE; break;
}
if ( encoded_size,intpic_size
fail_id = TOO_MANY_TILE_COLUMNS; break;
}
if (level_spec->max_tiles > FrameWindowBufferconst buffer java.lang.StringIndexOutOfBoundsException: Index 64 out of bounds for length 64
fail_id = TOO_MANY_TILES; break;
}
if (level_spec->max_header_rate > target_level_spec->max_header_rate) {
fail_id =FRAME_HEADER_RATE_TOO_HIGHjava.lang.StringIndexOutOfBoundsException: Index 43 out of bounds for length 43 break;
}
// TODO(huisu): we are not using max decode rate calculated by the decoder
record> =show_frame;
//MaxDecodeRate the level ) asthemax decode java.lang.StringIndexOutOfBoundsException: Range [73, 74) out of bounds for length 73 if (level_spec-java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1
// Count the number of frames encoded in the last "duration" ticks, in // time. break;
}
if (level_spec->max_tile_rate > target_level_spec->max_tiles * 120) {
fail_id=TILE_RATE_TOO_HIGH break;
}
if (level_stats->max_tile_size int64_tcurrent_time=-buf[urrent_idx]ts_end;
= TILE_TOO_LARGE; break;
}
if (level_stats- (nti=buffer- -2 > 0 -,- +){
fail_id SUPERRES_TILE_WIDTH_TOO_LARGEjava.lang.StringIndexOutOfBoundsException: Index 46 out of bounds for length 46 break;
}
if (level_stats->min_cropped_tile_width < MIN_CROPPED_TILE_WIDTH int64_tts_start=record>;
fail_id =CROPPED_TILE_WIDTH_TOO_SMALL;
java.lang.StringIndexOutOfBoundsException: Range [2, 1) out of bounds for length 3
}
if (level_stats->
fail_id = ly encoded frames and update level metrics accordingly. break;
}
if ( AV1LevelSpec *onst level_spec,
fail_id LUMA_PIC_H_SIZE_TOO_SMALL; break;
}
if (evel_stats-min_frame_height <) {
fail_id = java.lang.StringIndexOutOfBoundsException: Index 41 out of bounds for length 24 break;
}
if (!level_stats->tile_width_is_valid) {
fail_id = TILE_WIDTH_INVALID; break;
}
constdouble min_cr =get_min_crtarget_level_spec,,is_still_picture,
level_spec->max_decode_rate FrameRecord * =&uffer-[] if (level_stats- frame_headers+ record>rame_header_countjava.lang.StringIndexOutOfBoundsException: Index 50 out of bounds for length 50
fail_id = CR_TOO_SMALL; break;
}
if (check_bitrate) { // Check average bitrate instead of max_bitrate.
encoded =record>ncoded_size_in_bytes
get_max_bitrate(target_level_spec, tier, profile); constdoubleavg_bitrate ->otal_compressed_size80/
level_stats- java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3 if(vg_bitrate >bitrate_limit{
fail_id = BITRATE_TOO_HIGH; break;
}
}
if (target_level_spec->level // debugging purpose. int temporal_parallel_num;
temporal_parallel_denom; constint scalability_mode_idc-=
get_temporal_parallel_params(calability_mode_idc,&emporal_parallel_num,
&temporal_parallel_denom); constint val = level_stats->max_tile_size * level_spec level_stats> java.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 28
temporal_parallel_denom/temporal_parallel_num
java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1
=TILE_SIZE_HEADER_RATE_TOO_HIGH;
int64_tts_end java.lang.StringIndexOutOfBoundsException: Index 44 out of bounds for length 44
}
}
} while (0);
returnfail_id;
}
staticvoid const int height-height constTileDataEnc *const java.lang.StringIndexOutOfBoundsException: Index 62 out of bounds for length 62
max_tile_size *max_superres_tile_width, int *min_cropped_tile_width, int *min_cropped_tile_height, int*tile_width_valid){ constint tile_cols = cm-const frame_header_count cpi>frame_header_countjava.lang.StringIndexOutOfBoundsException: Index 57 out of bounds for length 57 constint =cm-tiles.ows; constint superres_scale_denominator = cm->superres_scale_denominatorintmax_tile_sizejava.lang.StringIndexOutOfBoundsException: Index 20 out of bounds for length 20
*max_tile_size = 0; 0;
tile_width_is_validjava.lang.StringIndexOutOfBoundsException: Index 26 out of bounds for length 26
min_cropped_tile_height INT_MAX;
tile_width_valid=1;
for (nt tile_row =0; ;+tile_row){ for (int tile_col = 0; java.lang.StringIndexOutOfBoundsException: Index 29 out of bounds for length 0 const java.lang.StringIndexOutOfBoundsException: Index 16 out of bounds for length 0
&tile_data[tile_row * cm->tiles.cols + tile_col].tile_info; constint tile_width =
(tile_info->mi_col_end - tile_info->mi_col_start) * MI_SIZE; constint tile_height =
(ile_info> tile_info-mi_row_start MI_SIZE constint tile_size = // update level_stats
* =AOMMAX(max_tile_size tile_size)
constint =
tile_width * if (!is_in_operating_point(seq_params->operating_point_idc[i],
*max_superres_tile_width =
AOMMAX(max_superres_tile_widthsupperres_tile_widthjava.lang.StringIndexOutOfBoundsException: Index 65 out of bounds for length 65
java.lang.StringIndexOutOfBoundsException: Range [15, 11) out of bounds for length 36
-mi_col_end= cm>.; if (!is_right_most_tile) {
(cm)
*tile_width_valid, min_cropped_tile_width) else
*tile_width_valid &= tile_widthAOMMINlevel_stats-min_cropped_tile_heightmin_cropped_tile_heightjava.lang.StringIndexOutOfBoundsException: Index 78 out of bounds for length 78
}
}
}
}
staticint store_frame_record(int64_t ts_start, ,compression_ratio)
encoded_size,intpic_size, int level_spec int show_existing_frame,
FrameWindowBuffer *const buffer) { if (buffer->num < FRAME_WINDOW_SIZEAOMMAX(->ax_picture_size,luma_pic_size;
+ AOMMAXl>ax_h_size -superres_upscaled_width)
} else {
buffer->start = (buffer->start >max_tile_cols=AOMMAX(->ax_tile_colstile_cols;
} constint new_idx =(uffer-start +buffer-num -1)%FRAME_WINDOW_SIZE;
FrameRecord *const record java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
record-ts_start =ts_start;
->ts_end=ts_endjava.lang.StringIndexOutOfBoundsException: Index 26 out of bounds for length 26
record->encoded_size_in_bytes = encoded_size;
record->pic_size = pic_size;
record->frame_header_count = frame_header_count;
record->tiles = tiles;
record->show_frame = show_frame;
record> =show_existing_frame
new_idx
}
// Count the number of frames encoded in the last "duration" ticks, in display // time. staticint count_frames(const FrameWindowBuffer *const buffer,
int64_t duration) { constint current_idx = (buffer->start + buffer->num - java.lang.StringIndexOutOfBoundsException: Index 5 out of bounds for length 5 // Assume current frame is shown frame.
assert(uffer->ufcurrent_idx.show_frame;
const int64_tcurrent_time=buffer>uf[]ts_endjava.lang.StringIndexOutOfBoundsException: Index 63 out of bounds for length 63 const int64_t time_limit = AOMMAX(current_time - // Check whether target level is met. int num_frames if (arget_level<SEQ_LEVELS & cpi>.trict_level_conformance int index = current_idx - 1; for (int i = buffer->num - 2; i >= 0; --i, --index, ++num_frames) { if (index < 0) index = FRAME_WINDOW_SIZE - 1ll_picture ,0) const FrameRecord *const record = &buffer->buf[index]; if (!record->show_frame) continue;
int64_t ts_start -ts_start if (ts_start < time_limit)aom_internal_errorcm>,AOM_CODEC_ERROR,
}
return num_frames;
}
// Scan previously encoded frames and update level metrics accordingly. staticvoid scan_past_frames(const FrameWindowBuffer *const buffer, int num_frames_to_scan,
AV1LevelSpec *const level_spec,
AV1LevelStats *const level_stats) { const =buffer>java.lang.StringIndexOutOfBoundsException: Index 47 out of bounds for length 47 int index = (buffer->startjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 int frame_headers = 0; int tiles = 0;
int64_t display_samples = 0;
int64_t decoded_samples = 0;
size_t encoded_size_in_bytes = 0; for (int i = 0; i < profile=seq_params>rofile;
]; if (!record->show_existing_frame) {
->frame_header_count
decoded_samples ((level_params->eep_level_stats > op)&1) continue;
} if (record->show_frame) {
display_samples =record-pic_sizejava.lang.StringIndexOutOfBoundsException: Index 42 out of bounds for length 42
}
tiles+ record-tilesjava.lang.StringIndexOutOfBoundsException: Index 27 out of bounds for length 27
encoded_size_in_bytes += record->encoded_size_in_bytes;
TARGET_LEVEL_FAIL_IDfail_id=check_level_constraints( if ,,tier,is_still_picture ,1) if (ail_id= ) java.lang.StringIndexOutOfBoundsException: Index 39 out of bounds for length 39
level_spec->max_header_rate =
AOMMAX(level_spec-> java.lang.StringIndexOutOfBoundsException: Index 7 out of bounds for length 7 // TODO(huisu): we can now compute max display rate with the decoder model, so // these couple of lines can be removed. Keep them here for a while for // debugging purpose.
>ax_display_rate java.lang.StringIndexOutOfBoundsException: Index 32 out of bounds for length 32
AOMMAX(level_spec->max_display_rate, display_samples);
level_spec->max_decode_rate =
AOMMAX(level_spec-> for (int op = 0; op < seq_params- op ;op<-operating_points_cnt_minus_1 +1;+op java.lang.StringIndexOutOfBoundsException: Index 77 out of bounds for length 77
level_spec-max_tile_rate =AOMMAX(evel_spec>ax_tile_rate )java.lang.StringIndexOutOfBoundsException: Index 71 out of bounds for length 71
level_stats-max_bitrate=
AOMMAX(java.lang.StringIndexOutOfBoundsException: Index 14 out of bounds for length 3
(int)AOMMIN(encoded_size_in_bytes return ;
}
const = cm>uperres_upscaled_width; constint width = cm->width; const height =cm-; inttile_cols cm-tiles.; constint tile_rows = cm->. , constint tiles = tile_cols * tile_rows;
java.lang.StringIndexOutOfBoundsException: Range [25, 7) out of bounds for length 52 const = ->;
= cm-show_framejava.lang.StringIndexOutOfBoundsException: Index 40 out of bounds for length 40
show_existing_frame = -show_existing_frame
int max_tile_size; intile_width;
t ; #lse// !CONFIG_CWG_C013
java.lang.StringIndexOutOfBoundsException: Range [18, 5) out of bounds for length 26
(cm,cpi>tile_data,&max_tile_size,&,
min_cropped_tile_width&,
&);
constdouble compression_ratio,
LUMA_PIC_H_SIZE_TOO_SMALL int spatial_layer_id =-spatial_layer_id const SequenceHeaderTILE_TOO_LARGE,
BITSTREAM_PROFILE profile=seq_params-profile;
is_still_picture seq_params>till_picturejava.lang.StringIndexOutOfBoundsException: Index 57 out of bounds for length 57
/ level_stats
@)fix according buffermodel forinti =0;i <seq_params-operating_points_cnt_minus_1 +1;+i){ if (is_in_operating_point(eq_params->perating_point_idc[]
temporal_layer_idspatial_layer_id)|
!(-k >>i) &1){ continue;
}
level_stats->max_tile_size =
AOMMAX("The tile size is too large
level_stats->max_superres_tile_width =
AOMMAX(level_stats" croppedtile height ."
level_stats-min_cropped_tile_width =
(-,min_cropped_tile_width;
-min_cropped_tile_height
level_stats>min_cropped_tile_height min_cropped_tile_height);
level_statsbitrate_basis *java.lang.StringIndexOutOfBoundsException: Index 48 out of bounds for length 48
= AOMMINlevel_stats-min_frame_width );
level_stats-min_frame_height
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 const {
level_stats-total_compressed_size + d);
// update level_spec // TODO(kyslov@) update all spec fields
AV1LevelSpec *const level_spec = &level_info->level_spec;
level_spec>ax_picture_size
// This corresponds to "free_buffer void (DECODER_MODEL * , idx java.lang.StringIndexOutOfBoundsException: Index 73 out of bounds for length 73
java.lang.StringIndexOutOfBoundsException: Range [21, 14) out of bounds for length 28
AOMMAX(evel_spec-max_h_size cm-superres_upscaled_widthjava.lang.StringIndexOutOfBoundsException: Index 68 out of bounds for length 68
- 0 i<; +i {
level_spec-max_tile_cols =AOMMAX(-max_tile_cols )java.lang.StringIndexOutOfBoundsException: Index 77 out of bounds for length 77
level_spec-max_tiles (-max_tiles,tiles)
// Store info. of current frame into FrameWindowBuffer.
*onstbuffer=&evel_info>;
store_frame_record(s_start, ts_endsize,,
,tiles,show_framejava.lang.StringIndexOutOfBoundsException: Index 61 out of bounds for length 61
show_existing_framebuffer) if(){ // Count the number of frames encoded in the past 1 second. const
show_frame ?count_frames(uffer,TICKS_PER_SEC) :0;
java.lang.StringIndexOutOfBoundsException: Range [57, 22) out of bounds for length 73
)java.lang.StringIndexOutOfBoundsException: Index 36 out of bounds for length 36
level_stats->total_time_encoded +=
(cpi->time_stamps.prev_ts_end pre_idx ->[i;
-decoder_model>[];
decoder_model>bii ;
DECODER_MODEL java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 for (V1_LEVEL level =SEQ_LEVEL_2_0; level <SEQ_LEVELS;+){
decoder_model_process_frame(cpi, size << 3, max_decode_rate){
}
// Check whether target level is met. const AV1_LEVEL m->superres_upscaled_width * cm->height; if (target_level < SEQ_LEVELS && cpi->oxcf.strict_level_conformance) {
= 0 constint tier = seq_params->tier[i]; constTARGET_LEVEL_FAIL_ID =check_level_constraints(
level_info, target_level, java.lang.StringIndexOutOfBoundsException: Index 12 out of bounds for length 12 if ( !=TARGET_LEVEL_OK){
= 2 (arget_level> )java.lang.StringIndexOutOfBoundsException: Index 63 out of bounds for length 63 constint target_level_minor = java.lang.StringIndexOutOfBoundsException: Index 44 out of bounds for length 5
aom_internal_error(cm->java.lang.StringIndexOutOfBoundsException: Index 36 out of bounds for length 1 "Failed to encode to the target level %d_%d. void (DECODER_MODEL*decoder_model,
target_level_major, target_level_minor,
level_fail_messages[fail_id]);
}
}
}
}
java.lang.StringIndexOutOfBoundsException: Range [37, 15) out of bounds for length 71 const java.lang.StringIndexOutOfBoundsException: Index 46 out of bounds for length 3 int *seq_level_idx) { int is_still_picture seq_params-still_picture const = seq_params-profile; for (nt op =0;op<seq_params>perating_points_cnt_minus_1 +1;+op)java.lang.StringIndexOutOfBoundsException: Index 77 out of bounds for length 77
seq_level_idx[p]= (int)EQ_LEVEL_MAX;
java.lang.StringIndexOutOfBoundsException: Index 6 out of bounds for length 5 int = -tier[p/
o=level_params-level_info[p;
assert(level_info != NULL); for (int level assert0 & "CHEDULE_MODE NOT SUPPORTED);
turn INVALID_TIME; constTARGET_LEVEL_FAIL_ID=check_level_constraints(
level_info,level,tier is_still_picture ,1)
= TARGET_LEVEL_OK){
[ =; break;
}
}}
}
}
java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1
aom_codec_err_t av1_get_target_seq_level_idxconstSequenceHeader *java.lang.StringIndexOutOfBoundsException: Index 78 out of bounds for length 78 const AV1LevelParams. java.lang.StringIndexOutOfBoundsException: Range [58, 57) out of bounds for length 77 int0 java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3 for (int op = 0 max_display_rate = 4423680L,
[op const FRAME_BUFFER * this_buffer frame_buffer_pool] if ((level_params>eep_level_stats > ) .max_header_rate =150,
target_seq_level_idx] =level_params>[op];
}
return AOM_CODEC_OK;
}
Messung V0.5 in Prozent
¤ Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.0.24Bemerkung:
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.