УСТРОЙСТВО ДЕКОДИРОВАНИЯ, СПОСОБ ДЕКОДИРОВАНИЯ И ПРОГРАММА
DECODING DEVICE, DECODING METHOD AND PROGRAM

Область техники, к которой относится изобретение
Представленное раскрытие относится к устройству декодирования, способу декодирования и к программе и, в частности, к устройству декодирования, способу декодирования и к программе, пригодным для использования при переключении выхода между кодированными битовыми аудиопотоками, у которых моменты воспроизведения синхронизированы.
Уровень техники
Например, звуки на множестве языков (например, на японском и английском) подготавливаются в некоторых видео для контента кинофильмов, новостей, прямых спортивных передач и т.п. и в этом случае моменты воспроизведения множества звуков синхронизируются.
Здесь далее предполагается, что все звуки с синхронизированными моментами воспроизведения подготавливаются как кодированные битовые аудиопотоки и процесс кодирования, такой как AAC (Advanced Audio Coding, перспективное звуковое кодирование), в том числе, по меньшей мере, процесс MDCT (Modified Discrete Cosine Transform, модифицированное дискретное косинусное преобразование), выполняется для применения кодирования с переменной длиной к кодированным битовым аудиопотокам. Заметим, что система кодирования звуков AAC MPEG-2, содержащая процесс MDCT, адаптируется в цифровое наземное телевизионное вещание (например, смотрите NPL 1).
На фиг. 1 упрощенно показан пример традиционной конфигурации устройства кодирования, которое применяет процесс кодирования к звуковым исходным данным, и устройства декодирования, которое применяет процесс декодирования к кодированному битовому аудиопотоку, выводимому из устройства кодирования.
Устройство 10 кодирования содержит блок 11 MDCT, блок 12 квантования и блок 13 кодирования с переменной длиной.
Блок 11 MDCT делит исходные звуковые данные, введенные на более раннем этапе, на кадры заданной длительности и выполняет процесс MDCT, так чтобы предыдущий и последующий кадры накладывались друг на друга. Таким образом, блок 11 MDCT преобразует исходные данные со значениями во временной области в значения в частотной области и выводит значения на блок 12 квантования. Блок 12 квантования квантует входной сигнал, поступающий от блока 11 MDCT, и выводит значения на блок 13 кодирования с переменной длиной. Блок 13 кодирования с переменной длиной применяет кодирование с переменной длиной к квантованным значениям, чтобы сформировать и вывести кодированный битовый аудиопоток.
Устройство 20 декодирования монтируется, например, на приемном устройстве, принимающем широковещательный или распределенный контент, или на устройстве воспроизведения, воспроизводящем контент, записанный на носителе для записи, и устройство 20 декодирования содержит блок 21 декодирования, блок 22 инверсного квантования и блок 23 IMDCT (Inverse MDCT, инверсного MDCT).
Блок 21 декодирования, соответствующий блоку 13 кодирования с переменной длиной, применяет процесс декодирования к кодированному битовому аудиопотоку на основе кадров, и выводит декодированный результат на блок 22 инверсного квантования. Блок 22 инверсного квантования, соответствующий блоку 12 квантования, применяет инверсное квантование к результату декодирования и выводит результат процесса на блок 23 IMDCT. Блок 23 IMDCT, соответствующий блоку 11 MDCT, применяет процесс IMDCT к результату инверсного квантования, чтобы реконструировать данные PCM, соответствующие исходным данным перед кодированием. Процесс IMDCT, выполняемый блоком 23 IMDCT, будет описан подробно.
На фиг. 2 показан процесс IMDCT, выполняемый блоком 23 IMDCT.
Как показано на фиг. 2, блок 23 IMDCT применяет процесс IMDCT к кодированным битовым аудиопотокам (результатам инверсного квантования кодированных битовых аудиопотоков) BS1-1 и BS1-2 двух, предыдущего и последующего, кадров (Frame#1, кадр 1, и Frame#2, кадр 2), чтобы получить IMDCT-OUT#1-1 в качестве результата инверсного преобразования. Блок 23 IMDCT также применяет процесс IMDCT к кодированным битовым аудиопотокам (результатам инверсного квантования кодированных битовых аудиопотоков) BS1-2 и BS1-3 двух кадров (Frame#2, кадр 2, и Frame#3, кадр 3), накладывающимся на кодированные битовые аудиопотоки, описанные выше, чтобы получить IMDCT-OUT#1-2 в качестве результата инверсного преобразования. Блок 23 IMDCT дополнительно применяет наложение и добавление для IMDCT-OUT#1-1 и IMDCT-OUT#1-2, чтобы полностью реконструировать данные PCM1-2, которые являются данными PCM, соответствующими кадру 2 (Frame#2).
Данные 1-3 PCM, … соответствующие кадру 3 (Frame#3) и последующим кадрам также полностью реконструируются подобным способом.
Однако, термин "полностью", используемый здесь, означает, что данные PCM реконструируются, используя процесс вплоть до наложения и добавления, и этот термин не означает, что исходные данные воспроизводятся на 100%.
Перечень литературы
Непатентная литература
NPL 1
ARIB STD-B32, версия 2.2, 29 июля 2015 г.
Раскрытие сущности изобретения
Технические проблемы
Здесь будет рассмотрено переключение множества кодированных битовых аудиопотоков с синхронизированными моментами воспроизведения настолько быстро, насколько возможно, чтобы таким образом декодировать и вывести множество кодированных битовых аудиопотоков.
На фиг. 3 показан традиционный способ переключения первого кодированного битового аудиопотока на второй кодированный битовый аудиопоток, в котором момент воспроизведения синхронизирован.
Как показано на фиг. 3, когда положение границы переключения устанавливается между кадром 2 (Frame#2) и кадром 3 (Frame#3) и первый кодированный битовый аудиопоток должен переключиться на второй кодированный битовый аудиопоток, данные вплоть до PCM1-2, соответствующие кадру 2 (Frame#2), декодируются и выводятся для первого кодированного битового аудиопотока. Данные из PCM2-3, соответствующие кадру 3 (Frame#3), декодируются и выводятся для второго кодированного битового аудиопотока после переключения.
В данном случае, результаты обратного преобразования IMDCT-OUT#1-1 и IMDCT-OUT#1-2 необходимы для получения PCM1-2, как описано со ссылкой на фиг. 2. Аналогично, результаты обратного преобразования IMDCT-OUT#2-2 и IMDCT-OUT#2-3 необходимы для получения PCM2-3. Следовательно, чтобы выполнить переключение, показанное на фиг. 3, процесс декодирования, содержащий процесс IMDCT, необходимо применять к первому и второму кодированным битовым аудиопотокам параллельно и в одно и то же время в течение периода между кадром 2 (Frame#2) и кадром 3 (Frame#3).
Однако, чтобы выполнить процесс декодирования, содержащий процесс IMDCT, параллельно и в одно и то же время, необходимо множество фрагментов аппаратных средств со схожей конфигурацией, чтобы реализовать процесс декодирования, содержащий процесс IMDCT, посредством аппаратных средств, и это увеличивает размеры схем и повышает стоимость.
Дополнительно, чтобы реализовать процесс декодирования, содержащий процесс IMDCT, посредством программного обеспечения, в зависимости от производительности CPU могут возникнуть проблемы, такие как прерывание звука и ненормальный звук. Следовательно, для предотвращения проблем необходим высокопроизводительный CPU и это также увеличивает затраты.
Представленное раскрытие было сделано с точки зрения обстоятельств и представленное раскрытие предназначено для переключения, как можно быстрее, множества кодированных битовых аудиопотоков с синхронизированным моментом переключения, чтобы таким образом декодировать и вывести множество кодированных битовых аудиопотоков без увеличения размеров схем или увеличения затрат.
Решение проблем
Вариант представленного раскрытия обеспечивает устройство декодирования, содержащее: блок сбора данных, получающий множество кодированных битовых аудиопотоков, в которых каждый из множествп фрагментов исходных данных с синхронизированным моментом воспроизведения кодируется на основе кадров после процесса MDCT; блок выбора, определяющий положение границы для переключения выхода множества кодированных битовых аудиопотоков и выборочно подающий один из множества кодированных битовых аудиопотоков на блок процесса декодирования, соответствующий положению границы; и блок процесса декодирования, применяющий процесс декодирования, содержащий процесс IMDCT, соответствующий процессу MDCT, к одному из множества кодированных битовых аудиопотоков, введенному через блок выбора, в котором блок процесса декодирования пропускает наложение и добавление в процессе IMDCT, соответствующем каждому из кадров перед и после положения границы.
Устройство декодирования, соответствующее варианту представленного раскрытия, может дополнительно содержать блок процесса плавного регулирования громкости, применяющий процесс плавного регулирования громкости к результатам процесса декодирования кадров перед и после положения границы, в котором наложение и добавление блоком процесса декодирования пропускаются.
Блок процесса плавного регулирования громкости может применять процесс плавного уменьшения громкости к результату процесса декодирования кадра перед положением границы и применять процесс медленного увеличения громкости к результату процесса декодирования кадра после положения границы, в котором наложение и добавление блоком процесса декодирования пропускаются.
Блок процесса плавного регулирования громкости может применять процесс плавного уменьшения громкости к результату процесса декодирования кадра перед положением границы и применять процесс глушения к результату процесса декодирования кадра после положения границы, в котором наложение и добавление блоком процесса декодирования пропускаются.
Блок процесса плавного регулирования громкости может применять процесс глушения к результату процесса декодирования кадра перед положением границы и применять процесс плавного увеличения громкости к результату процесса декодирования после положения границы, в котором наложение и добавление блоком процесса декодирования пропускаются.
Блок выбора может определять положение границы на основе флага оптимального положения переключения, который добавляется к каждому кадру и который устанавливается поставщиком множества кодированных битовых аудиопотоков.
Флаг оптимального положения переключения может быть установлен поставщиком кодированных битовых аудиопотоков на основе энергии или контекста исходных данных.
Блок выбора может определять положение границы на основе информации, связанной с коэффициентом усиления множества кодированных битовых аудиопотоков.
Вариант представленного раскрытия обеспечивает способ декодирования, выполняемый устройством декодирования, причем упомянутый способ декодирования содержит: этап сбора данных, на котором получают множество кодированных битовых аудиопотоков, в которых каждый из множества фрагментов исходных данных с синхронизированным моментом воспроизведения кодируется на основе кадров после процесса MDCT; этап определения, на котором определяют положение границы для переключения выхода множества кодированных битовых аудиопотоков; этап выбора, на котором выборочно подают один из множества полученных кодированных битовых аудиопотоков на этап процесса декодирования в соответствии с положением границы; и этап процесса декодирования, на котором применяют процесс декодирования, содержащий процесс IMDCT, соответствующий процессу MDCT, к одному из множества кодированных битовых аудиопотоков, подаваемому выборочно, в котором в блоке процесса декодирования пропускаются наложение и добавление в процессе IMDCT, соответствующем каждому из кадров перед и после положения границы.
Вариант представленного раскрытия обеспечивает программу для функционирования в качестве: блока сбора данных, получающего множество кодированных битовых аудиопотоков, в которых множество фрагментов исходных данных с синхронизированным моментом воспроизведения кодируются на основе кадров после процесса MDCT; блока выбора, определяющего положение границы для переключения выхода множества кодированных битовых аудиопотоков и выборочной подачи одного из множества кодированных битовых аудиопотоков на блок процесса декодирования, соответствующий положению границы; и блока процесса декодирования, применяющего процесс декодирования, содержащий процесс IMDCT, соответствующий процессу MDCT, к одному из множества кодированных битовых аудиопотоков, введенному через блок выбора, в котором блок процесса декодирования пропускает наложение и добавление в процессе IMDCT, соответствующем каждому из кадров перед и после положения границы.
В соответствии с вариантом представленного раскрытия, получают множество кодированных битовых аудиопотоков и определяют положение границы для переключения выхода множества кодированных битовых аудиопотоков. Процесс декодирования, содержащий процесс IMDCT, соответствующий процессу MDCT, применяется к одному из множества кодированных битовых потоков, выборочно подаваемых в соответствии с положением границы. В процессе декодирования пропускаются наложение и добавление в процессе IMDCT, соответствующем каждому кадру перед и после границы кадра.
Полезный результат изобретения
В соответствии с вариантом представленного раскрытия, множество кодированных битовых аудиопотоков с синхронизированным моментом воспроизведения могут переключаться настолько быстро, насколько возможно, чтобы таким образом декодировать и выводить множество кодированных битовых аудиопотоков.
Краткое описание чертежей
Фиг. 1 - блок-схема примера конфигурации устройства кодирования и устройства декодирования.
Фиг. 2 - процесс IMDCT.
Фиг. 3 - переключение кодированного битового аудиопотока.
Фиг. 4 - блок-схема примера конфигурации устройства декодирования, соответствующего представленному раскрытию.
Фиг. 5 - первый способ переключения кодированного битового аудиопотока устройством декодирования, показанным на фиг. 4.
Фиг. 6 - блок-схема последовательности выполнения операций процесса переключения звука.
Фиг. 7 - блок-схема последовательности выполнения операций процесса установки флага оптимального положения переключения.
Фиг. 8 - состояние процесса установки флага оптимального положения переключения.
Фиг. 9 - блок-схема последовательности выполнения операций процесса определения положения границы переключения.
Фиг. 10 - состояние процесса определения положения границы переключения.
Фиг. 11 - второй способ переключения кодированного битового аудиопотока устройством декодирования, показанным на фиг. 4.
Фиг. 12 - третий способ переключения кодированного битового аудиопотока устройством декодирования, показаннм на фиг. 4.
Фиг. 13 - блок-схема примера конфигурации универсального компьютера.
Осуществление изобретения
Здесь далее предпочтительный способ осуществления представленного раскрытия (здесь далее упоминаемый как вариант осуществления) будет описан подробно со ссылкой на чертежи.
Пример конфигурации устройства декодирования как вариант осуществления представленного раскрытия
На фиг. 4 показан пример конфигурации устройства декодирования в качестве варианта осуществления представленного раскрытия.
Устройство 30 декодирования монтируется, например, на приемном устройстве, принимающем широковещательный или распределенный контент, или на устройстве воспроизведения, воспроизводящем контент, записанный на носителе записи. Дополнительно, устройство 30 декодирования может быстро переключать первый и второй кодированные битовые аудиопотоки с синхронизированным моментом воспроизведения, чтобы декодировать и вывести битовые потоки.
Предполагается, что процесс кодирования, содержащий, по меньшей мере процесс MDCT, выполняется для применения кодирования с переменной длиной к исходным данным звука в первом и втором кодированных битовых аудиопотоках. Здесь далее первый и второй кодированные битовые аудиопотоки будут также упоминаться просто как первый и второй кодированные битовые потоки.
Устройство 30 декодирования содержит блок 31 демультиплексирования, блоки 32-1 и 32-2 декодироания, блок 33 выбора, блок 34 процесса декодирования и блок 37 плавного регулирования громкости.
Блок 11 демультиплексирования отделяет первый кодированный битовый поток и второй кодированный битовый поток с синхронизированным моментом воспроизведения от мультиплексированного потока, введенного на более раннем этапе. Блок 11 демультиплексирования дополнительно выводит первый кодированный битовый поток на блок 32-1 декодирования и выводит второй кодированный поток на блок декодирования 32-2.
Блок 32-1 декодирования применяет процесс декодирования к первому кодированному битовому потоку, чтобы декодировать код с переменной длиной первого кодированного битового потока, и выводит результат процесса (здесь далее упоминается как данные квантования) на блок 33 выбора. Блок 32-2 декодирования применяет процесс декодирования ко второму кодированному битовому потоку, чтобы декодировать код с переменной длиной второго кодированного битового потока, и выводит данные квантования, полученные в результате процесса, на блок 33 выбора.
Блок 33 выбора определяет положение границы переключения на основе команды переключения звука, полученной от пользователя, и выводит данные квантования от блока 32-1 декодирования или от блока 32-2 декодирования на блок 34 процесса декодирования в соответствии с определенным положением границы переключения.
Блок 33 выбора может также определить положение границы переключения на основе флага оптимального положения переключения, добавляемого к каждому кадру первого и второго кодированных битовых потоков. Этот процесс будет описан со ссылкой на фиг. 7-10.
Блок 34 процесса декодирования содержит блок 35 инверсного квантования и блок 36 IMDCT. Блок 35 инверсного квантования применяет инверсное квантование к данным квантования, полученным через блок 33 выбора, и выводит результат инверсного квантования (здесь далее упоминаемый как данные MDCT) на блок 36 IMDCT. Блок 36 IMDCT применяет процесс IMDCT к данным MDCT, чтобы реконструировать данные PCM, соответствующие исходным данным перед кодированием.
Однако, блок 36 IMDCT не полностью реконструирует данные PCM, соответствующие всем соответствующим кадрам, и блок 36 IMDCT также выводит данные PCM, реконструированные в неполном состоянии, из кадров вблизи положения границы переключения.
Блок 37 процесса плавного регулирования громкости применяет процесс плавного уменьшения громкости, процесс плавного увеличения громкости или процесс глушения к данным PCM вблизи положения границы переключения, введенным от блока 34 процесса декодирования, и выводит данные PCM на последующий этап.
Заметим, что хотя в случае, показанном в примере конфигурации, представленном на фиг. 4, в устройство 30 декодирования вводится мультиплексированный поток с мультиплексированными первым и вторым кодированными битовыми потоками, в мультиплексированном потоке может быть мультиплексировано больше кодированных битовых потоков. В этом случае количество блоков 32 декодирования может быть увеличено в соответствии с количеством мультиплексированных кодированных битовых потоков.
Дополнительно, вместо ввода мультиплексированного потока в устройство 30 декодирования может раздельно вводиться множество кодированных битовых потоков. В этом случае блок 31 демультиплексирования может быть исключен.
Первый способ переключения кодированного битового потока устройством 30 декодирования
Далее на фиг. 5 показан первый способ переключения кодированного битового потока устройством 30 декодирования.
Как показано на фиг. 5, когда положение границы переключения устанавливается между кадром 2 (Frame#2) и кадром 3 (Frame#3) и первый кодированный битовый поток должен переключиться на второй кодированный битовый поток, процесс IMDCT применяется к данным вплоть до кадра 2 (Frame#2) непосредственно перед положением границы переключения для первого кодированного битового потока. В этом случа, хотя данные вплоть до данных PCM1-1, соответствующих кадру 1 (Frame#1), могут быть полностью реконструированы, реконструкция данных PCM1-2, соответствующих кадру 2 (Frame#2), является неполной.
Между тем, для второго кодированного битового потока процесс IMDCT применяется к данным из кадра 3 (Frame#3) непосредственно после положения границы переключения. В этом случае реконструкция данных PCM2-3, соответствующих кадру 3 (Frame#3), является неполной и данные полностью реконструируются из данных PCM2-4, соответствующих кадру 4 (Frame #4).
Здесь "неполная реконструкция" означает, что первая половина или вторая половина IMDCT-OUT используется в качестве данных PCM без выполнения наложения и добавления.
В этом случае, вторая половина MDCT-OUT#1-1 может использоваться для данных PCM1-2, соответствующих кадру 2 (Frame#2) первого кодированного битового потока. Аналогично, первая половина MDCT-OUT#2-3 может использоваться для данных PCM2-3, соответствующих кадру 3 (Frame#3) второго кодированного битового потока. Заметим, что, очевидно, качество звука для неполностью реконструированных данных PCM1-2 и PCM2-3 ниже, чем качество звука для полностью реконструированных данных PCM1-2 и PCM2-3.
Когда данные PCM выведены, данные вплоть до полностью реконструированных данных PCM1-1, соответствующих кадру 1 (Frame#1), выводятся с обычной громкостью. Громкость при неполных данных PCM1-2, соответствующих кадру 2 (Frame#2), непосредственно перед положением границы переключения плавно снижается посредством процесса плавного снижения громкости и громкость для неполных данных PCM2-3, соответствующих кадру 3 (Frame#3), непосредственно после положения границы переключения плавно увеличивается посредством процесса плавного увеличения громкости. Начиная с кадра 4 (Frame#4) полностью реконструированные данные PCM2-4, … выводятся с обычной громкостью.
Таким образом, неполностью реконструированные данные PCM выводятся сразу после положения границы изменения и нет необходимости выполнять два процесса декодирования параллельно. Дополнительно, процесс постепенного уменьшения громкости и процесс постепенного увеличения громкости соединяют неполные данные PCM и это может уменьшать громкость шума резкого скачка, возникающего из-за отсутствия непрерывности кадров, вызванного переключением звука.
Заметим, что способ переключения кодированного битового потока устройством 30 декодирования не ограничивается первым способом переключения и могут также применяться описанные далее второй или третий способы переключения.
Процесс переключения звука устройством 30 декодирования
Далее на фиг. 6 показана блок-схема последовательности осуществления операций, описывающая процесс переключения звука, соответствующий первому способу переключения, показанному на фиг. 5.
Предполагается, что перед процессом переключения звука блок 11 демультиплексирования отделил первый и второй кодированные битовые потоки от мультиплексированного потока и блоки 32-1 или 31-2 декодирования декодировали первый и второй кодированные битовые потоки, соответственно, в устройстве 30 декодирования. Также предполагается, что блок 33 выбора выбрал данные квантования, поступающие от одного из блоков декодирования 32-1 или 32-2, и ввел данные квантования в блок 34 процесса декодирования.
В случае, описанном ниже, блок 33 выбора выбирает данные квантования, поступающие от блока декодирования 32-1, и вводит данные квантования в блок 34 процесса декодирования. В результате, устройство 30 декодирования в настоящее время выводит данные PCM, основываясь на первом кодированном битовом потоке, при обычной громкости.
На этапе S1 блок 33 выбора определяет, существует ли от пользователя команда переключения звука, и ожидает до тех пор, пока не появится команда переключения звука. В то время, пока блок 33 выбора ждет, блок 33 выбора удерживает выбранный выходной сигнал. В результате, устройство 30 декодирования непрерывно выводит данные PCM, основываясь на первом кодированном битовом потоке, при обычной громкости.
Когда команда переключения звука от пользователя появляется, процесс переходит к этапу S2. На этапе S2 блок 33 выбора определяет положение границы переключения звука. Например, блок 33 выбора определяет положение границы переключения звука в месте, находящемся после заданного количества кадров, начиная с момента приема команды переключения звука. Однако, блок 33 выбора может определить положение границы переключения на основе флага оптимального положения переключения, добавляемого в кодированный битовый поток (далее описано с подробностями).
В этом случае предполагается, что положение границы переключения устанавливается между кадром 2 (Frame#2) и кадром 3 (Frame#3), как показано на фиг. 5.
Далее, на этапе S3 блок 33 выбора сохраняет текущий выбор, пока блок 33 выбора не выведет данные квантования, соответствующие кадру непосредственно перед определенным положением границы переключения, на блок 34 процесса декодирования. Поэтому блок 33 выбора выводит данные квантования из блока 32-1 декодирования на более поздний этап.
На этапе S4 блок 35 инверсного квантования блока 34 процесса декодирования выполняет инверсное квантование данных квантования, основываясь на первом кодированном битовом потоке, и выводит данные MDCT, полученные в результате инверсного квантования, на блок 36 IMDCT. Блок 36 IMDCT применяет процесс IMDCT к данным вплоть до данных MDCT, соответствующих кадру, следующему непосредственно перед положением границы переключения, чтобы таким образом реконструировать данные PCM, соответствующие исходным данным перед кодированием, и выводит данные PCM на блок 37 процесса постепенного регулирования громкости.
В этом случае, хотя данные вплоть до PCM1-1, соответствующих кадру 1 (Frame#1), могут быть полностью реконструированы, реконструкция PCM1-2, соответствующих кадру 2 (Frame#2), является неполной.
На этапе S5 блок 37 процесса плавного изменения громкости применяет процесс медленного снижения громкости к неполным данным PCM, соответствующим кадру (в этом случае, данным PCM1-2, соответствующим кадру 2 (Frame#2)) непосредственно прелдшествующему положению границы переключения, введенному от блока 34 процесса декодирования, и выводит данные PCM на последующий этап.
Далее, на этапе S6 блок 33 выбора переключает выходной сигнал для блока 34 процесса декодирования. Поэтому блок 33 выбора выводит данные квантования от блока 32-2 на последующий этап.
На этапе S7 блок 35 инверсного квантования блока 34 процесса декодирования выполняет инверсное квантование данных квантования, основываясь на втором кодированном битовом потоке, и выводит данные MDCT, полученные в результате инверсного квантования, на блок 36 IMDCT. Блок 36 IMDCT применяет процесс IMDCT к данным из данных MDCT, соответствующих кадру, следующему непосредственно после положения границы переключения, чтобы таким образом реконструировать данные PCM, соответствующие исходным данным перед кодированием, и выводит данные PCM на блок 37 процесса постепенного регулирования громкости.
В этом случае реконструкция данных PCM2-3, соответствующих кадру 3 (Frame#3), является неполной и данные полностью реконструируются из данных PCM2-4, соответствующих кадру 4 (Frame #4).
На этапе S8 блок 37 процесса плавного изменения громкости применяет процесс плавного увеличения громкости к неполным данным PCM, соответствующим кадру (в этом случае, к данным PCM2-3, соответствующим кадру 3 (Frame#3)) непосредственно после положения границы переключения, введенного от блока 34 процесса декодирования, и выводит данные PCM на последующий этап. Процесс затем возвращается к этапу S1 и дальнейший процесс повторяется.
Этим завершается описание процесса переключения звука устройством 30 декодирования. В соответствии с процессом переключения звука, кодированный битовый звуковой поток может переключаться без параллельного выполнения двух процессов декодирования. Процесс переключения звука может также снижать громкость шума резкого скачка, возникающего из-за отсутствия непрерывности кадров, вызванного переключением звука.
Процесс установки флага оптимального положения переключения
В процессе переключения звука положение границы переключения звука определяется в месте, находящемся после заданного количества кадров, с момента приема от пользователя команды переключения звука. Однако, учитывая выполнение процесса постепенного уменьшения громкости и процесса постепенного увеличения громкости вблизи положения границы переключения, желательно, чтобы положение границы переключения было местом, в котором звук был как можно ближе к молчанию, местом, в котором последовательность слов или разговоры закончены, даже если громкость в соответствии с контекстом временно уменьшается.
Следовательно, в процессе (здесь далее, процесс установки флага оптимального положения переключения), описанном далее, поставщик контента обнаруживает состояние звука, как можно более близкое к молчанию (то есть, к состоянию с малым коэффициентом усиления или энергией исходных данных), и здесь устанавливает флаг оптимального положения переключения.
На фиг. 7 представлена блок-схема последовательности выполнения операций процесса установки флага оптимального положения переключения, выполняемого поставщиком контента. На фиг. 8 показано состояние процесса установки флага оптимального положения переключения.
На этапе S21 первые и вторые исходные данные, введенные с более раннего этапа (источники первого и второго кодированных битовых потоков с синхронизированным моментом воспроизведения) делятся на кадры и на этапе S22 измеряется энергия в каждом из поделенных кадров.
На этапе S23 для каждого кадра определяется, равна ли или меньше заданного порога энергия первого и второго источников данных. Если энергия первого и второго источников данных одновременно равна или меньше заданного порога, процесс переходит к этапу S24 и флаг оптимального положения переключения для кадра устанавливается равным "1", указывая, что положение является оптимальным положением переключения.
С другой стороны, если энергия по меньшей мере первого или второго источника данных больше заданного порога, процесс переходит к этапу S25 и флаг оптимального положения переключения для кадра устанавливается равным "0", указывая, что положение не является оптимальным положением переключения.
На этапе S26 определяется, закончен ли ввод первых и вторых исходных данных, и если ввод первых и вторых исходных данных продолжается, процесс возвращается к этапу S21, чтобы повторить последующий процесс. Если ввод первых и вторых исходных данных закончен, процесс установки флага оптимального положения переключения заканчивается.
Далее, на фиг. 9 представлена блок-схема последовательности выполнения операций процесса определения положения границы переключения звука в устройстве 30 декодирования, соответствующая случаю, в котором флаг оптимального положения переключения устанавливается для каждого кадра первого и второго кодированных битовых потоков в процессе установления флага оптимального положения переключения. На фиг. 10 представлено состояние процесса определения положения границы переключения.
Процесс определения положения границы переключения выполняется вместо этапов S1 и S2 процесса переключения звука, описанного со ссылкой на фиг. 6.
На этапе S31 блок 33 выбора устройства 30 декодирования определяет, существует ли поданная пользователем команда переключения звука, и ожидает до тех пор, пока не появится команда переключения звука. В то время, пока блок 33 выбора ждет, блок 33 выбора удерживает выбранный выходной сигнал. В результате, устройство 30 декодирования непрерывно выводит данные PCM, основываясь на первом кодированном битовом потоке, при обычной громкости.
Когда команда переключения звука от пользователя появляется, процесс переходит к этапу S32. На этапе S32 блок 33 выбора ждет до тех пор, пока флаг оптимального положения переключения не станет равным "1", причем флаг оптимального положения переключения, добавляемый к каждому кадру первого и второго кодированных битовых потоков (данные квантования как результат декодирования первого и второго кодированных битовых потоков) последовательно вводится с предыдущего этапа. В то время, пока блок 33 выбора ждет, блок 33 выбора также удерживает выбранный выходной сигнал. Когда флаг оптимального положения переключения становится равным "1", процесс переходит к этапу S33 и блок 33 выбора устанавливает положение границы переключения звука между кадром с флагом оптимального положения переключения, равным "1" и следующим кадром. Тем самым завершается процесс определения положения границы переключения.
В соответствии с процессом установки флага оптимального положения переключения и процессом определения положения границы переключения, описанными выше, положение, в котором звук как можно ближе к молчанию, может быть установлено в качестве положения границы переключения. Поэтому влияние, оказываемое выполнением процесса плавного уменьшения громкости и процесса плавного увеличения громкости, может быть уменьшено.
Дополнительно, даже когда флаг оптимального положения переключения не добавлен, блок 33 выбора и т.п. в устройстве 30 декодирования может обращаться к информации, связанной с коэффициентом усиления кодированных битовых потоков и обнаруживать положение громкости, равной или меньшей назначенного порога, чтобы определить положение границы переключения. Например, такая информация, как коэффициент масштабирования, может использоваться для информации, связанной с коэффициентом усиления в системе кодирования, такой как AAC и MP3.
Второй способ переключения кодированного битового потока устройством 30 декодирования
Далее на фиг. 11 показан второй способ переключения кодированного битового потока устройством 30 декодирования.
Как показано на фиг. 11, когда положение границы переключения устанавливается между кадром 2 (Frame#2) и кадром 3 (Frame#3) и первый кодированный битовый поток должен переключиться на второй кодированный битовый поток, процесс IMDCT применяется к данным вплоть до кадра 2 (Frame#2) непосредственно перед положением границы переключения для первого кодированного битового потока. В этом случае, хотя данные вплоть до данных PCM1-1, соответствующих кадру 1 (Frame#1), могут быть полностью реконструированы, реконструкция данных PCM1-2, соответствующих кадру 2 (Frame#2), является неполной.
Между тем, для второго кодированного битового потока процесс IMDCT применяется к данным из кадра 3 (Frame#3), следующего непосредственно после положения границы переключения. В этом случае реконструкция данных PCM2-3, соответствующих кадру 3 (Frame#3), является неполной и данные полностью реконструируются из данных PCM2-4, соответствующих кадру 4 (Frame #4).
При этом, когда данные PCM выведены, данные вплоть до полностью реконструированных данных PCM1-1, соответствующих кадру 1 (Frame#1) выводятся с нормальной громкостью. Громкость для неполных данных PCM1-2, соответствующих кадру 2 (Frame#2), следующему непосредственно перед положением границы переключения, плавно уменьшается посредством процесса плавного уменьшения громкости и выполняется процесс приглушения, чтобы установить участок для неполных данных PCM2-3, соответствующих кадру 3 (Frame#3), следующему непосредственно после положения границы переключения. Дополнительно, громкость полностью реконструированных данных PCM2-4 постепенно увеличивается посредством процесса постепенного увеличения громкости и данные выводятся с обычной громкостью из данных PCM2-5, соответствующих кадру 5 (Frame#5).
Таким образом, неполностью реконструированные данные PCM выводятся сразу после положения границы изменения и нет необходимости параллельно выполнять два процесса декодирования. Дополнительно, процесс постепенного уменьшения громкости, процесс глушения и процесс постепенного увеличения громкости соединяют неполные данные PCM и это может уменьшать громкость шума неприятного скачка, из-за отсутствия непрерывности кадров при переключении звука.
Третий способ переключения кодированного битового потока устройством 30 декодирования
Далее на фиг. 12 показан третий способ переключения кодированного битового потока устройством 30 декодирования.
Как показано на фиг. 12, когда положение границы переключения устанавливается между кадром 2 (Frame#2) и кадром 3 (Frame#3) и первый кодированный битовый поток должен переключиться на второй кодированный битовый поток, процесс IMDCT применяется к данным вплоть до кадра 2 (Frame#2) непосредственно перед положением границы переключения для первого кодированного битового потока. В этом случае, хотя данные вплоть до данных PCM1-1, соответствующих кадру 1 (Frame#1), могут быть полностью реконструированы, реконструкция данных PCM1-2, соответствующих кадру 2 (Frame#2), является неполной.
Между тем, для второго кодированного битового потока процесс IMDCT применяется к данным из кадра 3 (Frame#3), следующего непосредственно после положения границы переключения. В этом случае реконструкция данных PCM2-3, соответствующих кадру 3 (Frame#3), является неполной и данные полностью реконструируются из данных PCM2-4, соответствующих кадру 4 (Frame #4).
При этом, при выводе данных PCM, данные перед данными PCM1-1, соответствующими кадру 1 (Frame#1) выводятся с обычной громкостью и громкость PCM1-1 плавно уменьшается посредством процесса плавного уменьшения громкости. Процесс глушения выполняется на участке установки молчания для неполных данных PCM1-2, соответствующих кадру 2 (Frame#2), следующему непосредственно перед положением границы переключения. Дополнительно, громкость неполностью реконструированных данных PCM2-3, соответствующих кадру 3 (Frame#3) непосредственно после положения границы переключения, плавно увеличивается посредством процесса плавного увеличения громкости и данные выводятся с обычной громкостью из данных PCM2-4, соответствующих кадру 4 (Frame#4).
Таким образом, неполностью реконструированные данные PCM выводятся сразу после положения границы изменения и нет необходимости параллельно выполнять два процесса декодирования. Дополнительно, процесс плавного уменьшения громкости, процесс глушения и процесс плавного увеличения громкости соединяют неполные данные PCM и это может уменьшать громкость шума неприятного скачка из-за отсутствия непрерывности кадров при переключении звука.
Пример применения представленного раскрытия
В отличие от применения для переключения первого и второго кодированных битовых потоков с синхронизированным моментом переключения, представленное раскрытие может также применяться, например, для переключения объектов при трехмерном аудиокодировании 3D Audio. Более конкретно, когда данные сгруппированного объекта должны все вместе быть переключены на другую группу (Switch Group), представленное раскрытие может применяться для переключения множества объектов всех сразу, чтобы переключить проекцию в сцене воспроизведения или видео с произвольной проекцией.
Представленное раскрытие может также применяться для переключения канальной среды с двухканальной схемы стереозвука 2ch на окружающий звук по схеме 5.1ch и т.п., чтобы переключать потоки окружающего звука в соответствии с изменениями соответствующих мест в видео с произвольной проекцией.
В этой связи, последовательность процессов устройства 30 декодирования может выполняться с помощью аппаратных средств или программного обеспечения. Когда последовательность процессов выполняется с помощью программного обеспечения, на компьютер устанавливается программа, составляющая программное обеспечение. Здесь, примерами компьютера являются компьютер, встроенный в специализированные аппаратные средства, и универсальный персональный компьютер, которые, например, могут осуществлять различные функции при установке на них различных программ.
На фиг. 13 представлена блок-схема, показывающая пример конфигурации аппаратных средств компьютера, использующего программу для выполнения ряда процессов.
В компьютере 100 центральный процессор 101 (Central Processing Unit, CPU), постоянное запоминающее устройство 102 (Read Only Memory, ROM), и оперативное запоминающее устройство 103 (Random Access Memory, RAM) соединяются друг с другом через шину 104.
С шиной 104 дополнительно соединяется интерфейс 105 ввода-вывода. С интерфейсом 105 ввода-вывода соединяются устройство 106 ввода, устройство 107 вывода, блок 108 запоминающего устройства, блок 109 связи и дисковод 110.
Устройство 106 ввода содержит клавиатуру, мышь, микрофон и т.п. Устройство 107 вывода содержит дисплей, громкоговоритель и т.п. Блок 108 запоминающего устройства содержит жесткий диск, энергонезависимую память и т.п. Блок 109 связи содержит сетевой интерфейс и т.п. Дисковод 110 приводит в действие съемный носитель 111, такой как магнитный диск, оптический диск, магнито-оптический диск и полупроводниковая память.
В компьютере 100, конфигурированном таким образом, CPU 101 загружает в RAM 103 программу, хранящуюся в блоке 108 запоминающего устройства, через интерфейс 105 ввода-вывода и шину 104 и выполняет программу, чтобы, например, выполнить ряд процессов.
Заметим, что программа, выполняемая компьютером 100, может быть программой выполнения процессов в хронологическом порядке, описанном в представленном описании, или может быть программой выполнения процессов параллельно или в необходимые моменты времени при вызове программы.
Вариант осуществления представленной технологии не ограничивается описанным выше вариантом осуществления и в нем могут быть произведены различные изменения, не отступая от объема защиты настоящего раскрытия.
Представленное раскрытие может также быть выполнено нижеследующим образом.
(1) Устройство декодирования, содержащее:
блок сбора данных, получающий множество кодированных битовых аудиопотоков, в которых каждый из множества фрагментов исходных данных с синхронизированным моментом воспроизведения кодируется на основе кадров после процесса MDCT;
блок выбора, определяющий положение границы для переключения выходного сигнала множества кодированных битовых аудиопотоков и, в соответствии с положением границы, выборочно подающий один из множества полученных кодированных битовых аудиопотоков на блок процесса декодирования; и
блок процесса декодирования, применяющий процесс декодирования, содержащий процесс IMDCT, соответствующий процессу MDCT, к одному из множества кодированных битовых аудиопотоков через посредство блока выбора, в котором
блок процесса декодирования пропускает наложение и добавление в процессе IMDCT, соответствующем каждому кадру перед и после положения границы.
(2) Устройство декодирования по п. (1), дополнительно содержащее:
блок плавного регулирования громкости, применяющий процесс плавного регулирования громкости к результатам процесса декодирования кадров перед и после положения границы, при котором наложение и добавление блоком процесса декодирования пропускаются.
(3) Устройство декодирования по п. (2), в котором блок процесса плавного регулирования громкости применяет процесс плавного уменьшения громкости к результату процесса декодирования кадра перед положением границы и применяет процесс медленного увеличения громкости к результату процесса декодирования после положения границы, в котором наложение и добавление блоком процесса декодирования пропускаются.
(4) Устройство декодирования по п. (2), в котором блок процесса плавного регулирования громкости применяет процесс плавного уменьшения громкости к результату процесса декодирования кадра перед положением границы и применяет процесс приглушения к результату процесса декодирования кадра после положения границы, в котором наложение и добавление блоком процесса декодирования пропускаются.
(5) Устройство декодирования по п. (2), в котором блок процесса плавного регулирования громкости применяет процесс глушения к результату процесса декодирования кадра перед положением границы и применяет процесс плавного увеличения громкости к результату процесса декодирования после положения границы, в котором наложение и добавление блоком процесса декодирования пропускаются.
(6) Устройство декодирования по любому из пп. (1)-(5), в котором блок выбора определяет положение границы на основе флага оптимального положения переключения, который добавляется к каждому кадру и который устанавливается поставщиком множества кодированных битовых аудиопотоков.
(7) Устройство декодирования по п. (6), в котором флаг оптимального положения переключения может быть установлен поставщиком кодированных битовых аудиопотоков на основе энергии или контекста исходных данных.
(8) Устройство декодирования по любому из пп. (1)-(5), в котором блок выбора определяет положение границы на основе информации, связанной с коэффициентом усиления множества кодированных битовых аудиопотоков.
(9) Способ декодирования, выполняемый устройством декодирования, причем упомянутый способ декодирования содержит:
этап сбора данных, на котором получают множество кодированных битовых аудиопотоков, в которых каждый из множества фрагментов исходных данных с синхронизированным моментом воспроизведения кодируется на основе кадров после процесса MDCT;
этап определения, на котором определяют положение границы для переключения вывода множества кодированных битовых аудиопотоков;
этап выбора, на котором выборочно подают один из множества полученных кодированных битовых аудиопотоков на этап процесса декодирования, соответствующий положению границы; и
этап процесса декодирования, на котором применяют процесс декодирования, содержащий процесс IMDCT, соответствующий процессу MDCT, к одному из множества кодированных битовых аудиопотоков, полученному выборочно, в котором
на этапе процесса декодирования наложение и добавление в процессе IMDCT, соответствующем каждому кадру перед и после положения границы, пропускаются.
(10) Программа, заставляющая компьютер функционировать в качестве:
блока сбора данных, получающего множество кодированных битовых аудиопотоков, в которых множество фрагментов исходных данных с синхронизированным моментом воспроизведения кодируются на основе кадров после процесса MDCT;
блока выбора, определяющего положение границы для переключения выходного сигнала множества кодированных битовых аудиопотоков и, в соответствии с положением границы, выборочно подающего один из множества полученных кодированных битовых аудиопотоков на блок процесса декодирования; и
блока процесса декодирования, применяющего процесс декодирования, содержащий процесс IMDCT, соответствующий процессу MDCT, к одному из множества кодированных битовых аудиопотоков через посредство блока выбора, в котором
блок процесса декодирования пропускает наложение и добавление в процессе IMDCT, соответствующем каждому кадру перед и после положения границы.
Перечень ссылочных позиций
30 Устройство декодирования
31 Блок демультиплексирования
32-1, 32-2 Блоки декодирования
33 Блок выбора
34 Блок процесса декодирования
35 Блок инверсного квантования
36 Блок IMDCT
37 Блок процесса постепенного изменения громкости
100 Компьютер
101 Центральный процессор, CPU