Способ, мультимедийная система и оконечное сетевое устройство для записи программы

Иллюстрации

Показать все

Изобретение относится к области мультимедийных сервисов, таких как телевидение по протоколу IP (IP-телевидение), мобильное телевидение, передача потокового мультимедиа на мобильные устройства, а именно к способу записи программы, мультимедийной системе и оконечному сетевому устройству, от которых требуется очень высокий процент успешности при записи видео- и аудиопрограмм в развернутой многоузловой сети. Техническим результатом является возможность осуществлять взаимное автоматическое межузловое восстановление записываемой программы, при котором текущая задача записи TVOD почти не затрагивается, что повышает процент успешности записи. Для этого мультимедийная система включает оконечное сетевое устройство и множество узлов, где конфигурация оконечного сетевого устройства задана так, чтобы генерировать задачу записи после получения запроса на запись и заранее отсылать задачу записи на каждый узел, в котором запоминается канал, указанный в задаче записи, а конфигурация узлов задана так, чтобы записывать программу на канал, указанный в задаче записи, после получения задачи записи, и возвращать оконечному сетевому устройству информацию о результатах записи. Согласно способу записи данного изобретения, когда запись была неудачной, можно провести взаимное межузловое восстановление и вспомогательную запись, что сильно снижает вероятность неудачи при записи программы, и предоставляет пользователям более высокое качество услуги TVOD. 3 н. и 14 з.п. ф-лы, 7 ил.

Реферат

Область техники

Настоящее изобретение относится к области таких мультимедийных сервисов, как телевидение по протоколу IP (IP-телевидение), мобильное телевидение, передача потокового мультимедиа на мобильные устройства и т.д., в частности, к способу записи программы, мультимедийной системе и оконечному сетевому устройству, от которых требуется очень высокий процент успешности при записи видео- и аудиопрограмм в развернутой многоузловой сети.

Предпосылки к созданию изобретения и уровень техники

Сервисы IP-телевидения - это широкополосные сервисы с добавочными функциями, предоставляющие потребителям доступ к интерактивному телевидению и мультимедиа сервису посредством подсоединения ресивера цифрового телевидения (STB) к широкополосной сети и использования компьютера или телевизора в качестве дисплейного терминала. Система IP-телевидения может обеспечивать видео по запросу (VOD), «живое» телевидение, сдвинутое во времени вещание (TSTV) и телевидение по запросу (TVOD). Система IP-телевидения имеет многоузловую архитектуру. Чтобы выравнивать параллельные потоки, генерируемые, когда пользователи смотрят телевизор, устанавливаются логические узлы, которые осуществляют концептуальное управление участками и отвечают за сервисы на этих участках, и в соответствии с узлами выстраивается конфигурация главных серверов и серверов резервного копирования, магнитных решеток, нескольких сверхкомпактных серверов, способных обеспечивать служебные функции. В центральном узле системы IР-телезидения производится разводка цепей, а затем они передаются на другие реберные узлы.

«Живое» телевидение, которое еще называют «живым» сервисом, является одним из основных видов сервисов IP-телевидения. «Живое» телевидение реализуется на основе каналов «живого» вещания. Для пользователей, подобно телевидению с обычными каналами, переключателем каналов и выбором каналов, «живое» телевидение реализуется в виде экранного меню, что обогащает телевизионные каналы, которые смотрят пользователи. Для операторов, «живое» телевидение является эффективным средством привлечения пользователей обычного телевидения, и его практический успех зависит от характеристик канала. С точки зрения технического осуществления, «живое» телевидение, как правило, передает информацию телевизионной программы через IP-сети, используя метод групповой передачи по протоколу межсетевого обмена.

TSTV работает в режиме воспроизведения мультимедиа, при котором пользователи могут освобождаться от обычного расписания программ таким образом, что пользователи при просмотре программ «живого» телевидения могут производить с ними такие действия, как постановка на паузу или обратная перемотка, а также могут быстро перематывать вперед до момента текущего воспроизведения программы «живого» телевидения, что разрушает привычные представления о том, как можно смотреть телевизор, и открывает зрителям совершенно новые возможности просмотра.

TVOD, которое является продолжением идеи TSTV, преобразует сегмент программы на канале «живого» вещания в записанную программу для показа в списке программ таким образом, чтобы пользователи могли ad libitum запрашивать замечательные пропущенные программы и выбирать программы, которые транслировались несколько дней назад. Таким образом, IP-телевидение становится настоящим «персональным ТВ», избавляется от ограничений во времени и соответствует ускоряющемуся ритму жизни современных людей.

Процент успешности при записи программы (например, TVOD) на данный момент высок, но неудачи также имеют место. Для эксплуатационных требований операторского класса неудача при записи программы неприемлема, кроме тех случаев, когда проблема заключается в самом канале или в дефектах выпуска самой записываемой программы. За исключением таких серьезных неисправностей, как выключение питания, ручная остановка сервера системы IP-телевидения или потоковых мультимедийных сверхкомпактных серверов, или отсутствие сигнала на канале, при нормальной работе системы IP-телевидения требуется, чтобы программы записывались с гарантированным успехом, и следующие факторы по возможности не оказывали отрицательного влияния на качество сервисов: переключение между главными серверами и серверами резервного копирования в течение короткого промежутка времени или отказ сети, повторяющийся в течение короткого времени в некоторых узлах из-за слишком сильного падения кодовой скорости канала.

Краткое изложение сущности данного изобретения

Техническая проблема, которую призвано решить настоящее изобретение, заключается в том, чтобы предоставить способ записи программы с очень высоким процентом успешности, мультимедийную систему и оконечное сетевое устройство, такие чтобы в случае неудачи записи можно было произвести взаимное межузловое восстановление и вспомогательную запись программы, сильно снизив, таким образом, вероятность неудачи при записи программы, и предоставив пользователям более высокое качество услуги TVOD.

Чтобы решить вышеуказанную техническую проблему, настоящее изобретение предоставляет способ записи программы, применяемый к мультимедийной системе многоузловой архитектуры, включающей оконечное сетевое устройство, причем способ включает:

оконечное сетевое устройство, генерирующее задачу записи после получения запроса на запись, и заранее отсылающее задачу записи на каждый узел, в котором запоминается канал, указанный в задаче записи; и

узел, записывающий программу на канал, указанный в задаче записи, после получения задачи записи, и возвращающий оконечному сетевому устройству информацию о результатах записи.

Способ дополнительно включает:

оконечное сетевое устройство, которое, во время записи программы в узле, периодически проверяет информацию о результатах записи, возвращаемую каждым узлом, и проверяет, если информация о результатах записи оказывается информацией о неудаче записи, имеется ли узел, в котором конфигурация сдвига во времени для краткосрочного запоминания программ настроена на канал, и если да, отсылает задачу вспомогательной записи на узел, в котором конфигурация сдвига во времени для краткосрочного запоминания программ настроена на канал;

и

узел, в котором конфигурация сдвига во времени для краткосрочного запоминания программ настроена на канал, и который после получения задачи вспомогательной записи определяет, находится ли временной промежуток программы, которая записывается неудачно, во временном диапазоне программ, краткосрочно запоминаемых с помощью конфигурации сдвига во времени в узле, и если да, извлекает программу, имеющую такой же временной промежуток, как у программы, которая записывается неудачно, из программ, краткосрочно запоминаемых в узле, в качестве своей записываемой программы, а затем возвращает оконечному сетевому устройству информацию об успехе записи.

Способ дополнительно включает:

оконечное сетевое устройство, которое, во время записи программы в узле периодически проверяет информацию о результатах записи, возвращаемую каждым узлом, и отсылает задачу планирования на узел, в котором запись программы была неудачной, если информация о результатах записи оказывается информацией о неудаче записи; и

узел, в котором запись программы была неудачной, и который после получения задачи планирования в качестве узла назначения планирует программу из узла, в котором запись программы успешна, в качестве узла-источника, в качестве своей записываемой программы, и возвращает оконечному сетевому устройству информацию об успехе записи.

Мультимедийная система имеет многоуровневую узловую архитектуру, включающую узел первого уровня, узлы второго уровня и узлы третьего уровня, причем узел первого уровня соединен с множеством узлов второго уровня, и каждый узел второго уровня соединен с множеством узлов третьего уровня.

Этап, на котором оконечное сетевое устройство отсылает задачу планирования на узел, в котором запись программы была неудачной, если информация о результатах записи оказывается информацией о неудаче записи, включает:

оконечное сетевое устройство, в первую очередь определяющее, успешно ли записывается программа в узле первого уровня в задаче записи;

если программа не записывается успешно в узле первого уровня, выбор узла второго уровня, в котором запись программы успешна, в качестве узла-источника, чтобы сгенерировать задачу планирования для планирования программ из узла первого уровня, и отослать задачу планирования на узел первого уровня; если программа не записывается успешно в узле второго уровня, выбор узла третьего уровня, в котором запись программы успешна, в качестве узла-источника, чтобы сгенерировать задачу планирования для планирования программ из узла первого уровня, и отсылку задачи планирования на узел первого уровня;

если программа записывается успешно в узле первого уровня, дальнейшее определение, успешно ли записывается программа в узле второго уровня в задаче записи; если нет, выбор узла первого уровня в качестве узла-источника, чтобы сгенерировать задачу планирования для планирования программ из узла второго уровня, и отсылка задачи планирования на узел второго уровня; и

если программа записывается успешно в узле второго уровня в задаче записи, определение, успешно ли записывается программа в узле третьего уровня в задаче записи; если нет, выбор узла второго уровня, соединенного с узлом третьего уровня, в качестве узла-источника, чтобы сгенерировать задачу планирования для планирования программ из узла третьего уровня, и отсылка задачи планирования на узел третьего уровня.

После того как узел назначения получает задачу планирования, способ дополнительно включает:

определение, запоминается ли в узле программа, которая является такой же, как программа, подлежащая планированию, и которая указана в задаче планирования, и находится ли переполнение размера сетки программ в пределах допустимого диапазона, и если да, возвращение оконечному сетевому устройству информации об успехе планирования.

После того как каждый узел получает задачу записи, способ дополнительно включает:

узел, который ставит полученную задачу записи в локальную очередь задач записи после задачи записи, время запуска которой во временном промежутке наступает раньше, чем время запуска во временном промежутке полученной задачи записи, и которая находится на расстоянии минимального временного интервала от времени запуска временного промежутка полученной задачи записи.

Настоящее изобретение также предоставляет мультимедийную систему, включающую оконечное сетевое устройство и множество узлов, где

конфигурация оконечного сетевого устройства задана так, чтобы генерировать задачу записи после получения запроса на запись, и заранее отсылать задачу записи на каждый узел, в котором запоминается канал, указанный в задаче записи; и

конфигурация узлов задана так, чтобы записывать программу на канал, указанный в задаче записи, после получения задачи записи, и возвращать оконечному сетевому устройству информацию о результатах записи.

Конфигурация оконечного сетевого устройства дополнительно задана так, чтобы, во время записи программы в каждом узле периодически проверять информацию о результатах записи, возвращаемую узлом, и проверять, если информация о результатах записи оказывается информацией о неудаче записи, имеется ли узел, в котором конфигурация сдвига во времени для краткосрочного запоминания программ настраивается на канал, и если да, отсылать задачу вспомогательной записи на узел, в котором конфигурация сдвига во времени для краткосрочного запоминания программ настроена на канал.

Конфигурация узла, в котором конфигурация сдвига во времени для краткосрочного запоминания программ настроена на канал, дополнительно задана так, чтобы после получения задачи вспомогательной записи, определять, находится ли временной промежуток программы, которая записывается неудачно, во временном диапазоне программ, краткосрочно запоминаемых с помощью конфигурации сдвига во времени в узле, и если да, извлекать программу, имеющую такой же временной промежуток, как у программы, которая записывается неудачно, из программ, краткосрочно запоминаемых в узле, в качестве своей записываемой программы, а затем возвращать оконечному сетевому устройству информацию об успехе записи.

Конфигурация оконечного сетевого устройства дополнительно задана так, чтобы, во время записи программы в узле периодически проверять информацию о результатах записи, возвращаемую каждым узлом, и отсылать задачу планирования на узел, в котором запись программы была неудачной, если информация о результатах записи оказывается информацией о неудаче записи.

Конфигурация узла, в котором запись программы была неудачной, дополнительно задана так, чтобы после получения задачи планирования планировать программу из узла, в котором запись программы успешна, в качестве своей записываемой программы, и возвращать оконечному сетевому устройству информацию об успехе записи.

Мультимедийная система имеет многоуровневую узловую архитектуру, включающую узел первого уровня, узлы второго уровня и узлы третьего уровня, причем узел первого уровня соединен с множеством узлов второго уровня, и каждый узел второго уровня соединен с множеством узлов третьего уровня.

Конфигурация оконечного сетевого устройства задана так, чтобы если информация о результатах записи оказывается информацией о неудаче записи, отсылать задачу планирования на узел, в котором запись программы была неудачной, посредством:

в первую очередь, определения успешно ли записывается программа в узле первого уровня в задаче записи;

если программа не записывается успешно в узле первого уровня, выбора узла второго уровня, в котором запись программы успешна, в качестве узла-источника, чтобы сгенерировать задачу планирования для планирования программ из узла первого уровня, и отослать задачу планирования на узел первого уровня; если программа не записывается успешно в узле второго уровня, выбора узла третьего уровня, в котором запись программы успешна, в качестве узла-источника, чтобы сгенерировать задачу планирования для планирования программ из узла первого уровня, и отсылки задачи планирования на узел первого уровня;

если программа записывается успешно в узле первого уровня, дальнейшего определения, успешно ли записывается программа в узле второго уровня в задаче записи; если нет, выбора узла первого уровня в качестве узла-источника, чтобы сгенерировать задачу планирования для планирования программ из узла второго уровня, и отсылки задачи планирования на узел второго уровня; и

если программа записывается успешно в узле второго уровня в задаче записи, определения, успешно ли записывается программа в узле третьего уровня в задаче записи; если нет, выбора узла второго уровня, соединенного с узлом третьего уровня, в качестве узла-источника, чтобы сгенерировать задачу планирования для планирования программ из узла третьего уровня, и отсылки задачи планирования на узел третьего уровня.

Оконечное сетевое устройство представляет собой блок управления контентом, и каждый узел включает модуль медиаконтроля и множество потоковых серверов, контролируемых модулем медиаконтроля.

Конфигурация модуля медиаконтроля задана так, чтобы после получения задачи записи, отсылаемой блоком управления контентом, отсылать задачу записи на потоковые серверы, запоминающие канал, указанный в задаче записи, и после получения информации о результатах записи отсылать информацию о результатах записи, отосланную с потоковых серверов, блоку управления контентом.

Конфигурация потоковых серверов, запоминающих канал, указанный в задаче записи, задана так, чтобы записывать программу на канал, указанный в задаче записи, после получения задачи записи, и возвращать модулю медиаконтроля информацию о результатах записи.

Конфигурация модуля медиаконтроля дополнительно задана так, чтобы отсылать задачу записи на потоковый сервер с минимальной нагрузкой, если имеется более двух контролируемых потоковых серверов, запоминающих канал, указанный в задаче записи.

Настоящее изобретение также предоставляет оконечное сетевое устройство, конфигурация которого задана так, чтобы после получения запроса на запись генерировать задачу записи, заранее отсылать задачу записи на каждый узел, в котором запоминается канал, указанный в задаче записи, и получать информацию о результатах записи, возвращаемую оконечному сетевому устройству после записи программы в узле на канале, указанном в задаче записи, после получения задачи записи.

Конфигурация оконечного сетевого устройства дополнительно задана так, чтобы во время записи программы в узле периодически проверять информацию о результатах записи, возвращаемую узлом, и проверять, имеется ли узел, в котором конфигурация сдвига во времени для краткосрочного запоминания программ настроена на канал, если информация о результатах записи оказывается информацией о неудаче записи, и если да, отсылать задачу вспомогательной записи на узел, в котором конфигурация сдвига во времени для краткосрочного запоминания программ настроена на канал, и получать информацию об успехе записи, возвращаемую узлу, в котором конфигурация сдвига во времени для краткосрочного запоминания программ настроена на канал.

После получения задачи вспомогательной записи узел, в котором конфигурация сдвига во времени для краткосрочного запоминания программ настроена на канал, определяет, находится ли временной промежуток программы, которая записана неудачно, во временном диапазоне программ, краткосрочно запоминаемых с помощью конфигурации сдвига во времени в узле, и если да, извлекает программу, имеющую такой же временной промежуток, как у программы, которая записана неудачно, из программ, краткосрочно запоминаемых в узле, в качестве своей записываемой программы, а затем возвращает оконечному сетевому устройству информацию об успехе записи.

Конфигурация оконечного сетевого устройства дополнительно задана так, чтобы, во время записи программы в узле периодически проверять информацию о результатах записи, возвращаемую каждым узлом, и отсылать задачу планирования на узел, в котором запись программы была неудачной, если информация о результатах записи оказывается информацией о неудаче записи, и получать информацию об успехе планирования, возвращаемую узлом, в котором запись программы была неудачной.

Информация об успехе планирования возвращается оконечному сетевому устройству после того, как узел, в котором запись программы была неудачной, получает задачу планирования спланировать программу из узла, в котором запись программы успешна, в качестве своей записываемой программы.

Оконечное сетевое устройство применяется в мультимедийной системе, причем мультимедийная система имеет многоуровневую узловую архитектуру, включающую узел первого уровня, узлы второго уровня и узлы третьего уровня, причем узел первого уровня соединен с множеством узлов второго уровня, и каждый узел второго уровня соединен с множеством узлов третьего уровня.

Конфигурация оконечного сетевого устройства задана так, чтобы если информация о результатах записи оказывается информацией о неудаче записи, отсылать задачу планирования на узел, в котором запись программы была неудачной, посредством:

в первую очередь определения, успешно ли записывается программа в узле первого уровня в задаче записи;

если программа не записывается успешно в узле первого уровня, выбора узла второго уровня, в котором запись программы успешна, в качестве узла-источника, чтобы сгенерировать задачу планирования для планирования программ из узла первого уровня, и отослать задачу планирования на узел первого уровня; если программа не записывается успешно в узле второго уровня, выбора узла третьего уровня, в котором запись программы успешна, в качестве узла-источника, чтобы сгенерировать задачу планирования для планирования программ из узла первого уровня, и отсылки задачи планирования на узел первого уровня;

если программа записывается успешно в узле первого уровня, дальнейшего определения, успешно ли записывается программа в узле второго уровня в задаче записи; если нет, выбора узла первого уровня в качестве узла-источника, чтобы сгенерировать задачу планирования для планирования программ из узла второго уровня, и отсылки задачи планирования на узел второго уровня; и

если программа записывается успешно в узле второго уровня в задаче записи, определения, успешно ли записывается программа в узле третьего уровня в задаче записи; если нет, выбора узла второго уровня, соединенного с узлом третьего уровня, в качестве узла-источника, чтобы сгенерировать задачу планирования для планирования программ из узла третьего уровня, и отсылки задачи планирования на узел третьего уровня.

Оконечное сетевое устройство представляет собой блок управления контентом.

В заключение, настоящее изобретение предоставляет способ записи программы, мультимедийную систему и оконечное сетевое устройство. При способе записи согласно варианту осуществления данного изобретения в некоторых узлах запись программы по определенным причинам может оканчиваться неудачей, при этом запись программы в других узлах является успешной, что позволяет осуществить взаимное автоматическое межузловое восстановление записываемой программы. До и после процесса, при котором базовый модуль - блок управления контентом - системы IP-телевидения выполняет переключение между главными серверами и серверами резервного копирования или сервер блока управления контентом перезагружается или модернизируется в течение получаса, а затем запускается в работу, текущая задача записи TVOD почти не затрагивается и достигает очень высокого процента успешности записи. По завершению процесса, при котором модуль медиаконтроля каждого узла системы IP-телевидения выполняет переключение между главными серверами и серверами резервного копирования или сервер модуля медиаконтроля перезагружается или модернизируется в течение долгого времени, а затем запускается в работу, потоковый сервер, к которому относится модуль медиаконтроля, можно предохранить от существенных потерь TVOD. Обычно у системы IP-телевидения имеется множество потоковых серверов под контролем модуля медиаконтроля, в том числе потоковый сервер, отвечающий за кодирование и декодирование каналов. Если потоковый сервер, отвечающий за кодирование и декодирование каналов, не работает, даже если подключить другие потоковые серверы, переключение непосредственно приводит к тому, что TVOD не записывается во время переключения. Однако способ записи программы согласно данному изобретению может обеспечить, чтобы TVOD также имелось в других потоковых серверах под контролем модуля медиаконтроля, и, таким образом, услуги, запрашиваемые пользователями, не затрагивались. Кроме того, когда запись TVOD была неудачной или пропускается системой IP-телевидения, запись TVOD можно завершить во вспомогательном режиме в пределах допустимого диапазона длины сдвига канала во времени, что является гибким и удобным и значительно улучшает эксплуатационные характеристики системы IP-телевидения.

Краткое описание графических материалов

Фиг.1 представляет собой схематическое изображение мультимедийной системы согласно варианту осуществления данного изобретения.

Фиг.2 представляет собой блок-схему способа записи программы согласно варианту осуществления данного изобретения.

Фиг.3 представляет собой блок-схему способа восстановления программы, которая не записывается успешно, согласно варианту осуществления данного изобретения.

Фиг.4 представляет собой схематическое изображение выполнения планирования и восстановления TVOD в центральном узле системы IP-телевидения согласно варианту осуществления данного изобретения.

Фиг.5 представляет собой схематическое изображение выполнения планирования и восстановления TVOD в реберном узле системы IP-телевидения согласно варианту осуществления данного изобретения.

Фиг.6 представляет собой блок-схему процедуры выполнения взаимного восстановления TVOD в системе IP-телевидения согласно варианту осуществления данного изобретения.

Фиг.7 представляет собой блок-схему процедуры выполнения вспомогательной записи TVOD в системе IP-телевидения согласно варианту осуществления данного изобретения.

Предпочтительные варианты осуществления изобретения

Техническая схема данного изобретения будет подробнее описана далее в связи с прилагаемыми графическими материалами и вариантами осуществления.

Фиг.1 представляет собой схематическое изображение мультимедийной системы согласно варианту осуществления данного изобретения. Мультимедийной системой согласно варианту осуществления может быть система IP-телевидения, система мобильного телевидения или передача потокового мультимедиа на мобильные устройства. Как показано на фиг.1, мультимедийная система согласно варианту осуществления включает оконечное сетевое устройство и множество узлов. Оконечным сетевым устройством по варианту осуществления может быть блок управления контентом (СМЕ), и каждый узел включает модуль медиаконтроля (MCU) и множество потоковых серверов (SSs). Один блок управления контентом может управлять множеством модулей медиаконтроля, и один модуль медиаконтроля может контролировать множество потоковых серверов.

Модуль медиаконтроля, выбранный блоком управления контентом при отсылке запроса на запись, в первую очередь отвечает тому условию, что потоковый сервер, контролируемый модулем медиаконтроля, запоминает канал подлежащей записи программы, а также модуль медиаконтроля можно выбирать в соответствии со стратегией выравнивания нагрузки. Например, в данный момент времени модуль медиаконтроля может обрабатывать один канал, который обслуживается только одним потоковым сервером, или же один канал может обслуживаться множеством (более чем двумя) потоковых серверов, каждый из которых периодически формирует отчет о своем функциональном статусе, включая в него такие характеристики, как загрузка ЦП, параллельные потоки, запрашиваемые пользователями. Затем, в соответствии с функциональным статусом, методом взвешивания получают потоковый сервер с наибольшим из оставшихся значением работоспособности, то есть для завершения сервисов, запрашиваемых каналом, чтобы обработать задачу записи, выбирается потоковый сервер с минимальной нагрузкой. Подобным образом, когда модуль медиаконтроля отсылает задачу записи, он выбирает потоковый сервер, запоминающий канал программы, которая подлежит записи, и далее потоковый сервер может быть выбран в соответствии со стратегией выравнивания нагрузки.

Чтобы по возможности ослабить влияние на задачу записи перезагрузок сервера блока управления контентом или сервера модуля медиаконтроля в течение короткого промежутка времени или переключений между главными серверами и серверами резервного копирования, блок управления контентом отсылает задачу записи на модули медиаконтоля узлов с определенным опережением (например, с опережением на день) относительно момента времени, который служит стартом задачи записи.

Модуль медиаконтроля отсылает задачу записи на потоковый сервер, запоминающий подлежащий записыванию канал, указанный в задаче записи. Потоковый сервер отвечает за кодирование и декодирование каналов и запись программы в реальном времени. После получения задачи записи потоковый сервер записывает программу на канал, указанный в задаче записи, а затем возвращает информацию о результатах записи модулю медиаконтроля, который затем возвращает информацию о результатах записи блоку управления контентом. Успешно записанная программа запоминается в папке, соответствующей записанной программе в отдельном файле. Когда запись программы была неудачной в некоторых узлах, программа восстанавливается путем взаимодействия между узлами; когда запись программы была неудачной по всем узлам, повторяется попытка произвести вспомогательную запись программы.

Блок управления контентом периодически проверяет информацию о результатах записи, возвращаемую каждым узлом, когда программа записывается в узле. Если оказывается, что какие-то из узлов возвращают информацию о неудаче записи, блок управления контентом отсылает задачу планирования на модуль медиаконтроля узла, в котором запись программы была неудачной. После получения задачи планирования, модуль медиаконтроля узла, в котором запись программы была неудачной, планирует успешно записываемую программу из модуля медиаконтроля узла, в котором запись программы успешна, в качестве своей записываемой программы и возвращает блоку управления контентом информацию об успехе планирования.

Кроме того, блок управления контентом периодически проверяет информацию о результатах записи, возвращаемую каждым узлом, когда программа записывается в узле. Если оказывается, что все узлы возвращают информацию о неудаче записи, это показывает, что, по всей вероятности, в проекте происходит такой серьезный сбой, как сетевое прерывание или обрыв медиапотоков канала, и система должна дать предупреждение, так чтобы операторы могли вовремя распознать и решить такую проблему. Далее блок управления контентом проверяет, имеется ли узел, в котором конфигурация сдвига во времени для краткосрочного запоминания программ настраивается на канал, подлежащий записи, и если нет, записываемая программа не может быть восстановлена и непосредственно определяется как окончившаяся неудачей; если да, задача вспомогательной записи отсылается на модуль медиаконтроля узла, в котором конфигурация сдвига во времени для краткосрочного запоминания программ настраивается на канал, который необходимо записать. После получения задачи вспомогательной записи, модуль медиаконтроля узла отсылает задачу вспомогательной записи на потоковый сервер, в котором конфигурация сдвига во времени для краткосрочного запоминания программ настраивается на канал, подлежащий записи, а затем потоковый сервер определяет, находится ли временной промежуток программы, которая записывается неудачно, во временном диапазоне программ краткосрочно запоминаемых с помощью конфигурации сдвига во времени, и если да, программа с таким же временным промежутком, как у программы, которая записывается неудачно, извлекается из программ, краткосрочно запоминаемых потоковым сервером, в качестве записываемой программы, а затем модулю медиаконтроля возвращается информация об успехе вспомогательной записи, в противном случае, модулю медиаконтроля возвращается информация о неудаче вспомогательной записи.

Все устройства в мультимедийной системе в соответствии с вариантом осуществления являются независимыми, т.е. неудача одного устройства не затронет других устройств. Более того, мультимедийная система согласно варианту осуществления имеет многоузловую архитектуру, и когда запись программы была неудачной в одном узле, ее можно успешно записать в других узлах. Когда узлов больше чем три, вероятность того, что запись одной программы будет неудачной по всем узлам, гораздо меньше одной десятитысячной; таким образом, сильно увеличивается процент успешности записи программы.

Далее на примере системы IP-телевидения будет подробно описан способ записи программы согласно данному изобретению.

Система IP-телевидения включает оконечное сетевое устройство, такое как блок управления контентом, и множество узлов, каждый из которых включает модуль медиаконтроля и множество потоковых серверов. Система IP-телевидения имеет многоуровневую узловую архитектуру. В варианте осуществления после получения запроса на запись блок управления контентом системы IP-телевидения генерирует задачу записи для TVOD и заранее отсылает задачу записи на каждый модуль медиаконтроля, а затем модуль медиаконтроля системы IP-телевидения отсылает задачу записи на потоковые серверы, чтобы записать TVOD. Блок управления контентом периодически проверяет TVOD, запись которого была неудачной, и выполняет взаимное межузловое восстановление согласно определенной стратегии, если в некоторых узлах запись TVOD успешна, а в других узлах запись TVOD была неудачной; если запись TVOD была неудачной по всем узлам, выполняется вспомогательная запись на каждом узле.

Фиг.2 представляет собой блок-схему способа записи программы согласно варианту осуществления данного изобретения. Как показано на фиг.2, способ записи программы согласно варианту осуществления включает следующие этапы.

На этапе 201 блок управления контентом получает запрос на запись.

Запрос на запись может быть отослан блоку управления контентом с внешней системы, такой как система управления услугами IP-телевидения или пользовательский ресивер цифрового телевидения (STB), и т.д. Запрос на запись должен содержать информацию о программах, подлежащих записи, например, запрос на запись, отосланный системой управления услугами IP-телевидения, содержит расписание программ, подлежащих записи. В варианте осуществления расписание программ представлено временем запуска и временем завершения, но в данном изобретении нет ограничений на способ представления такой информации.

Запрос на запись может также содержать информацию об удалении задачи записи. После получения такого запроса на запись блок управления контентом удаляет задачу записи, если задача записи еще находится в локальной очереди задач записи, и уведомляет модуль медиаконтроля, который удаляет задачу записи, если задача записи еще находится в своей локальной очереди задач записи после получения уведомления.

Запрос на запись может также содержать информацию о модифицировании задачи записи. После получения такого запроса на запись блок управления контентом модифицирует задачу записи, если задача записи еще находится в локальной очереди задач записи, и уведомляет модуль медиаконтроля, который модифицирует задачу записи, если задача записи еще находится в своей локальной очереди задач записи после получения уведомления.

На этапе 202 блок управления контентом предварительно обрабатывает запрос на запись, преобразует уточненный запрос на запись в задачу записи, а затем добавляет задачу записи в таблицу задач записи блока управления контентом.

Задача записи содержит такую информацию, как обозначение TVOD (идентификатор), идентификатор канала со сдвигом во времени, время запуска TVOD, время завершения TVOD и имя TVOD. После определения, что запрос на запись уточнен, блок управления контентом может вернуть отправителю запроса на запись ответ, означающий, что запрос на запись принят.

Определение, что запрос на запись уточнен, может включать проверку канала в запросе на запись и временного промежутка TVOD. Блок управления контентом определяет, сконфигурирован ли канал подлежащего записи TVOD потоковым сервером. Время запуска записи должно указываться с опережением на несколько минут, а продолжительность записи, как правило, варьируется в пределах 4 часов.

На этапе 203 блок управления контентом отсылает задачу записи на модуль медиаконтроля.

Один блок управления контентом может управлять множеством модулей медиаконтроля, и один модуль медиаконтроля может контролировать множество потоковых серверов. Модуль медиаконтроля, выбранный блоком управления контентом при отсылке запроса на запись, в первую очередь отвечает тому условию, что канал подлежащего записи TVOD запоминается потоковым сервером, контролируемым модулем медиаконтоля, а также модуль медиаконтроля можно выбирать в соответствии со стратегией выравнивания нагрузки. Подобным образом потоковый сервер, выбираемый модулем медиаконтроля при отсылке задачи записи, должен запоминать канал подлежащего записи TVOD, а также потоковый сервер можно выбирать в соответствии со стратегией выравнивания нагрузки.

Чтобы по возможности ослабить