ГОСТ Р 53556.4—2013
- какопределить layer_startjndex [). стартовое смещение спектральных компонентов, которые будут
вновь добавлены в каждом уровне масштабируемости;
- какопределить layer_start_cband[), стартовую полосу кодирования, которая будет вновьдобавлена
в каждом уровне масштабируемости:
layer = 0;
for(д =0:д < num_windoiv_groups:д**) {
for (cband = 0; cband < end_cband[g]: cband**) {
layer_start_cbandflayer) = cband:
end_cband[g] =layor_end_cband[layer] =cband*1;
layer_startjndex[layer] = cband *32;
end_index[g] =layer_ondJndexpayer**] = (cband*1) * 32;
;
if(window_sequence ==EIGHT_SHORT_SEQUENCE)
last_index[g] =swb_offset_short_window[fsJndex][max_sfb] *
wndow_groupjongth[g);
else
last_index[g] =swb_offset_bng_window[fs_indox][max_sfb];
}
for(layer =slayer_size; layer < (top_layer*slayer_size): layer**) {
g =layer_group{layer]:
layer_start_index(layer] = end_index[g]: if (fs ==44100 || fs == 48000; {
if (ond_index(g}%32 ==0)
end_index[g] += 8;
else
endjndexfg] *= 12;
;
else if (fs == 22050 || fs == 24000 || fs == 32000;
end_index[g] += 16;
else if (fs == 11025 || fs == 12000 || fs == 16000;
end_index[g] *= 32;
else
end_index[g] += 64;
if(endjndexfg) >lastjndex[gj)
endjndexfg]= lastjndexfg):
layer_endjndex[layer] =endjndexfg):
layer_start_cbandflayerJ =end_cband[g).
end_cbandfg) =layer_end_cband[layer]=(endjndex[g] * 31; /32;
h
где fs является частотой дискретизации,
- какопределить layer_end_sfb []. конечную полосу масштабного коэффициента, которая будет вновь
добавлена в каждом уровне масштабируемости;
- как определить layer_start_sfb[]. стартовую полосу масштабного коэффициента, которая будет вновь
добавлена в каждом уровне масштабируемости:
for (д =0:д < num_window_groups:д**)
end_sfb[g) = 0;
for (layer = 0; layer < (topJayer+slayer_size): layer**) {
g =layer_groupflayer):
layer_start_sfbflayer] = end_sfb[g):
layer_ond_sfbflayer) = max_sfb:
for (sfb = 0; sfb < max_sfb: sfb**) {
if (layer_endjndex[layer) <=
swb_offset_short_w)ndowffsjndex][sfb] *window^groupjengthfgj) {
layer_end_sfb(layer] = sfb * 1;
break:
}
}
84