Если флаг concealment_motion_vectors=1, то вектора компенсации движения кодируются вместе с интра макроблоками, иначе они не кодируются.
Флаг q_scale_type влияет на процесс инверсного квантования, флаги intra_vlc_format и alternate_scan – на декодирование коэффициентов предсказания.
Флаг repeat_first_field применяется только в КК, в ПК он равен 0. В КК он совместно с другими флагами определяет порядок декодирования полей кадра.
Флаг chroma_420_type – если формат 4:2:0, то он должен быть равен progressive_frame, иначе – 0. Этот флаг существует для совместимости.
Флаг progressive_frame равен нулю, если кадр состоит из двух чересстрочных полей и равен 1, если развертка - прогрессивная. Его значение влияет на значения некоторых других флагов.
Флаг composite_display_flag равен 1, если изображение до кодирования было представлено в композитном аналоговом формате. Различные элементы, присутствующие в потоке, если флаг равен 1, не влияют на процесс декодирования. Существуют также флаги специфичные только для PAL-систем – v_axis и field_sequence.
Флаг sub_carrier и параметр sub_carrier_phase связаны с фазой поднесущего колебания, в параметре burst_amplitude содержится информация об амплитуде импульса (только для NTSC и PAL систем). Так как все эти флаги не влияют на процесс декодирования, они могут быть применены для переноса информации.
При декодировании sequence_header_code все матрицы устанавливаются в значения по умолчанию. Далее могут быть применены пользовательские матрицы, описываемые в sequence_header() или quant_matrix_extension().
При 4:2:0 используются 2 матрицы квантования – одна для внутрикадрового кодирования, другая – для межкадрового.
При 4:2:2 и при 4:4:4 используются 4 матрицы квантования – для яркостной и цветоразностной компоненты применяются обычно разные матрицы.
Ниже представлена матрица по умолчанию для интра блоков:
8 |
16 |
19 |
22 |
26 |
27 |
29 |
34 |
16 |
16 |
22 |
24 |
27 |
29 |
34 |
37 |
19 |
22 |
26 |
27 |
29 |
34 |
34 |
38 |
22 |
22 |
26 |
27 |
29 |
34 |
37 |
40 |
22 |
26 |
27 |
29 |
32 |
35 |
40 |
48 |
26 |
27 |
29 |
32 |
35 |
40 |
48 |
58 |
26 |
27 |
29 |
34 |
38 |
46 |
56 |
69 |
27 |
29 |
35 |
38 |
46 |
56 |
69 |
83 |
А вот матрица по умолчанию для межкадрового кодирования
16 |
16 |
16 |
16 |
16 |
16 |
16 |
16 |
16 |
16 |
16 |
16 |
16 |
16 |
16 |
16 |
16 |
16 |
16 |
16 |
16 |
16 |
16 |
16 |
16 |
16 |
16 |
16 |
16 |
16 |
16 |
16 |
16 |
16 |
16 |
16 |
16 |
16 |
16 |
16 |
16 |
16 |
16 |
16 |
16 |
16 |
16 |
16 |
16 |
16 |
16 |
16 |
16 |
16 |
16 |
16 |
16 |
16 |
16 |
16 |
16 |
16 |
16 |
16 |
Флаг load_intra_quantiser_matrix равен 1 если далее следует intra_quantiser_matrix.
intra_quantiser_matrix есть список из 64 8-битных значений. Эти значения в зигзагообразном порядке записываются в таблицу квантования, замещая имеющиеся значения. Первое значение всегда равно 8, нулевые значения не допускаются.
Точно также далее идет флаг load_non_intra_quantiser_matrix и в случае его равенства 1, структура non_intra_quantiser_matrix. Далее идет флаг load_chroma_intra_quantiser_matrix и chroma_intra_quantiser_matrix, затем флаг load_chroma_non_intra_quantiser_matrix и числа chroma_non_intra_quantiser_matrix. Значения матриц квантования могут быть модулированы дополнительной информацией.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.