ТЕСТИРОВАНИЕ НА СООТВЕТСТВИЕ БИТОВОГО ПОТОКА

1. Способ обработки видеоданных, причем способ содержит:
выполнение теста соответствия потока битов, который определяет, соответствует ли поток битов, содержащий закодированные видеоданные, стандарту кодирования видео, в котором выполнение теста соответствия потока битов содержит:
выбор рабочей точки, подвергаемой тесту; и
вызов процесса декодирования, который содержит:
определение целевого наивысшего временного идентификатора, при этом определение значения целевого наивысшего временного идентификатора содержит:
когда процесс декодирования вызывается в тесте соответствия потока битов, определение, что целевой наивысший временный идентификатор равен наибольшему временному идентификатору, присутствующему в представлении рабочей точки рабочей точки, подвергаемой тесту; и
когда процесс декодирования не вызывается в тесте соответствия потока битов, определение, что целевой наивысший временный идентификатор равен значению элемента синтаксиса в наборе параметров последовательности (SPS);
выполнение процесса извлечения потока битов, который выводит подпоток битов, посредством удаления из потока битов всех единиц уровня абстракции сети (NAL) с временными идентификаторами, большими чем целевой наивысший временный идентификатор, причем целевой наивысший временный идентификатор является меньшим чем или равным наибольшему временному идентификатору, присутствующему в потоке битов; и
декодирование единиц NAL подпотока битов.
2. Способ по п. 1, в котором:
рабочая точка является первой рабочей точкой,
способ также содержит выполнение процесса декодирования во второй раз,
когда процесс декодирования выполняется во второй раз, процесс декодирования не выполняется в качестве части теста соответствия потока битов, и
выполнение процесса декодирования в течение второго раза содержит:
прием, из внешнего источника, второго целевого наивысшего временного идентификатора;
выполнение процесса извлечения потока битов, чтобы вывести второй подпоток битов, посредством удаления из потока битов всех единиц NAL с временными идентификаторами, большими чем второй целевой наивысший временный идентификатор; и
декодирование единиц NAL второго подпотока битов.
3. Способ по п. 1, в котором:
рабочая точка является первой рабочей точкой,
способ также содержит выполнение процесса декодирования во второй раз,
когда процесс декодирования выполняется во второй раз, процесс декодирования не выполняется в качестве части теста соответствия потока битов, и
выполнение процесса декодирования в течение второго раза содержит:
выполнение процесса извлечения потока битов, чтобы извлечь из потока битов представление рабочей точки второй рабочей точки,
в котором 0 является единственным значением, указанным элементами синтаксиса идентификатора уровня, присутствующими в представлении рабочей точки второй рабочей точки, и
в котором наибольший временный идентификатор, присутствующий в потоке битов, равен наибольшему временному идентификатору, присутствующему в представлении рабочей точки второй рабочей точки; и
декодирование единиц NAL представления рабочей точки второй рабочей точки.
4. Способ по п. 1, в котором выполнение теста соответствия потока битов содержит:
выбор набора параметров гипотетического опорного декодера (HRD), применимых к рабочей точке, подвергаемой тесту; и
использование выбранного набора параметров HRD, чтобы конфигурировать HRD, который выполняет процесс декодирования.
5. Способ по п. 4, в котором:
выполнение процесса декодирования также содержит декодирование из SPS массива элементов синтаксиса, при этом каждый из элементов синтаксиса в упомянутом массиве указывает максимальный требуемый размер буфера декодированных картинок (DPB) в HRD, и
выполнение теста соответствия потока битов содержит:
определение, на основании целевого наивысшего временного идентификатора, конкретного элемента синтаксиса в массиве; и
определение, что поток битов не находится в соответствии со стандартом кодирования видео, когда значение, указанное этим конкретным элементом синтаксиса, больше чем максимальный размер DPB.
6. Способ по п. 4, в котором:
выполнение процесса декодирования содержит декодирование из SPS массива элементов синтаксиса, который каждый указывает максимальный требуемый размер DPB упомянутого HRD, и
выполнение теста соответствия потока битов содержит:
определение, на основании целевого наивысшего временного идентификатора, конкретного элемента синтаксиса в массиве; и
выполнение процесса выталкивания, который опустошает один или более буферов хранения картинок DPB, когда текущая картинка не является картинкой мгновенного обновления декодирования (IDR) или картинкой доступа с разорванной ссылкой (BLA), и количество картинок в DPB, помеченных как необходимые для вывода, больше чем значение, указанное этим конкретным элементом синтаксиса.
7. Способ по п. 4, в котором:
выполнение процесса декодирования содержит декодирование из упомянутого SPS массива элементов синтаксиса, который каждый указывает максимальный требуемый размер DPB упомянутого HRD, и
выполнение теста соответствия потока битов содержит:
определение, на основании целевого наивысшего временного идентификатора, конкретного элемента синтаксиса в массиве; и
выполнение процесса выталкивания, который опустошает один или более буферов хранения картинок DPB, когда текущая картинка не является картинкой IDR или картинкой BLA, и количество
картинок в DPB указано этим конкретным элементом синтаксиса.
8. Способ по п. 4, в котором:
выполнение процесса декодирования содержит декодирование из SPS массива элементов синтаксиса, который каждый указывает максимальный требуемый размер DPB упомянутого HRD,
выполнение теста соответствия потока битов содержит определение, на основании целевого наивысшего временного идентификатора, конкретного элемента синтаксиса в массиве, и
количество буферов хранения картинок в DPB указаны этим конкретным элементом синтаксиса.
9. Способ по п. 4, в котором выполнение процесса декодирования содержит:
декодирование, из SPS, активного для текущей картинки, первого массива элементов синтаксиса, который каждый указывает максимальный требуемый размер DPB упомянутого HRD;
декодирование, из SPS, активного для предыдущей картинки, второго массива элементов синтаксиса, который каждый указывает максимальный требуемый размер DPB упомянутого HRD;
определение, на основании целевого наивысшего временного идентификатора, первого элемента синтаксиса в первом массиве;
определение, на основании целевого наивысшего временного идентификатора, второго элемента синтаксиса во втором массиве; и
когда текущая картинка является картинкой IDR или картинкой BLA, и значение, указанное первым элементом синтаксиса, является отличным, чем значение, указанное вторым элементом синтаксиса, логическое выведение значения третьего элемента синтаксиса независимо от значения, указанного третьим элементом синтаксиса, в котором третий элемент синтаксиса задает, как ранее декодированные картинки в DPB обрабатываются после декодирования картинки IDR или картинки BLA.
10. Способ по п. 4, в котором:
выполнение процесса декодирования содержит декодирование синтаксической структуры параметров HRD, которая включает в себя выбранный набор параметров HRD, в котором выбранный набор параметров HRD включает в себя массив элементов синтаксиса, который каждый указывает количество альтернативных спецификаций
буфера кодированных картинок (CPB) в потоке битов; и
выполнение теста соответствия потока битов содержит:
выбор, на основании целевого наивысшего временного идентификатора, конкретного элемента синтаксиса в массиве;
выбор индекса выбора планировщика в диапазоне от 0 до значения, указанного конкретным элементом синтаксиса; и
определение, на основании, по меньшей мере частично, индекса выбора планировщика, начальной задержки удаления из CPB для CPB в HRD.
11. Способ по п. 4,
в котором выполнение процесса декодирования также содержит декодирование из упомянутого SPS массива элементов синтаксиса, при этом каждый из элементов синтаксиса в упомянутом массиве указывает максимальный требуемый размер DPB упомянутого HRD; и
в котором выполнение теста соответствия потока битов содержит:
определение, на основании целевого наивысшего временного идентификатора, конкретного элемента синтаксиса в массиве; и
определение, на основании, по меньшей мере частично, того, является ли количество декодированных картинок в DPB меньшим чем или равным максимуму из 0 и значения, указанного конкретным элементом синтаксиса минус 1, соответствует ли поток битов стандарту кодирования видео.
12. Устройство, содержащее:
запоминающий носитель, сконфигурированный, чтобы хранить закодированные видеоданные; и
один или более процессоров, сконфигурированных для выполнения теста соответствия потока битов, который определяет, соответствует ли поток битов, содержащий закодированные видеоданные, стандарту кодирования видео, в котором для выполнения теста соответствия потока битов один или более процессоров:
выбирают рабочую точку, подвергаемую тесту; и
вызывают процесс декодирования, который содержит:
определение целевого наивысшего временного идентификатора, при этом определение значения целевого наивысшего временного идентификатора содержит:
когда процесс декодирования вызывается в тесте соответствия потока битов, определение, что целевой наивысший временный идентификатор равен наибольшему временному идентификатору, присутствующему в представлении рабочей точки рабочей точки, подвергаемой тесту; и
когда процесс декодирования не вызывается в тесте соответствия потока битов, определение, что целевой наивысший временный идентификатор равен значению элемента синтаксиса в наборе параметров последовательности (SPS);
выполнение процесса извлечения потока битов, который выводит подпоток битов, посредством удаления из потока битов всех единиц уровня абстракции сети (NAL) с временными идентификаторами, большими чем целевой наивысший временный идентификатор, причем целевой наивысший временный идентификатор является меньшим чем или равным наибольшему временному идентификатору, присутствующему в потоке битов; и
декодирование единиц NAL подпотока битов.
13. Устройство по п. 12, в котором:
рабочая точка является первой рабочей точкой,
один или более процессоров конфигурируются, чтобы выполнять процесс декодирования во второй раз,
когда процесс декодирования выполняется во второй раз, процесс декодирования не выполняется в качестве части теста соответствия потока битов, и
один или более процессоров конфигурируются таким образом, что когда один или более процессоров выполняют процесс декодирования в течение второго раза, один или более процессоров:
принимают, из внешнего источника, второй целевой наивысший временный идентификатор;
выполняют процесс извлечения потока битов, чтобы вывести второй подпоток битов, посредством удаления из потока битов всех единиц NAL с временными идентификаторами, большими чем второй целевой наивысший временный идентификатор; и
декодируют единицы NAL второго подпотока битов.
14. Устройство по п. 12, в котором:
рабочая точка является первой рабочей точкой,
один или более процессоров конфигурируются, чтобы выполнять процесс декодирования во второй раз,
когда процесс декодирования выполняется во второй раз, процесс декодирования не выполняется в качестве части теста соответствия потока битов, и
один или более процессоров конфигурируются таким образом, что когда один или более процессоров выполняют процесс декодирования в течение второго раза, один или более процессоров:
выполняют процесс извлечения потока битов, чтобы извлечь из потока битов представление рабочей точки второй рабочей точки,
в котором 0 является единственным значением, указанным элементами синтаксиса идентификатора уровня, присутствующими в представлении рабочей точки второй рабочей точки, и
в котором наибольший временный идентификатор, присутствующий в потоке битов, равен наибольшему временному идентификатору, присутствующему в представлении рабочей точки второй рабочей точки; и
декодируют единицы NAL представления рабочей точки второй рабочей точки.
15. Устройство по п. 12, в котором один или более процессоров конфигурируются таким образом, что когда один или более процессоров выполняют тест соответствия потока битов, один или более процессоров:
выбирают набор параметров гипотетического опорного декодера (HRD), применимых к рабочей точке, подвергаемой тесту; и
используют выбранный набор параметров HRD, чтобы конфигурировать HRD, который выполняет процесс декодирования.
16. Устройство по п. 15, в котором:
один или более процессоров конфигурируются таким образом, что, когда один или более процессоров выполняют процесс декодирования, упомянутые один или более процессоров декодируют, из SPS, массив элементов синтаксиса, при этом каждый из элементов синтаксиса в упомянутом массиве указывает максимальный требуемый размер буфера декодированных картинок (DPB) в HRD, и
когда один или более процессоров выполняют тест соответствия потока битов, один или более процессоров:
определяют, на основании целевого наивысшего временного идентификатора, конкретный элемент синтаксиса в массиве; и
определяют, что поток битов не находится в соответствии со стандартом кодирования видео, когда значение, указанное этим конкретным элементом синтаксиса, больше чем максимальный размер DPB.
17. Устройство по п. 15, в котором:
когда один или более процессоров выполняют процесс декодирования, упомянутые один или более процессоров декодируют, из SPS, массив элементов синтаксиса, который каждый указывает максимальный требуемый размер DPB упомянутого HRD; и
когда один или более процессоров выполняют тест соответствия потока битов, один или более процессоров:
определяют, на основании целевого наивысшего временного идентификатора, конкретный элемент синтаксиса в массиве; и
выполняют процесс выталкивания, который опустошает один или более буферов хранения картинок DPB, когда текущая картинка не является картинкой мгновенного обновления декодирования (IDR) или картинкой доступа с разорванной ссылкой (BLA), и количество картинок в DPB, помеченных как необходимые для вывода, больше чем значение, указанное этим конкретным элементом синтаксиса.
18. Устройство по п. 15, в котором:
когда один или более процессоров выполняют процесс декодирования, упомянутые один или более процессоров декодируют, из упомянутого SPS, массив элементов синтаксиса, который каждый указывает максимальный требуемый размер DPB упомянутого HRD; и
когда один или более процессоров выполняют тест соответствия потока битов, один или более процессоров:
определяют, на основании целевого наивысшего временного идентификатора, конкретный элемент синтаксиса в массиве; и
выполняют процесс выталкивания, который опустошает один или более буферов хранения картинок DPB, когда текущая картинка не является картинкой IDR или картинкой BLA, и количество картинок в DPB указано этим конкретным элементом синтаксиса.
19. Устройство по п. 15, в котором:
когда один или более процессоров выполняют процесс декодирования, упомянутые один или более процессоров декодируют, из упомянутого SPS, массив элементов синтаксиса, который каждый указывает максимальный требуемый размер DPB упомянутого HRD,
когда один или более процессоров выполняют тест соответствия потока битов, упомянутые один или более процессоров определяют, на основании целевого наивысшего временного идентификатора, конкретный элемент синтаксиса в массиве, и
количество буферов хранения картинок в DPB указаны этим конкретным элементом синтаксиса.
20. Устройство по п. 15,
в котором, когда один или более процессоров выполняют процесс декодирования, один или более процессоров:
декодируют, из SPS, активного для текущей картинки, первый массив элементов синтаксиса, который каждый указывает максимальный требуемый размер DPB упомянутого HRD;
декодируют, из SPS, активного для предыдущей картинки, второй массив элементов синтаксиса, который каждый указывает максимальный требуемый размер DPB упомянутого HRD;
определяют, на основании целевого наивысшего временного идентификатора, первый элемент синтаксиса в первом массиве;
определяют, на основании целевого наивысшего временного идентификатора, второй элемент синтаксиса во втором массиве; и
когда текущая картинка является картинкой IDR или картинкой BLA, и значение, указанное первым элементом синтаксиса, является отличным, чем значение, указанное вторым элементом синтаксиса, логически выводят значение третьего элемента синтаксиса независимо от значения, указанного третьим элементом синтаксиса, в котором третий элемент синтаксиса задает, как ранее декодированные картинки в DPB обрабатываются после декодирования картинки IDR или картинки BLA.
21. Устройство по п. 15,
в котором, когда один или более процессоров выполняют процесс декодирования, упомянутые один или более процессоров декодируют синтаксическую структуру параметров HRD, которая
включает в себя выбранный набор параметров HRD, в котором выбранный набор параметров HRD включает в себя массив элементов синтаксиса, который каждый указывает количество альтернативных спецификаций буфера кодированных картинок (CPB) в потоке битов; и
в котором, когда один или более процессоров выполняют тест соответствия потока битов, один или более процессоров:
выбирают, на основании целевого наивысшего временного идентификатора, конкретный элемент синтаксиса в массиве;
выбирают индекс выбора планировщика в диапазоне от 0 до значения, указанного конкретным элементом синтаксиса; и
определяют на основании, по меньшей мере частично, индекса выбора планировщика, начальную задержку удаления из CPB для CPB в HRD.
22. Устройство по п. 15,
в котором, когда один или более процессоров выполняют процесс декодирования, упомянутые один или более процессоров декодируют, из упомянутого SPS, массив элементов синтаксиса, при этом каждый из элементов синтаксиса в упомянутом массиве указывает максимальный требуемый размер DPB упомянутого HRD; и
в котором, когда один или более процессоров выполняют тест соответствия потока битов, один или более процессоров:
определяют, на основании целевого наивысшего временного идентификатора, конкретный элемент синтаксиса в массиве; и
определяют, на основании, по меньшей мере частично, того, является ли количество декодированных картинок в DPB меньшим чем или равным максимуму из 0 и значения, указанного конкретным элементом синтаксиса минус 1, соответствует ли поток битов стандарту кодирования видео.
23. Устройство, содержащее:
средство для того, чтобы выполнить тест соответствия потока битов, который определяет, соответствует ли поток битов, содержащий закодированные видеоданные, стандарту кодирования видео, при этом выполнение теста соответствия потока битов содержит:
выбор рабочей точки, подвергаемой тесту; и
вызов процесса декодирования, который содержит:
определение целевого наивысшего временного идентификатора, при этом определение значения целевого наивысшего временного идентификатора содержит:
когда процесс декодирования вызывается в тесте соответствия потока битов, определение, что целевой наивысший временный идентификатор равен наибольшему временному идентификатору, присутствующему в представлении рабочей точки рабочей точки, подвергаемой тесту; и
когда процесс декодирования не вызывается в тесте соответствия потока битов, определение, что целевой наивысший временный идентификатор равен значению элемента синтаксиса в наборе параметров последовательности (SPS);
выполнение процесса извлечения потока битов, который выводит подпоток битов, посредством удаления из потока битов всех единиц уровня абстракции сети (NAL) с временными идентификаторами, большими чем целевой наивысший временный идентификатор, причем целевой наивысший временный идентификатор является меньшим чем или равным наибольшему временному идентификатору, присутствующему в потоке битов; и
декодирование единиц NAL подпотока битов.
24. Устройство по п. 23, в котором выполнение теста соответствия потока битов содержит:
выбор набора параметров гипотетического опорного декодера (HRD), применимых к рабочей точке, подвергаемой тесту; и
использование выбранного набора параметров HRD, чтобы конфигурировать HRD, который выполняет процесс декодирования.
25. Считываемый компьютером запоминающий носитель, имеющий инструкции, сохраненные на нем, которые, когда выполняются одним или более процессорами устройства, конфигурируют устройство:
выполнять тест соответствия потока битов, который определяет, соответствуют ли поток битов, содержащий закодированные видеоданные, стандарту кодирования видео, в котором выполнение теста соответствия потока битов содержит:
выбор рабочей точки, подвергаемой тесту; и
вызов процесса декодирования, который содержит:
определение целевого наивысшего временного идентификатора, при этом определение значения целевого наивысшего временного идентификатора содержит:
когда процесс декодирования вызывается в тесте соответствия потока битов, определение, что целевой наивысший временный идентификатор равен наибольшему временному идентификатору, присутствующему в представлении рабочей точки рабочей точки, подвергаемой тесту; и
когда процесс декодирования не вызывается в тесте соответствия потока битов, определение, что целевой наивысший временный идентификатор равен значению элемента синтаксиса в наборе параметров последовательности (SPS);
выполнение процесса извлечения потока битов, который выводит подпоток битов, посредством удаления из потока битов всех единиц уровня абстракции сети (NAL) с временными идентификаторами, большими чем целевой наивысший временный идентификатор, причем целевой наивысший временный идентификатор является меньшим чем или равным наибольшему временному идентификатору, присутствующему в потоке битов; и
декодирование единиц NAL подпотока битов.
26. Считываемый компьютером запоминающий носитель по п. 25, в котором инструкции конфигурируют устройство таким образом, что во время теста соответствия потока битов, устройство:
выбирает набор параметров гипотетического опорного декодера (HRD), применимых к рабочей точке, подвергаемой тесту; и
использует выбранный набор параметров HRD, чтобы конфигурировать HRD, который выполняет процесс декодирования.