Система и способ хранения мультимедийных презентаций, имеющих несколько источников
Иллюстрации
Показать всеИзобретение относится к хранению мультимедийных презентаций. Техническим результатом является обеспечение возможности хранения мультимедийных презентаций, имеющих несколько источников. Способ хранения мультимедийных презентаций, имеющих несколько источников, включающий сохранение файла, содержащего множество дорожек; обеспечение в упомянутом файле первого указания, касающегося того, принадлежит ли упомянутое множество дорожек презентации, имеющей несколько источников, которая включает, по меньшей мере, одну из следующих: презентация видеотелефонии, презентация многосторонней видеоконференции и презентация видеонаблюдения, и отображает более одного потока мультимедийных данных, обеспечение в упомянутом файле второго указания, указывающего на то, что упомянутое множество дорожек, принадлежащее упомянутой презентации, имеющей несколько источников, должно быть отображено на многооконном экране, и обеспечение в упомянутом файле дополнительного указания, указывающего для одного типа мультимедийных данных на то, что дорожки упомянутого типа мультимедийных данных получены от различных источников и должны быть воспроизведены одновременно. 6 н. и 12 з.п. ф-лы, 6 ил.
Реферат
Ссылка на связанные заявки
По настоящей заявке испрашивается приоритет согласно предварительной заявке на патент США №61/103897, поданной 8 октября 2008 года.
Область техники
Различные варианты осуществления настоящего изобретения относятся к хранению мультимедийных презентаций и, в частности, к хранению в файлах мультимедийных презентаций, имеющих несколько источников, для локального воспроизведения или передачи, при этом мультимедийными презентациями, имеющими несколько источников, называют мультимедийные презентации, которые отображают более одного мультимедийного потока по меньшей мере одного типа мультимедийных данных.
Предпосылки создания изобретения
Данный раздел предназначен для описания предпосылок к созданию изобретения, охарактеризованного в формуле изобретения. Описание данного раздела может включать идеи, которые могли быть реализованы, но не обязательно те идеи, которые уже были предложены или разработаны ранее. Таким образом, если не указано иное, данный раздел не является описанием уровня техники для предлагаемого изобретения и не признается таковым вследствие включения в настоящий раздел.
Формат файла является важным элементом при производстве, обработке, передаче и использовании мультимедийного контента. Формат файла отличается от формата кодирования. Формат кодирования связан с работой специального алгоритма кодирования, с помощью которого информацию контента кодируют в битовый поток. В отличие от этого, формат файла включает механизмы организации формируемого битового потока таким образом, чтобы обеспечить возможность его локального декодирования и воспроизведения, а также механизмы его передачи в виде файла или потока с применением различных архитектур хранения и передачи информации. Кроме того, формат файла может использоваться для упрощения обмена мультимедийными данными и их редактирования. Например, многие приложения потоковой передачи требуют, чтобы предварительно закодированный битовый поток сопровождался на стороне сервера метаданными (хранимыми в дорожках-« подсказках» (hint tracks)), которые помогают серверу осуществлять потоковую передачу видеоданных клиенту. Дорожка-«подсказка» не содержит мультимедийных данных, а содержит инструкции по упаковке одной или более дорожек в канал потоковой передачи.
Существующие стандарты форматов мультимедийных файлов включают базовый формат мультимедийных файлов Международной организации по стандартизации (International Organisation for Standardization, ISO) (ISO/IEC (International Electrotechnical Commission, Международная электротехническая комиссия) 14496-12) (также называемый форматом ISO), формат файла Группы экспертов по движущимся изображениям (Moving Picture Experts Group) MPEG-4 (ISO/IEC 14496-14), формат файла усовершенствованного видеокодирования (Advanced Video Coding, AVC) (ISO/IEC 14496-15) и формат файла Консорциума третьего поколения (3rd Generation Partnership Project, 3GPP) (3GPP TS 26.244). Группа MPEG ведет работу по разработке формата файла масштабируемого видеокодирования (Scalable Video Coding, SVC) и многоракурсного видеокодирования (Multiview Video Coding, MVC), которые предположительно станут двумя поправками к формату файла AVC.
Формат файла ISO является основой для получения всех упомянутых выше форматов файла (за исключением самого формата файла ISO). Эти форматы файлов (включая формат файлов ISO) называют семейством форматов файлов ISO. В соответствии с семейством форматов файлов ISO каждый файл включает ровно один блок фильма (movie box), который соответствует одной презентации. Блок фильма может содержать одну или более дорожек, при этом каждая дорожка размещена в блоке дорожки. Для представления одного типа мультимедийных данных (например, аудио- или видеоданных), как правило, выбирают одну дорожку, тем не менее, возможно использование более одной дорожки, хранящей информацию конкретного типа мультимедийных данных. Подмножество этих дорожек может образовывать группу альтернативных дорожек, в которой каждая дорожка может быть независимо декодирована и выбрана для воспроизведения.
При многосторонней конференц-связи приемники обычно отображают видео выбранного поднабора участников на многооконном экране, например, в конфигурации, проиллюстрированной на фиг.6. Блок управления многоточечной конференцией (multipoint control unit, MCU) может кодировать входящие видеопотоки выбранного поднабора участников в один видеопоток, включающий весь видеоконтент упомянутого выбранного поднабора участников. Альтернативно, блок MCU может просто перенаправлять входящие видеопотоки выбранного поднабора участников в приемники, после чего каждый видеопоток независимо декодируют.
У принимающей стороны может возникнуть желание сохранить презентацию многосторонней конференц-связи для будущего использования. Однако существующие модели форматов файлов не поддерживают сохранение презентаций многосторонних видеоконференций в случае, когда блок MCU перенаправляет видеопотоки участникам. В соответствии с моделями существующих форматов файлов, таких как базовый формат мультимедийных файлов ISO, приемник может хранить видеопотоки, предназначенные для отображения, в отдельных видеодорожках. Однако в этом случае проигрыватель, получающий этот файл на входе, не может определить, какие видеодорожки нужно декодировать и как отображать соответствующие видеодорожки.
В других сценариях применения возможны другие типы мультимедийных презентаций, имеющих несколько источников и отображающих более одного мультимедийного потока по меньшей мере одного типа мультимедийных данных. Примеры таких сценариев применения включают, например, записываемую видеотелефонию с двумя участниками -вызывающей и принимающей стороной; видеонаблюдение, в котором может быть много камер (возможно, оснащенных аудиодатчиками), передающих аудио-визуальные сигналы в центр управления; а также записанные презентации учебного типа, в которых могут быть записаны слайды и один или более докладчиков в отдельных медиапотоках, которые будут совместно отображены впоследствии.
Кроме того, полезной представляется возможность простого определения из файла, для какого сценария применения предназначена презентация, имеющая несколько источников, для предоставления контекста при будущем использовании файла. Также желательно иметь возможность определять из файла дополнительную контекстную информацию, например, имена участников, телефонные номера, информацию о том, кто выполнил запись видеотелефонии/конференции, или идентификаторы камер и/или описание их расположения в случае видеонаблюдения. Также, что касается видеонаблюдения, могут иметь место несколько источников аудиоданных, каждый из которых связан с отдельным источником видеоданных. Однако в существующих системах и способах не обеспечен механизм установления соответствия между источником аудиоданных (хранящихся в аудиодорожке) и источником видеоданных (хранящихся в видеодорожке).
Кроме того, в таких сценариях применения как видеотелефония, конференц-связь и видеонаблюдение, как правило, желательно отображать активную сторону или активный источник более заметным образом, чем остальные стороны/источники. Следовательно, если в файле будет присутствовать информация об активной стороне или источнике (аудио- и/или визуальная информация), впоследствии проигрыватели файла без затруднений смогут автоматически отображать активную сторону или активный источник в соответствии с этой информацией. Наконец, для аудио- и/или визуальной презентации периоды молчания, в которые нет активности ни в аудиосцене, ни в визуальной сцене, являются наименее информативными. Следовательно, было бы полезно исключить воспроизведение подобных периодов молчания, особенно для целей быстрого просмотра. Таким образом, желательно иметь информацию, указывающую периоды молчания.
Сущность изобретения
В различных вариантах настоящего изобретения предлагается модель формата файлов, поддерживающая хранение мультимедийных презентаций, имеющих несколько источников. Такая поддержка обеспечивается путем включения указаний на то, является ли презентация презентацией, имеющей несколько источников, и одним типом мультимедийных данных, дорожки которой получены от различных источников и должны быть воспроизведены одновременно. Если упомянутая презентация является презентацией, имеющей несколько источников, могут предоставляться дополнительные указания, включая, не ограничиваясь этим, указание типа хранимой презентации, имеющей несколько источников; указания, касающиеся источника каждой дорожки и того, какие дорожки имеют один и тот же источник; указания информации о различных участниках, такой как телефонные номера, имена участников, идентификаторы камер, описание их расположения и т.п.; указания того, как отображать декодированные видеопотоки на многооконном экране; а также указания уровня аудио- или визуальной активности.
При наличии подобного механизма проигрыватель способен воспроизводить записанную презентацию видеотелефонии, многосторонней видеоконференции, видеонаблюдения или записанную презентацию учебного типа так же (или практически так же), как она была представлена во время фактического сеанса связи. Кроме того, проигрыватель способен автоматически выполнять над презентацией манипуляции для повышения ее информативности или эффективности. Модель формата файлов в соответствии с различными вариантами осуществления изобретения поддерживает также хранение других типов презентаций, имеющих несколько источников и отображающих более одного потока по меньшей мере одного типа мультимедийных данных.
Эти и другие преимущества и функции настоящего изобретения, структура и способ его работы будут понятны из последующего подробного описания с приложенными чертежами, на которых аналогичные элементы обозначены одинаковыми числами.
Краткое описание чертежей
На фиг.1 представлена типовая мультимедийная система связи для использования различных вариантов осуществления настоящего изобретения.
На фиг.2 представлена блок-схема алгоритма, иллюстрирующая примеры процессов, выполняемых в процедуре кодирования в соответствии с различными вариантами осуществления настоящего изобретения.
На фиг.3 представлена блок-схема алгоритма, иллюстрирующая примеры процессов, выполняемых в процедуре декодирования в соответствии с различными вариантами осуществления настоящего изобретения.
На фиг.4 представлен вид в перспективе электронного устройства, которое может использоваться в связи с различными вариантами осуществления настоящего изобретения.
На фиг.5 представлена структура электронной схемы, которая может входить в состав электронного устройства, показанного на фиг.4.
На фиг.6 представлена конфигурация многооконного экрана.
Подробное описание изобретения
Различные варианты осуществления настоящего изобретения включают модель формата файлов с поддержкой хранения мультимедийных презентаций, имеющих несколько источников, которая обеспечивается путем включения указаний на то, является ли презентация презентацией, имеющей несколько источников, и одним типом мультимедийных данных, дорожки которой получены от различных источников и должны быть воспроизведены одновременно. Если презентация является презентацией, имеющей несколько источников, могут обеспечиваться дополнительные указания. Такие дополнительные указания/указатели могут включать, не ограничиваясь этим, указание типа хранимой презентации, имеющей несколько источников;
указания, касающиеся источника каждой дорожки и того, какие дорожки имеют один и тот же источник; указания информации о различных участниках, такой как телефонные номера, имена участников, идентификаторы камер, описание их расположения и т.п.; указания того, как отображать декодированные видеопотоки на многооконном экране; а также указания уровня аудио- или визуальной активности. Следовательно, проигрыватель способен воспроизвести, например, записанную презентацию видеотелефонии, многосторонней видеоконференции, видеонаблюдения или записанную презентацию учебного типа так же (или практически так же), как она была представлена во время фактического сеанса связи. Кроме того, проигрыватель способен автоматически выполнять над презентацией манипуляции для повышения ее информативности или эффективности. Модель формата файлов в соответствии с различными вариантами осуществления изобретения поддерживает также хранение других типов презентаций, имеющих несколько источников и отображающих более одного потока по меньшей мере одного типа мультимедийных данных.
В одном из вариантов осуществления изобретения изменяют стандартный блок MovieHeaderBox (блок заголовка фильма), как будет приведено ниже, так что некоторые из зарезервированных битов используют, например, в качестве указателей для указания на то, является ли презентация, содержащаяся в файле, презентацией, имеющей несколько источников, и, если это так, для указания типа этой презентации.
aligned(8) class MovieHeaderBox extends FullBox('mvhd', version, 0) { if(version=1) {
unsigned int(64) creation time;
unsigned int(64) modification time;
unsigned int(32) timescale;
unsigned int(64) duration;
} else {// version==0
unsigned int(32) creation time;
unsigned int(32) modification time;
unsigned int(32) timescale;
unsigned int(32) duration;
}
template int(32) rate=0×00010000; // как правило, 1.0
template int(16) volume=0×0100; // как правило,
максимальное значение unsigned int(8) multisource_presentation;
const bit(8) reserved=0;
const unsigned int(32)[2] reserved=0;
template int(32)[9] matrix=
{0×00010000,0,0,0,0×00010000,0,0,0,0×40000000};
// единичная матрица
bit(32)[6] pre defined=0;
unsigned int(32) next track ID;
}
Значение параметра multisource_presentation, равное О, указывает на то, что презентация, хранящаяся в данном файле, не является презентацией, имеющей несколько источников, а значение multisource_presentation, не равное 0, указывает на то, что презентация, хранящаяся в данном файле, является презентацией, имеющей несколько источников. Заданное значение этого параметра определяет тип презентации, имеющей несколько источников. Например, значение параметра multisource_presentation, равное 1, может указывать на презентацию видеотелефонии, 2 - на презентацию видеоконференции, 3 - на презентацию видеонаблюдения, 4 - на презентацию учебного типа и т.д. Следует отметить, что в соответствии с различными вариантами осуществления изобретения могут быть указаны/определены и другие типы презентаций, имеющих несколько источников, при этом упомянутые указатели/индикаторы, представляющие различные типы презентаций, имеющих несколько источников, могут быть сконфигурированы по желанию.
Как указано выше, в соответствии с данным вариантом осуществления изобретения, если
значение параметра multisource_presentation не равно 0, то все дорожки принадлежат презентации, имеющей несколько источников. В случае, когда определенный набор дорожек образует группу альтернативных дорожек, для воспроизведения выбирают только одну из них.
Кроме того, если значение параметра multisource_presentation не равно 0, для такого файла определяют новый блок, который помещают в блок фильма. Этот новый блок называют блоком группирования дорожек от нескольких источников (Multisource Track Grouping Box) и определяют следующим образом:
Тип блока: 'mstg'
Контейнер: Блок фильма ('moov')
Обязателен: Нет
Количество: Ноль или один
Этот блок определяет группирование дорожек для презентации, имеющей несколько источников. Пример синтаксиса, используемого при реализации данного варианта осуществления изобретения, может быть следующим:
aligned(8) class MultisourceTrackGroupingBox extends FullBox('mstg', version=0, flags=0)
{
int i,j,k;
unsigned int(8) num_media_types;
for(i=0; i<num_media_types; i++) {
unsigned int(32) media_type_name;
unsigned int(16) num_media_sources;
for(j=0; j'<num_media_sources; j++) {
unsigned int(16) media_source_id;
string sourcejnfo;
unsigned int(8) num_alternate_tracks;
for(k=0; k<num_alternate_tracks; k++)
unsigned int(32) alternate_track_id;
}
}
}
Семантика, соответствующая приведенному выше синтаксису, следующая. Параметр version относится к целому числу, которое указывает версию данного блока (равен 0 в этом примере). Параметр flags является 24-битным целым с флагами (равен 0 в этом примере). Параметр num_media_types указывает количество типов мультимедийных данных, используемых в данной презентации, имеющей несколько источников. Например, если в презентации используют только аудио- и видеоданные, значение num_media_types равно 2. Параметр media_type_name определяет имя текущего типа мультимедийных данных (соответствующего значению i), который может быть тем же, что и определяемый целым параметром handler_type в блоке указания обработчика (Handler Reference Box). Например, 'vide' определяет тип мультимедийных данных "видео", a 'soun' определяет тип мультимедийных данных "аудио".
Параметр num_media_sources определяет количество источников для текущего типа мультимедийных данных (соответствующего значению i). Параметр media_source_id определяет идентификатор текущего источника мультимедийных данных (соответствующего значению j) для текущего типа мультимедийных данных (соответствующего значению i). Следует отметить, что идентификатор источника может представлять собой идентификатор любого типа, кроме 16-битного целого числа без знака, например, универсальный уникальный идентификатор (Universal Unique Identifier, UUID), унифицированный указатель ресурса (Uniform Resource Locator, URL), адрес Интернет-протокола (Internet Protocol, IP), адрес уровня доступа к среде передачи (Medium Access Control, MAC), местоположение и ориентацию или любую их комбинацию. Параметр source_info является строкой символов в кодировке UTF-8 с завершающим 0 (null-terminated) и предоставляет информацию об источнике в удобном для человека виде. Например, если значение параметра multisource_presentation (в блоке MovieHeaderBox) равно 1 (видеотелефония) или 2 (видеоконференция), в source_info заносят имя участника, телефонный номер и/или другую релевантную информацию об этом источнике. Если значение multisource_presentation равно 3 (видеонаблюдение), то в строку source_info этого источника включают идентификатор камеры и описание ее расположения. Параметр num_alternate_tracks определяет количество альтернативных дорожек для текущего источника (соответствующего значению j) текущего типа мультимедийных данных (соответствующего значению i). Параметр alternate_track)id определяет идентификатор текущей альтернативной дорожки (соответствующей значению к) для текущего источника (соответствующего значению j) текущего типа мультимедийных данных (соответствующего значению i). Для одного источника мультимедийных данных одного типа выбирают только одну из упомянутых альтернативных дорожек для декодирования и отображения.
Одному и тому же значению идентификатора источника мультимедийных данных, определяемого параметром media_source_id, могут быть поставлены в соответствие различные типы мультимедийных данных. Например, в презентации типа "видеонаблюдение" аудиодорожка и видеодорожка, имеющие одинаковые идентификаторы источника мультимедийных данных, считают происходящими от одного источника (т.е. датчик в одном и том же местоположении захватывает и видео- и аудиосигналы).
Различные варианты осуществления изобретения включают также обеспечение тех же указаний (описанных выше) локально в каждой дорожке, вместо глобальных указаний, связанных с блоками MovieHeaderBox и MultisourceTrackGroupingBox. В одном из вариантов осуществления изобретения определяют новые типы указания дорожки, каждый из которых соответствует одному типу презентации, имеющей несколько источников. Например, определяют типы указания 'tlfn', 'conf, 'surv' и 'pres' для видеотелефонии, видеоконференций, видеонаблюдения и презентаций учебного типа, соответственно. В данном варианте осуществления изобретения для каждого типа мультимедийных данных каждая дорожка, принадлежащая презентации, имеющей несколько источников, содержит блок TrackReferenceTypeBox одного из четырех описанных выше типов (т.е. с параметром reference_type, значение которого равно одному из четырех упомянутых типов). Значение параметра track_ID каждой дорожки, принадлежащей одной и той же презентации конференц-связи, которая имеет несколько источников, равно одному из значений параметра track_ID, находящихся в блоке TrackReferenceTypeBox одного из описанных выше четырех типов, В данном варианте осуществления изобретения считыватель файлов может получить информацию о том, какие дорожки принадлежат презентации, имеющей несколько источников, путем проверки всех дорожек. В случае, когда несколько дорожек, содержащих блок TrackReferenceTypeBox одного из четырех упомянутых типов, образуют группу альтернативных дорожек, для воспроизведения выбирают только одну из них. Альтернативно, вместо указания дорожки для каждого типа презентации, имеющей несколько источников, определяют только одно новое указание дорожки 'msrc' для всех типов мультимедийных презентаций, имеющих несколько источников, так что для каждой из других дорожек с тем же источником включают идентификатор track_ID в блок TrackReferenceTypeBox типа 'msrc'. В таком случае тип презентации может быть включен в другом месте, например, в одном из блоков уровня дорожки.
Для установления соответствия между источниками аудиодорожек и видеодорожек в каждой дорожке включают идентификатор источника либо в новый блок, либо в один из блоков уровня дорожки, например, в блок мультимедийной информации или блок заголовка дорожки. Идентификатор источника может представлять собой идентификатор любого типа, например, целое число без знака, универсальный уникальный идентификатор (UUID), унифицированный указатель ресурса (URL), адрес Интернет-протокола (IP), адрес уровня доступа к среде передачи (MAC), местоположение и ориентацию или любую их комбинацию. Если для включения идентификатора источника используют новый блок, то этот новый блок может содержаться в одном из блоков уровня дорожки, например, в блоке мультимедийной информации или блоке заголовка дорожки. В таком случае наличие этого нового блока, содержащего идентификатор источника, может быть использовано как указание на то, что данная дорожка принадлежит презентации, имеющей несколькио источников. Для конкретного типа мультимедийных данных, например, видеоданных, проигрыватель может выбирать по одной дорожке для каждого значения идентификатора источника и проигрывать все эти дорожки от различных источников одновременно. В тот же блок могут быть включены имена и телефонные номера участников или идентификаторы и описание положения камер и т.п.
Различные варианты осуществления изобретения включают также обеспечение указаний на то, как отображать декодированные видеопотоки на многооконном экране. В соответствии с одним из вариантов осуществления изобретения определяют новый тип группирования выборок (sample) 'sswp' для задания положения на многооконном экране, в котором должна быть отображена каждая выборка дорожки. При такой схеме каждая видеодорожка, принадлежащая презентации, имеющей несколько источников, включает блок SampleToGroupBox со значением параметра grouping_type, равным 'sswp', и блок SampleGroupDescriptionBox со значением параметра grouping_type, равным 'sswp'. Блок SampleToGroupBox ставит в соответствие каждой выборке группу выборок положения на многооконном экране, при этом каждая группа выборок, как правило, содержит множество выборок. Для каждой группы выборок положения на многооконном экране в блок SampleGroupDescriptionBox включают запись SswpSampleGroupEntry, соответствующую дальнейшему описанию, для указания положения на многооконном экране, в котором должна быть отображена каждая выборка соответствующей группы выборок:
aligned(8) class SswpSampleGroupEntryQ extends VisualSampleGroupEntry('sswp') {
unsigned int(8) sswp_x;
unsigned int(8) sswp_y;
unsigned int(8) sswp_w;
unsigned int(8) sswp_h;
}
Вся область для одного источника видеоданных, представленного выборками соответствующей группы выборок, может быть отображена в нескольких окнах многооконного экрана или в одном окне многооконного экрана. Весь экран разделен на окна, при этом каждое из таких окон либо не содержит источника видеоданных, либо вся его область занята только одним источником видеоданных. В приведенном выше определении параметр sswp_x задает горизонтальную координату окна многооконного экрана, в котором должна быть отображена верхняя левая область, представленная выборками соответствующей группы выборок. В данном варианте осуществления изобретения верхнее левое окно многооконного экрана имеет значение sswp_x, равное 0. Параметр sswp_y задает вертикальную координату окна многооконного экрана, в котором должна быть отображена верхняя левая область, представленная выборками соответствующей группы выборок. В данном варианте осуществления изобретения верхнее левое окно многооконного экрана имеет значение sswp_y, равное 0. Параметр sswp_w задает ширину области экрана, в которой должны быть отображены выборки соответствующей группы выборок. Единицей измерения является ширина окна многооконного экрана. Параметр sswp_h задает высоту области экрана, в которой должны быть отображены выборки соответствующей группы выборок. Единицей измерения является высота окна многооконного экрана. Выборки отображают в окне многооконного экрана, имеющего горизонтальные координаты в диапазоне от sswp_x до (sswp_x+sswp_w-1), включительно, и вертикальные координаты в диапазоне от sswp_y до (sswp_y+sswp_h-1), включительно. Если sswp_w и sswp_h равны 1, выборки отображают в одном окне многооконного экрана с координатами (sswp_x, sswp_y).
В другом варианте осуществления изобретения в каждую дорожку включают новый блок для сообщения такой же информации об отображении, что была приведена выше, для каждого сегмента времени декодирования или времени формирования (т.е. отображения).
В соответствии с различными вариантами осуществления изобретения, описанными выше, если в какой-то период времени отображают декодированные видеоданные только одного источника, то видеоданные других источников не были переданы в течение реального сеанса связи. Следовательно, для этого периода времени эти невидимые дорожки будут иметь списки редактирования, а проигрыватель может на основании этих дорожек определить, какую дорожку следует отображать, предпочтительно в полноэкранном размере, согласно одному из вариантов осуществления изобретения.
Различные варианты осуществления изобретения включают также предоставление указаний активности стороны или участника. В одном из вариантов осуществления изобретения определяют новый тип 'actv' группирования выборок для определения того, активна ли сторона или участник во время каждой выборки данной дорожки. При такой схеме каждая дорожка, принадлежащая презентации, имеющей несколько источников, включает блок SampleToGroupBox со значением параметра grouping_type, равным 'actv'. Блок SampleToGroupBox ставит каждую выборку в соответствие группе активных или неактивных выборок, при этом каждая группа выборок включает, как правило, множество выборок. Для каждой группы выборок типа 'actv' в блок SampleGroupDescriptionBox включают запись ActiveSampleGroupEntry, в соответствии с приведенным ниже определением, для указания того, активны или неактивны выборки в соответствующей группе выборок.
aligned(8) class ActiveSampleGroupEntry() extends VisualSampleGroupEntry('actv') {
unsigned int(8) sample_active;
}
Значение параметра sample_active, равное 0, указывает на то, что выборки соответствующей группы выборок неактивны, в то время как значение параметра sample_active, равное 1, указывает на то, что выборки соответствующей группы выборок активны. В другом варианте осуществления изобретения значение параметра sample_active определяет относительный уровень активности выборок соответствующей группы, при этом значение 0 указывает на полностью неактивные выборки, а значение 255 указывает на максимальный уровень активности. Более высокое значение параметра sample_active может быть использовано для указания на более высокий уровень активности. В другом варианте осуществления изобретения эту информацию указывают в новом глобальном блоке, например, в глобальном блоке, содержащемся в блоке фильма. При использовании вариантов осуществления изобретения проигрыватель файла может автоматически определять, какой (какие) из участников говорят в данный момент, и выбирать видеоданные этого участника (участников) для отображения в более крупном размере - во все окно, во весь экран и т.п.При быстром просмотре презентации видеонаблюдения проигрыватель может избежать проигрывания неактивных периодов.
В другом варианте осуществления изобретения определяют новый блок для включения в каждый блок дорожки. Этот новый блок включает цикл, количество записей которого равно количеству выборок в этой дорожке. Каждая запись цикла содержит 8-битное поле sample_active, семантика которого аналогична описанной выше. В другом варианте осуществления изобретения для каждой мультимедийной дорожки в файл включают дорожку синхронизированных метаданных. Выборки дорожки синхронизированных метаданных синхронизированы во времени с выборками соответствующей мультимедийной дорожки. Дополнительно, с помощью 8-битного поля sample_active в соответствующей выборке синхронизированных метаданных может быть указана активность каждой мультимедийной выборки, при этом семантика sample_active также аналогична описанной выше.
Следует отметить, что в соответствии с различными вариантами осуществления изобретения структуры, определения, указания и т.п., описанные в связи с рассмотренными вариантами осуществления изобретения, могут быть применены к дорожкам-«подсказкам», каждая из которых соответствует мультимедийной дорожке (например, аудиодорожке или видеодорожке).
На фиг.1 проиллюстрировано графическое представление обобщенной мультимедийной системы связи, в которой могут быть реализованы различные варианты осуществления изобретения. Как показано на фиг.1, источник 100 данных обеспечивает исходный сигнал или в аналоговом, или несжатом цифровом, или сжатом цифровом форматах, или в любой комбинации этих форматов. Кодер 110 кодирует исходный сигнал в кодированный битовый поток. Следует отметить, что битовый поток для декодирования может быть принят непосредственно или косвенно от удаленного устройства, расположенного практически в любом типе сети. Дополнительно, битовый поток может быть принят от локального аппаратного или программного обеспечения. Кодер 110 может иметь возможность кодирования более чем одного типа мультимедийных данных, например, аудиоданных и видеоданных, или может потребоваться более чем один кодер 110 для кодирования различных типов мультимедийных данных исходного сигнала. Кодер 110 может также получать синтетически образованный входной сигнал, например, графику и текст, или может иметь возможность создавать кодированный битовый поток синтетических мультимедийных данных. Далее для упрощения описания рассматривается обработка кодированного битового потока мультимедийных данных только одного типа. Следует отметить, однако, что обычно вещательные службы реального времени содержат несколько потоков (обычно по меньшей мере аудиопоток, видеопоток и текстовый субтитровый поток). Также следует отметить, что система может содержать множество кодеров, но на фиг.7 для упрощения описания представлен только кодер 110. Должно быть понятно, что, несмотря на то, что описание и примеры относятся конкретно к процессу кодирования, такие же концепции и принципы также применимы к соответствующему процессу декодирования, и наоборот.
Кодированный битовый поток мультимедийных данных передается в память 120. Память 120 может включать любой тип массовой памяти для хранения кодированного битового потока мультимедийных данных. Формат кодированного битового потока мультимедийных данных в памяти 120 может быть форматом элементарного независимого битового потока, либо один или более кодированных битовых потоков мультимедийных данных могут быть инкапсулированы в файл контейнера. Некоторые системы работают «на лету», т.е. не используют память, и передают напрямую кодированный битовый поток мультимедийных данных от кодера 110 к отправителю 130. Кодированный битовый поток мультимедийных данных затем передается к отправителю 130, также называемому сервером, по мере необходимости. Формат, используемый в этой передаче, может быть форматом элементарного независимого битового потока, форматом пакетного потока, либо один или более кодированных битовых потоков мультимедийных данных могут быть инкапсулированы в файл контейнера. Кодер 110, память 120 и сервер 130 могут находиться в одном физическом устройстве или в отдельных устройствах. Кодер 110 и сервер 130 могут работать с контентом реального времени, в этом случае кодированный битовый поток мультимедийных данных обычно не сохраняется постоянно, а буферизируется на малые периоды времени в кодере 110 контента и/или в сервере 130 для сглаживания вариаций в задержке обработки, задержке передачи и скорости кодированного битового потока мультимедийных данных.
Сервер 130 передает кодированный битовый поток мультимедийных данных, используя стек протоколов связи. Этот стек может включать, не ограничиваясь этим, транспортный протокол реального времени (RTP, Real-Time Transport Protocol), протокол датаграмм пользователя (UDP, User Datagram Protocol) и Интернет-протокол (IP, Internet Protocol). Если стек протокола связи является пакетно-ориентированным, сервер 130 инкапсулирует кодированный битовый поток мультимедийных данных в пакеты. Например, если используется протокол RTP, сервер 130 инкапсулирует кодированный битовый поток мультимедийных данных в пакеты протокола RTP, в соответствии с форматом полезной нагрузки протокола RTP. Обычно каждый тип мультимедийных данных имеет специальный формат полезной нагрузки протокола RTP. Следует отметить, что система может содержать более чем один сервер 130, но для упрощения в последующем описании будет рассматриваться только один сервер 130.
Сервер 130 может соединяться или не соединяться со шлюзом 140 через сеть связи. Шлюз 140 может выполнять различные типы функций, такие как преобразование пакетного потока из одного стека протоколов связи в другой стек протоколов связи, объединение и разветвление потоков данных, и манипуляция потоком данных в соответствии с возможностями нисходящего канала и/или приемника, например, управление скоростью битов перенаправляемого потока согласно преобладающим условиям нисходящего канала сети. Примеры шлюзов 140 включают MCU, шлюзы между системами видеотелефонии с коммутацией каналов и коммутацией пакетов, серверы сотовой связи «нажми и говори» (РоС, Push-to-talk over Cellular), инкапсуляторы IP в системах мобильной широковещательной передачи цифрового видео (DVB-H, digital video broadcasting-handheld) или цифровые телевизионные приставки, которые направляют широковещательные передачи локально к домашним беспроводным сетям. Если используется протокол RTP, то шлюз 140 называется микшером RTP или транслятором RTP и обычно действует как конечная точка соединения RTP.
Система содержит один или более приемников 150, обычно имеющих возможность приема, демодуляции и извлечения передаваемого сигнала в кодированный битовый поток мультимедийных данных. Кодированный битовый поток мультимедийных данных передается в запоминающее устройство 155. Запоминающее устройство 155 может включать любой тип массовой памяти для хранения кодированного битового потока мультимедийных данных. Запоминающее устройство 155 может альтернативно или дополнительно содержать вычислительную память, такую как память с произвольным доступом. Формат кодированного битового потока мультимедийных данных в запоминающем устройстве 155 может быть форматом элементарного независимого битового потока, либо один или более кодированных битовых потоков мультимедийных данных могут быть инкапсулированы в файл контейнера. Если имеется множество кодированных битовых потоков мультимедийных данных, например, аудиопоток и видеопоток, ассоциированные друг с другом, обычно используется файл контейнера, и приемник 150 содержит генератор файла контейнера или присоединен к генератору файла контейнера, создающему файл контейнера из входных потоков. Некоторые системы работают «на лету», т.е. не используют запоминающее устройство 155, и непосредственно передают кодированный битовый поток мультимедийных данных от приемника 150 к декодеру 160. В некоторых системах только последняя часть записанного потока, например, последний 10-минутный отрывок записанного потока, сохраняется в запоминающем устройстве 155, в то время как любые более ранние записанные данные отбрасываются из запоминающего устройства 155.
Кодированный битовый поток мультимедийных данных передается и