Главная страница  |  Описание сайта  |  Контакты
СПОСОБ ОПТИМИЗАЦИИ ПЕРЕДАЧИ ПРОГРАММЫ МНОГИМ ПОЛЬЗОВАТЕЛЯМ, СИСТЕМА ДЛЯ ОПТИМИЗАЦИИ ПЕРЕДАЧИ ПРОГРАММЫ МНОГИМ ПОЛЬЗОВАТЕЛЯМ, ПРИЕМНИК ДЛЯ ПРИЕМА ПРОГРАММЫ, ПОЛУЧЕННОЙ ОТ СИСТЕМЫ ОПТИМИЗАЦИИ ПЕРЕДАЧИ ПРОГРАММЫ, И УСТРОЙСТВО ПЛАНИРОВАНИЯ ДЛЯ СИСТЕМЫ ОПТИМИЗАЦИИ ПЕРЕДАЧИ ПРОГРАММЫ
СПОСОБ ОПТИМИЗАЦИИ ПЕРЕДАЧИ ПРОГРАММЫ МНОГИМ ПОЛЬЗОВАТЕЛЯМ, СИСТЕМА ДЛЯ ОПТИМИЗАЦИИ ПЕРЕДАЧИ ПРОГРАММЫ МНОГИМ ПОЛЬЗОВАТЕЛЯМ, ПРИЕМНИК ДЛЯ ПРИЕМА ПРОГРАММЫ, ПОЛУЧЕННОЙ ОТ СИСТЕМЫ ОПТИМИЗАЦИИ ПЕРЕДАЧИ ПРОГРАММЫ, И УСТРОЙСТВО ПЛАНИРОВАНИЯ ДЛЯ СИСТЕМЫ ОПТИМИЗАЦИИ ПЕРЕДАЧИ ПРОГРАММЫ

СПОСОБ ОПТИМИЗАЦИИ ПЕРЕДАЧИ ПРОГРАММЫ МНОГИМ ПОЛЬЗОВАТЕЛЯМ, СИСТЕМА ДЛЯ ОПТИМИЗАЦИИ ПЕРЕДАЧИ ПРОГРАММЫ МНОГИМ ПОЛЬЗОВАТЕЛЯМ, ПРИЕМНИК ДЛЯ ПРИЕМА ПРОГРАММЫ, ПОЛУЧЕННОЙ ОТ СИСТЕМЫ ОПТИМИЗАЦИИ ПЕРЕДАЧИ ПРОГРАММЫ, И УСТРОЙСТВО ПЛАНИРОВАНИЯ ДЛЯ СИСТЕМЫ ОПТИМИЗАЦИИ ПЕРЕДАЧИ ПРОГРАММЫ

Патент Российской Федерации
Суть изобретения: Изобретение относится к технике передачи видеосигналов через систему распределения, в частности через кабельную телевизионную сеть, с конкретным прмиенением для заказного видео. Система оптимизации передачи программ многим пользователям включает блок формирования программы, разделенной на множество программных сегментов для реализации алгоритма планирования, блок передачи программных сегментов согласно алгоритму планирования с возможностью одновременной передачи любого сегмента более чем одному приемнику. В приемнике сети предусмотрена буферная память для хранения переданных сегментов программы, при этом алгоритм планирования гарантирует, что приемник пользователя будет принимать все сегменты программ для обеспечения воспроизведения программы в реальном времени. Под управлением контроллера приемник различает принятые сегменты программы по идентификатору сегмента так, что избыточные сегменты затем сохраняются в буферной памяти, из которой сегменты могут быть извлечены и подвергнуты декомпрессии для немедленного их последующего просмотра. 4 с. и 18 з.п. ф-лы, 6 ил., 1 табл.
Поиск по сайту

1. С помощью поисковых систем

   С помощью Google:    

2. Экспресс-поиск по номеру патента


введите номер патента (7 цифр)

3. По номеру патента и году публикации

2000000 ... 2099999   (1994-1997 гг.)

2100000 ... 2199999   (1997-2003 гг.)
Номер патента: 2106758
Класс(ы) патента: H04N7/08, H04N7/12, H04N5/44, H04N5/455, G06F3/023, H04N7/16
Номер заявки: 5011573/09
Дата подачи заявки: 23.08.1990
Дата публикации: 10.03.1998
Заявитель(и): Дельта Бета Пти., Лтд. (AU)
Автор(ы): Генри Куртис Де Бей[US]
Патентообладатель(и): Дельта Бета Пти., Лтд. (AU)
Описание изобретения: Изобретение относится к системе и способу для оптимизации передачи программ через систему распределения, в частности к способу и системе для подачи по требованию видеосигналов через кабельную телевизионную сеть.
Во всем последующем описании слово "программа" необходимо понимать в самом широком смысле и оно включает в себя любую информацию, будь то визуальная или звуковая или их смесь, или иначе, которая обычно воспринимается в, по существу, непрерывной последовательности впечатлений через одно или более человеческих чувств. Термин "видеопрограмма" относится и к программе визуальной информации или визуальной и звуковой информации, записана ли она в воспроизводимом формате или передается "живьем". В нашем "информационном обществе" с его увеличивающимся акцентом на большей доступности информации имеется много ситуаций, когда требуется доступ к одной и той же программе в одно и то же время более чем одному человеку.
Так, например, в библиотеке большого учебного института, в которой хранятся лекции и другая информация на аудио- и видеокассетах, потребность в определенных программах может быть, в частности, высокой в определенные моменты времени и требуется способность обеспечить нескольким студентам возможность слушать или смотреть программу одновременно с начала, без принуждения отдельных персон к старту просмотра или прослушивания программы в одно и то же время. В идеале, должна быть возможность обслужить потребности всех личностей в данной программе немедленно, когда потребуется. На практике это чрезвычайно трудно без дорогостоящего дублирования оборудования и сложной электронной обработки. Другим примером этого типа многопользовательской ситуации является так называемое заказное видеотелевидение. Система видеозаказа позволяет любому подписчику запрашивать (требовать) любую конкретную видеопрограмму в любое время дня.
Известна система видеозаказа, описанная в патенте США N 4506387 Вальтера, в которой каждая видеопрограмма предварительно запрограммирована в запоминающем устройстве с возможностью выбора главным компьютером на центральной станции данных в ответ на адресный сигнал, переданный от пользователя. Главный компьютер управляет передачей видеопрограммы на высокой скорости не в реальном времени через сеть волоконно-оптических линий на станцию приема данных в месте размещения пользователей. Станция приема данных затем преобразует принятые оптические данные в электрические данные и сохраняет их для последующей передачи в реальном времени на пользовательский телевизионный приемник.
У системы Вальтера имеется ряд значительных недостатков, первый из которых заключается в том, что она не совместима с существующими сетями телевизионной передачи, в частности с коаксиальными кабельными сетями CATV (кабельного телевидения). Чтобы получить быстрое время отклика, Вальтер передает все цифровые данные, соответствующие всей программе, на принимающую станцию через множество волоконно-оптических линий за очень короткое время. Даже при сжатии цифровых данных ширина полосы частот, требуемая для этой системы, является относительно большой. Например, 16 оптических каналов данных через четыре волоконно-оптические линии требуются, чтобы передать двухчасовой фильм за время около 31 с. Очень мало домов и зданий в настоящее время готовы к установке волоконно-оптических кабелей, а волоконно-оптическая сеть дорога при установке.
Другим недостатком системы Вальтера является то, что она не может адекватно обслуживать интенсивные запросы по одной и той же видеопрограмме. Исследования в библиотеках проката видеолент показывают, что из общего количества, например пяти тысяч, лент, хранящихся в библиотеке в любой конкретный момент времени интенсивно запрашивается только основная группа названий, числом от 20 до 40. Кроме того, эти исследования особенностей просмотра зрителями показывают, что требования по основным видеозапросам изменяются в течение дня при изменении типа зрителей. Вальтер предполагает, что центральная станция данных передает только часть выбранной программы пользователю для просмотра, а затем начинает передачу части другой выбранной программы второму пользователю, система не может одновременно обслужить несколько пользователей, запрашивающих одну и ту же программу. В этом случае пользователь должен ждать, пока передача всей программы каждому пользователю, который сделал запрос раньше него, не будет завершена, прежде чем система сможет обратиться к его запросу. Ясно, что для основных видеопрограмм это может привести к неприемлемым задержкам.
Цель изобретения - создание способа и системы для оптимизации передачи программ через систему распределения для многих пользователей и, особо, создание системы и способа для подачи заказного видео, который совместим с существующими видеораспределительными системами, такими как CATV. Во всем описании термин "система распределения" должен толковаться в самом широком смысле этого термина и охватывает обычные радио и телевизионные системы, CANV и внутренние телевизионные (видео) аудио распределительные системы вида, используемого в отелях, учебных институтах и более современные в воздушных и океанских лайнерах.
В соответствии в одним аспектом изобретения предложен способ для оптимизации передачи программы многим пользователям через систему распределения, причем способ включает
на головном конце системы распределения
разделение программы на множество программных сегментов;
передачу программных сегментов в избыточной последовательности в соответствии с запланированным алгоритмом;
на приемнике системы распределения
запоминание переданных сегментов программы в буферном средстве запоминания в приемнике для последующего воспроизведения, посредством чего при использовании указанный запланированный алгоритм гарантирует, что приемник пользователя примет все сегменты программы способом, который обеспечит непрерывное воспроизведение в реальном времени данной программы.
Максимальное время отклика (MRT) соответствует максимальному времени, которое пользователь должен тратить на ожидание начала воспроизведения запрошенной программы.
Обычно стадия разделения программы включает разделение программы на сегменты такой выбранной длины, чтобы по меньшей мере один сегмент мог быть передан за время MRT.
В предпочтительном варианте осуществления указанный шаг передачи сегментов включает передачу одного или более сегментов в течение каждого MRT, включая первый сегмент, соответствующий первому сегменту времени воспроизведения программы, в соответствии с запланированным алгоритмом, посредством чего при использовании первый сегмент всегда готов в приемнике в пределах одного MRT для немедленного воспроизведения.
В соответствии с другим аспектом изобретения разработана система для оптимизации передачи программы многим пользователям, причем система содержит
на головном конце системы
средство для разделения программы на множество программных сегментов;
средство для передачи программных сегментов в избыточной последовательности в соответствии с запланированным алгоритмом;
на приемнике системы
буферное средство запоминания для сохранения передаваемых сегментов программы для последующего воспроизведения на приемнике, посредством чего при использовании указанный запланированный алгоритм может гарантировать, что приемник примет все программные сегменты способом, который обеспечит непрерывное воспроизведение в реальном времени программы на приемнике.
Предпочтительно система, кроме того, содержит на головном конце системы средство для нумерации программных сегментов от 1 до n, где n равно числу сегментов, на которое делится программа, и в котором сегменты нумеруются в порядке, в котором они должны появляться в программе для нормального воспроизведения.
В соответствии с дополнительным аспектом изобретения разработан приемник для приема программы, подаваемой системой оптимизации передачи программы, причем приемник содержит
буферное средство запоминания для сохранения множества программных сегментов программы, передаваемой от головного конца системы в соответствии с запланированным алгоритмом;
средство обработки для обработки указанных сегментов программы, сохраненных в буферном средстве запоминания, и выдачи сегментов в правильной последовательности для воспроизведения, посредством чего при использовании указанный запланированный алгоритм может гарантировать, что приемник примет все программные сегменты способом, который обеспечит непрерывное воспроизведение в реальном времени программы на приемнике.
Обычно указанное средство обработки содержит средство для различения принятых программных сегментов с помощью идентификатора сегмента, в котором указанный идентификатор сегментов идентифицирует сегмент по меньшей мере по его номеру, посредством чего при использовании приемник может отличить избыточные сегменты от сегментов, требующихся для последующего воспроизведения.
В соответствии с еще одним аспектом изобретения разработано устройство планирования для системы оптимизации передачи программ, причем устройство содержит
средство для разделения программы на множество программных сегментов;
средство для планирования указанного множества программных сегментов в избыточной последовательности в соответствии с запланированным алгоритмом;
средство для маршрутизации указанных запланированных программных сегментов для передачи на один или более приемников пользователей, запрашивающих программу, посредством чего при использовании указанный запланированный алгоритм может гарантировать, что приемник пользователя примет все сегменты программы способом, который обеспечит непрерывное воспроизведение программы в реальном времени.
Предпочтительно указанное средство для разделения делит программу на сегменты с такой выбранной длиной, чтобы по меньшей мере один сегмент мог быть передан во временной интервал максимального времени отклика (MRT), где MRT соответствует максимальному времени, которое необходимо пользователю затратить на ожидание начала воспроизведения запрошенной программы с ее начала.
Алгоритм планирования, предпочтительно используемый в изобретении, включает итеративное вычисление в течение каждого MRT результата в виде COUNT по модулю X = Y, где COUNT - заранее определенное целое число, увеличивающееся на 1 с каждым MRT, X = от 1 до n, где n - число сегментов, на которое разделена программа, посредством чего при использовании в случае Y = 0 программный сегмент номер X будет передан.
На фиг. 1 показана блок-схема предпочтительного варианта осуществления системы заказного видео; на фиг. 2 - более подробная блок-схема, иллюстрирующая функциональные блоки системы заказного видео с фиг. 1, примененной к сети CATV; на фиг. 3 - блок-схема шагов способа, используемых в головной части системы заказного видео; на фиг. 4 - блок-схема шагов способа, используемых в приемнике системы заказного видео; на фиг. 5 - табличное представление последовательности передачи видеосегментов в соответствии с предпочтительным алгоритмом планирования; на фиг. 6 - графическое представление соотношения между максимальным временем отклика и отношением запрашиваемые часы видео/час времени передачи.
Фиг. 1 схематически иллюстрирует предпочтительный вариант осуществления системы заказного видео в соответствии с изобретением. Внешний несжатый материал может поступать в систему в самом основном формате, таком как 35 мм фильм, видеолента, или через линию телекоммуникации, такую как вещательное телевидение или спутниковая передача. Несжатый материал проходит через систему 10 сжатия носителей для сжатия материала аудиовизуальных программ в сжатый формат. Материал аудиовизуальных программ может быть сжат с помощью поставщика службы внешнего видеосжатия, такого как корпорация Intel. Такой внешне сжатый материал может поступать в систему непосредственно через узел 12 распределения памяти. Узел 12 распределения памяти передает по маршруту сжатый видеоматериал в надлежащую среду хранения.
Имеется три типа памяти в системе, долговременная медленная память 14, долговременная быстрая память 16 и кратковременная быстрая память 18. Разделение хранилища сжатого видеоматериала на различные типы памяти базируется на коммерческих соображениях, с точки зрения относительно высокой стоимости быстрого запоминающего средства по сравнению с медленным запоминающим средством. Выбор типа памяти, в которую направляются различные программы, базируется на ожидаемых будущих запросах к интересующему видеоматериалу. Сегменты с ежедневными новостями должны, вероятно, сохраняться в кратковременной быстрой памяти 18, тогда как классические фильмы, такие как "Унесенные ветром", должны, вероятно, сохраняться в долговременной быстрой памяти 16. Нечасто запрашиваемые материалы, такие как некоторые малоизвестные немые картины, должны, вероятно, сохраняться в долговременной медленной памяти 14. Узел 12 распределения памяти является обычно микро- или миникомпьютером, который управляет потоком данных между различными запоминающими устройствами.
Долговременная медленная память 14 обычно имеет вид такого запоминающего средства, как магнитные ленты или оптические диски, и может требовать вмешательства человека для извлечения материала, выбираемого нечасто. Долговременная быстрая память 16 обычно может иметь вид автоматического электропроигрывающего устройства запоминающего устройства на оптическом диске. Память на оптическом диске обеспечивает хранение с высокой плотностью с произвольным доступом. Типовым устройством, имеющимся в настоящее время, является привод/стойка оптической дисковой системы 6800 KODAC. Кратковременная быстрая память 18 может иметь вид накопителя на магнитных дисках, такого как IBM модель 3380. Это обеспечивает быстрый произвольный доступ к сжатому видеоматериалу, сохраненному в цифровом формате, но является относительно дорогой запоминающей средой и должно, следовательно, использоваться только для сохранения популярного основного набора видеопрограмм.
Компьютер 20 планирования и маршрутизации принимает запросы на конкретный аудиовизуальный материал от приемников пользователей 22A, 22B или 22C через двунаправленную сеть запросов и распределения. Компьютер 20 планирования и маршрутизации управляет выборкой и разделением выбранных видеопрограмм на множество видеосегментов, планирует видеосегменты в соответствии с алгоритмом планирования и управляет маршрутизацией запланированных сегментов для передачи одному или более приемникам 22A, 22B или 22C так, что приемник каждого запрашивающего зрителя будет принимать все видеофрагменты способом, который гарантирует непрерывный немедленный просмотр программы. Система заказного видео использует комбинацию частного мультиплексирования и временного уплотнения. Временным уплотнением видеосегментов управляет компьютер 20 планирования и маршрутизации в соответствии с алгоритмом планирования. Частотное мультиплексирование выполняется узлом 24 распределения абонентов под управлением компьютера 20 планирования и маршрутизации. Обрабатывающие способности компьютера 20 планирования и маршрутизации подобны тем, что требуются в компьютерах, используемых банками для автоматических кассовых машин. Компьютер 20 планирования и маршрутизации может быть любым подходящим компьютером с обычной обрабатывающей способностью от 1,5 до 200 миллионов операций в секунду (MIPS), в зависимости от базы абонента и других нагрузочных факторов.
Приемники 22 зрителей являются обычно частотно подвижными, чтобы быть совместимыми с частотным мультиплексированием, используемым в головной части системы. Приемники снабжены обрабатывающим средством для сбора соответствующих пакетов данных, создаваемых временным уплотнением видеосегментов. Приемники 22 также снабжены буферным средством запоминания для сохранения принятых видеосегментов и также должны обычно содержать средство декомпрессии для декомпрессии видеоданных и далее показан на предназначенном телевизионном экране или подачи в обычный телевизионный приемник.
Система заказного видео(фиг.1) может работать или на аналоговых, или на цифровых схемах, связи, однако в предпочтительном варианте осуществления, описанном ниже, система видеораспределения является обычной кабельной телевизионной системой, которая является аналоговой. В предпочтительном варианте осуществления системы, описанной ниже, первоначально модулированные цифровые данные передаются через CATV сеть. Однако очевидно, что будущая система будет использовать смесь аналоговых и модулированных цифровых сигналов.
Способ оптимизации передачи программ в соответствии с изобретением может обеспечить оптимизацию передачи или для цифровых, или для аналоговых информационных сигналов.
Обычные CATV системы являются в типичном случае симплексными системами связи (только в одну сторону), так что не существует легкого способа повторной передачи данных, когда обнаружены ошибки. Соответственно, требуется некоторая форма компенсации ошибок. К счастью, телевизионные данные, в общем используются в очень изменчивой манере, в отличие от компьютерных данных, которым должна быть гарантирована точная передача. Если несколько кадров телевизионного изображения искажены, большинство зрителей воспримет это даже без осознанного знания об их появлении. Соответственно, может быть допустим намного более высокий уровень ошибок, например 1 ошибочный бит данных на 100000. При этом уровне система глаз/мозг человека обычно даже не может обнаружить видеоэффекты, вызванные этим ошибочным битом. Большинство цифровых модемов работают с уровнями битовых ошибок от 1 в 100.000.000 до 1 в 1.000.000.000. Однако система заказного видео может допускать уровни ошибок в типичном случае от 1000 до 10000 раз выше, чем системы данных большинства компьютеров, разработанных в настоящее время для нее. Более высокий уровень ошибок, конечно, улучшит эксплуатацию, хотя улучшение может не восприниматься зрителем.
Фиг.2 иллюстрирует в форме блок-схемы предпочтительный вариант осуществления системы заказного видео, примененной к CANV сети. Система заказного видео содержит в головном конце средство для подачи видеопрограммы в сжатом формате в виде запоминающих устройств. Одна запись - множество считываний (WORM) и запоминающих устройств 28 на магнитных дисках, обеспечивающих долговременную быструю память 16 и кратковременную быструю память 18 соответственно. В этом варианте осуществления сжатый видеоматериал сохраняется в цифровом формате в запоминающих устройствах и видеопрограммы могут уже быть сегментированы в запоминающей среде в видеопакеты, которым приданы размеры, совместимые с техническими требованиями системы. Устройство 28 на магнитных дисках и WORM устройства 26 соединены с компьютером 30 планирования и маршрутизации шиной 32 данных.
Компьютер 30 планирования и маршрутизации отвечает на запрос абонента по конкретной программе извлечением видеопрограммы из соответствующей среды хранения и разделением видеопрограммы на множество видеосегментов. Как упоминалось выше, видеопрограмма может сохраняться в хранящей среде уже в сегментах, соответствующих требованиям планирования системы, посредством этого уменьшая нагрузку на компьютер 30 во время процесса извлечения и разделения видеопрограммы на видеосегменты. Затем компьютер 30 планирует множество видеосегментов видеопрограммы в соответствии с алгоритмом планирования, как будет более подробно описано ниже, и маршрутизирует запланированные видеосегменты для передачи на один или более приемников зрителей, запрашивающих видеопрограмму. Для основных видеопрограмм (тех, что находятся в постоянном запросе по меньшей мере одним абонентом за периоды более чем одно время видеовоспроизведения VPT алгоритм планирования может выполняться однажды и для пакетов, сохраненных в запланированной последовательности на устройстве последовательной записи, таком как лентопротяжное устройство (не показано), чтобы дополнительно уменьшить нагрузку на компьютер.
В этом варианте осуществления узел 24 распределения абонентов содержит множество модемов 34 под управлением компьютера 30 планирования и маршрутизации. Каждый модем 34 модулирует различный частотный сигнал несущей, соответствующий каждому из каналов CATV сети 36, для передачи пакетов данных видеопрограммы, направленных на соответствующий модем 34 компьютером 30 планирования и маршрутизации через шину 32 данных.
Каждый абонент CATV сети 36 снабжен приемником 40 для приема пакетов данных видеосегмента, соответствующих запрашиваемой программе, и сохранения видеосегментов для будущего просмотра абонентом. Каждый приемник 40 в типичном случае содержит буферную память 42 для сохранения видеосегментов видеопрограммы, переданной с головного конца, и средство видеообработки для обработки видеосегментов, сохраненных в буферной памяти, и подачи сегментов в правильной последовательности на телевизионный приемник 44 абонента для просмотра. Обычно средство видеообработки может включать в себя контроллер 52 и память 46 захвата для захвата пакетов данных видеосегмента, принятых из CATV сети 36 и демодулированных одним или более модемами 48 приемника. Под управлением контроллера 52 средство видеообработки различает принятые программные сегменты посредством идентификатора сегментов, например PKTID, так что избыточные сегменты могут игнорироваться и переписываться в память 46 захвата. Модем 48 - предпочтительно модем с широкой полосой пропускания с быстрым изменением частоты, такой как Fairchild М505, хотя, как отмечено выше, может также использоваться цифровой модем с более низким уровнем, с более низким уровнем битовых ошибок. Пакеты сжатых видеоданных, захваченные в память 46 захвата, сохраняются в буферной памяти 42, из которой сегменты могут быть извлечены и декомпрессированы в декомпрессоре 50 данных для немедленного или последующего просмотра. Контроллер 52 на базе микропроцессора управляет потоком данных и видеообработкой в приемнике 40.
Некоторые CATV системы могут приспосабливать двунаправленные дешифраторы или приемники, и для этого типа системы приемник 40 снабжен клавишной панелью 54, чтобы позволить абоненту инициализировать запрос через CATV сеть 36. Однако большинство CATV систем являются однонаправленными ( симплексными), и запрос абонента, следовательно, может быть сделан через коммутируемую телефонную сеть общего пользования (PSTN) 56. Запрос абонента через PSTN 56 может быть устным или через манипуляцию контактным тональным сигналом подобно тому, что предоставляется поставщиками службы сети других подключенных к линии абонентов.
Защита системы для предотвращения несанкционированного просмотра передаваемых программ может достигаться несколькими способами. Стандартные алгоритмы кодирования могут применяться на модемах 34 до передачи. Тогда каждому абоненту 40 необходим ключ для дешифрации принятых данных. Ключи шифровки/дешифровки распределяют среди абонентов способом, подобным тому, что используется финансовыми учреждениями для распределения PIN (указателей местоположения) при применении автоматических кассовых машин. Альтернативно, каждый пакет данных, передаваемый на головном конце, может быть снабжен идентификатором (ID) приемника, уникальным для каждого абонента, так что пиратский приемник должен выбрать соответствующий идентификатор приемника, чтобы принять конкретную видеопрограмму.
Необходимо иметь ввиду, что система заказного видео (фиг.2) является лишь примером и могут использоваться многие другие технические решения, чтобы реализовать способ и систему для получения заказного видео в соответствии с изобретением. Например, приемники 40 могут содержать несколько модемов для одновременного приема пакетов данных через несколько каналов и можно обойтись без памяти захвата, если видеосегменты хранятся в буферной памяти в сжатом формате. Затем видеосегменты подвергаются декомпрессии, когда они подаются на телевизионный приемник абонента в правильной последовательности для просмотра. Кроме того, определенные части устройства головного конца или приемника могут быть размещены в различных географических местоположениях. Например, с точки зрения типовой архитектуры CATV систем возможно, что модем и буферные секции приемника станут частью кабельной сети, в которую войдут в качестве абонентского отвода, и что другие секции должны размещаться в помещениях абонента.
Необходимо отметить, что пакеты данных видеосегментов не нуждаются в передаче через один и тот же канал для всех просматривающих абонентов. Посредством использования комбинации временного уплотнения и множественных каналов в головной части системы скорости передачи данных через каждый из каналов могут сохраняться минимальными, следовательно, позволяя использовать в приемниках менее дорогое оборудование. Каждый приемник 40 может быть конфигурирован для сканирования каналов в циклическом режиме, чтобы определить, какой канал или каналы передают соответствующие видеосигналы. В дополнение к этому, может быть предусмотрен назначенный управляющий канал, через который передаются данные от компьютера 30 планирования и маршрутизации, с целью указания каждому приемнику, какие принимать пакеты и на каких каналах (канале). Однако предпочтительно головной конец передает видеосегменты в соответствии с алгоритмом планирования в непрерывном режиме, причем каждый видеосегмент снабжен идентификатором названия, также как и идентификатором сегмента, так что каждый приемник будет принимать все видеосегменты с соответствующим идентификатором названия и может отвергать или переписывать видеосегменты, уже принятые.
Ключевой особенностью изобретения является планирование видеосегментов для передачи в избыточной последовательности способом, который гарантирует что каждый приемник примет все видеосегменты для запрошенной программе в соответствии с планом, который обеспечивает непрерывное воспроизведение в реальном времени видеопрограммы в приемнике. Предпочтительная форма эффективного алгоритма планирования и его применение теперь будут описаны более подробно.
В последующем описании термин "максимальное время отклика" (MRT) относится к максимальному времени, которое необходимо абоненту для ожидания, пока запрашиваемая видеопрограмма будет готова для просмотра на его приемнике. MRT относится к максимальному времени, которое система должна тратить на ответ на запрос. Время видеовоспроизведения (VPT) относится к времени, требуемому для воспроизведения конкретной видеопрограммы, которую просматривают при нормальной скорости воспроизведения. Данные, которые содержат видеопрограмму, должны быть разделены на пакеты данных видеосегментов такой длины, чтобы один пакет мог быть передан за время в IMRT. Для времени воспроизведения видеосегмента или длины слота одного пакета данных нет необходимости быть меньше, чем IMRT и они могут быть больше, чем IMRT, в зависимости от того, как велика ширина полосы пропускания, предоставленная носителем передачи для передачи пакета(тов) данных за время в IMRT. Длина слота может изменяться с целью регулирования немедленной загрузки и скоростей данных на носителе передачи или для регулировки объема пространства буферной памяти, требующейся в приемниках. Однако в любой одной инсталляции длина слота и MRT должны обычно фиксироваться для конкретной конфигурации системы. В последующем описании длина слота сделана равной MRT, чтобы упростить объяснение. Так, например, если видеопрограмма имеет длительность 60 мин и MRT составляет 5 мин, видеопрограмма делится на 12 дискретных пакетов данных, каждый из которых соответствует 5 мин данных видеосегмента. Каждый из пакетов данных нумеруется от 1 до n, где n равно VPT/MRT в хронологическом порядке просмотра.
Применение алгоритма планирования предпочтительно при программном обеспечении, управляемом компьютером планирования и маршрутизации. Основной алгоритм программы планирования является следующим:
установить MRT равным выбранному максимальному времени отклика;
установить счетчик равным 0 начальному значению;
извлечь пакеты данных видеосегмента, отсортированных относительно времени воспроизведения MRT (PKT1, PKT2...PKTn);
цикл ждать, пока остаток периода не станет равным MRT;
установить COUNT равным COUNT плюс 1;
если (COUNT по модулю 1)=0, то передать PKT1;
если (COUNT по модулю 2)=0, то передать PKT2;
если (COUNT по модулю 3)=0, то передать PKT3;
.............................................
если (COUNT по модулю n)=0, то передать PKTn;
стартовать снова с цикла.
Примечание: (x по модулю y)= остатку от (x, деленного на y).
В соответствии с вышеприведенным алгоритмом планирования, пакеты данных видеосегмента передают в избыточной последовательности с одним или более пакетом данных, передаваемым в течение каждого MRT. Каждая передача начинается в наращиваемое время n* MRT, и во многих случаях большая часть MRT периода проходит в реальном выполнении передач. При вышеуказанном планировании алгоритма, PKT1 будет всегда передаваться, однако другие пакеты могут передаваться или нет при любом данном значении COUNT. Следовательно, любой конкретный запрашивающий приемник может принимать любые пакеты в несоприкасающемся потоке. Так, для MRT=5 и VPT=60 он может принять следующие пакеты (см. таблицу).
Вышеприведенная последовательность является лишь одной из многих возможных последовательностей выдачи пакетов, производимых алгоритмом. Фиг.6 - графическое представление последовательности пакетов данных видеосегмента в течение интервала времени каждого MRT. Номер каждого видеосегмента показан на вертикальной оси, а номер интервала MRT показан вдоль горизонтальной оси. Фиг.6 показывает максимум 30 видеосегментов и 49 MRT интервалов, однако очевидно, что это произвольные числа, и обе оси могут быть неограниченно продолжены. Должно быть практическое ограничение на число видеосегментов, на которые может быть разделена видеопрограмма, однако число MRT интервалов будет функцией длительности, которую требует конкретная программа в непрерывной форме. На первый взгляд, выход последовательности алгоритма кажется имеющим произвольный порядок пакетов. Однако, хотя последовательность может считаться псевдослучайной, в действительности она является неслучайной в том, что гарантирует, что приемник никогда не должен ждать передачи какого-то пакета и может обеспечить немедленный просмотр видеосегментов в правильной последовательности. Соответственно, ко времени, когда приемник готов показать конкретный пакет, этот пакет будет или в буферной памяти или будет в это время приниматься.
В вышеприведенной таблице избыточные пакеты не были включены в столбец "Принятые РКТ", поскольку на практике они должны быть отброшены или переписаны приемником. Можно заметить, что в вышеприведенном примере последовательности в диапазоне времени в 8 MRT все 12 пакетов получены и что определенные пакеты, например PKTI2, получены приемником полностью перед тем, как требуется просмотр. PKTI2 и другие любые принятые ранее пакеты сохраняются в буфере до надлежащего времени просмотра. Алгоритм планирования гарантирует, что пакет всегда принимается, когда он должен быть просмотрен или перед этим.
На фиг. 6 можно видеть, что в определенные моменты времени, например интервалы MRT 12, 24 или 36, принимается большее число пакетов, чем в другие моменты, что ведет к увеличению нагрузки на среду передачи и буферную память в приемниках. Предпочтительно, чтобы буферная память была достаточно большой, чтобы сохранить все пакеты данных для конкретной программы, и это также обеспечивает приемнику возможность сохранения программы для дальнейшего, если необходимо, просмотра.
Основные соображения при проектировании алгоритма планирования и объема памяти, требующейся в приемниках, включают в себя компромиссы между временем (MRT) отклика, гарантированным зрителям, шириной полосы частот, требующейся для служебных запросов, и объемом пространства буферной памяти, предусмотренного в приемниках. Принципиальным преимуществом алгоритма планирования вышеуказанного вида является эффективное использование передающей среды, которая может быть реализована. Так, например, если требуется MRT в 5 мин, без планирующего алгоритма полная видеопрограмма должна передаваться непрерывно с начала каждые 5 мин. Так, для программы с временем воспроизведения 60 мин полная программа должна передаваться 12 раз. При использовании вышеприведенного алгоритма планирования число пакетов данных, требующихся для передачи, чтобы обеспечить MRT в 5 мин, равно тому, что требуется для передачи всей программы только 3,12 раз.
Соотношение между MRT и суммарным объемом данных, которые должны быть переданы, может быть представлено следующим равенством "кривой наилучшего приближения":
.
Суммарные данные взяты в терминах VPT, так что объем данных 3 равен 3 раза по VPT или стоимости 180 мин данных для 60-минутной программы, подаваемой с MRT в 5 мин. Фиг.6 является графическим представлением соотношения между MRT и требуемым временем передачи видео-часы/час или общим объемом передаваемых данных.
Необходимо учесть, что, хотя вышеописанный алгоритм планирования является предпочтительной формой, алгоритм может быть так модифицирован, чтобы позволить компромисс между эффективностью передачи и объемом требуемой буферной памяти. Коммерческие соображения определяют, как уравновесить баланс системных стоимостей. Если больше тратится на буферы приемников, то меньше потребуется потратить на обеспечение линий передачи.
В примере модифицированного алгоритма планирования можно уклониться от требования обязательной посылки PKT1. В этом случае PKT1 и другие выбранные пакеты могут передаваться менее часто и сохраняться в имеющемся пространстве буферной памяти в приемниках до загрузки запроса. Например, может быть выбрано следующее применение.
Каждый приемник снабжается маломощными устройствами буферной памяти, которые остаются активными все время для приема выбранных пакетов видеопрограмм. Предположим, имеется 10 основных видеопрограмм, приемники могут быть конфигурированы для сохранения PKT1 каждой из 10 основных видеопрограмм. PKT1 передается только в заранее определенные интервалы в соответствии с модифицированным алгоритмом планирования, а не в каждой MRT, как в вышеописанном алгоритме планирования. Следовательно, когда запрос для основной программы загружен, первый пакет уже находится в буферной памяти приемника и доступен для немедленного просмотра, в то время как затем применяется модифицированный алгоритм планирования. Это может уменьшить значительно требования к ширине полосы частот передачи при умеренном увеличении стоимости приемника, в то же время обеспечивая немедленную выдачу основной программы зрителю.
Также возможно уменьшить пиковые нагрузки передачи посредством отхода от требования, чтобы все запросы начинали обслуживаться в пределах максимального периода, равного MRT. Приняв небольшую процентную задержку в обслуживании, можно дополнительно сгладить нагрузку передачи.
Типичная программная управляющая последовательность как на компьютере головного конца, так и на приемнике, будет теперь описана со ссылкой на фиг. 3 и 4. Когда компьютер планирования и маршрутизации головного конца принимает запрос абонента, он записывает идентификатор абонента, идентификатор названия запрашиваемой программы и время запроса. Компьютер отслеживает каждый запрос и его продвижение до завершения в соответствии с алгоритмом планирования. Обычно бывает несколько потоков программ, передаваемых в любой конкретный момент времени. Алгоритм планирования генерирует различные скорости данных в различные моменты времени, как отмечено выше. Посредством регулирования входного значения COUNT для различных потоков программ, итоговая скорость данных в среде передачи может поддерживаться на достаточно постоянном уровне. В зависимости от величины COUNT, при которой конкретный запрос входит в алгоритм, время для выполнения передачи запрашиваемой программы может находится в диапазоне от IMRT до 1 VRT или быть равным любому значению между ними.
Следовательно, когда компьютер головного конца зарегистрировал идентификатор абонента, идентификатор названия и время запроса, он определяет, является ли запрашиваемая программа в данный момент активной, и если это так, вводит запланированную последовательность в заключение текущего интервала MRT времени. Если запрашиваемая программа не является в данный момент активной, то значение COUNT внутреннего счетчика компьютера (может быть программный счетчик) устанавливается в надлежащее начальное значение, чтобы обеспечить регулировку входного значения COUNT для каждого различного потока программ. Предположим, что запросы сделаны одновременно на программы А, В, С и D, обслуживание всех четырех запросов может начаться одновременно. Однако программа А будет вводить запланированную последовательность алгоритма с COUNT, равным нулю, В - с COUNT, равным 1, С - с COUNT, равным 2, и D -с COUNT, равным 3. Таким образом, в течение каждого интервала времени MRT различное количество видеосегментов для каждой программы будет передаваться одновременно, а не одно и то же число видеосегментов для каждой соответствующей программы.
В начале следующего MRT интервала компьютер вводит последовательность программ запланированного алгоритма, отмеченную выше, и планирует пакты данных для запрашиваемого названия в соответствии с запланированным алгоритмом. Компьютер также добавляет идентификатор названия и идентификатор пакета к каждому пакету данных. Затем компьютер выбирает свободный канал и передает пакеты данных по маршруту на соответствующий модем для передачи на запрашивающие приемники. Компьютер головного конца следует этой последовательности шагов, пока все пакеты по запрашиваемому названию не будут переданы после времени последнего запроса по данному названию. Когда компьютер определил, что все ожидающие запросы удовлетворены, дополнительные пакеты по этой программе не передаются.
В приемнике, после того как абонент послал запрос, приемник сканирует каналы передачи и ищет идентификатор названия. Когда приемник находит идентификатор названия, он ищет идентификатор пакета и запоминает любые пакеты, не принятые уже в буферную память. Если пакет уже принят, этот пакет отбрасывается и приемник продолжает искать оставшиеся пакеты данных, пока все пакеты данных для видеопрограммы не буду приняты. Пакеты данных, сохраненные в буферной памяти, могут быть посланы на приемник непосредственно для немедленного просмотра или запоминания для последующего просмотра. Хотя это не иллюстрируется на фиг. 4, приемник может также приобрести конфигурацию для поиска его уникального идентификатора адреса, чтобы обеспечить степень защиты от несанкционированного приема данных.
Из вышеприведенного описания предпочтительного варианта осуществления оптимизации передачи программ, содержащего систему и способ подачи заказанного видео, должно быть очевидно, что используемый алгоритм планирования обеспечивает эффективное средство передачи программы множеству запрашивающих абонентов, которые могут начинать воспроизведение программы в пределах определенного максимального времени отклика. Для специалистов в электронике, телевизионной и телекоммуникационной технике должно быть очевидно, что в системе и способе оптимизации передачи программы могут быть сделаны модификации и изменения, отличающиеся от уже описанных, не выходя за пределы базовых концепций изобретения. Например, в альтернативных реализациях системы и способа для системы распределения может использоваться оптическая волоконная сеть, например, чтобы обеспечить программирование по заказу для авиапассажиров. Кроме того, система и способ могут работать, используя аналоговые коммуникации, так же как и цифровые, или смесь обоих. Хотя в системе заказанного видео, описанного выше, сегменты видеопрограмм передаются в сжатом формате, очевидно, что это не является существенной особенностью изобретения, поскольку значительные улучшения в эффективности передачи могут быть достигнуты посредством одного алгоритма планирования, на что можно положиться. Все такие модификации и изменения рассматриваются в пределах сферы изобретения, существо которого должно определяться из предыдущего описания и прилагаемой формулы изобретения.
Формула изобретения: 1. Способ оптимизации передачи программы многим пользователям, заключающийся в том, что передают программы через систему распределения, отличающийся тем, что в головной части системы распределения формируют программу, разделенную на множество программных сегментов для реализации алгоритма планирования, располагающего программные сегменты в заданной последовательности, и передают программные сегменты согласно алгоритму планирования с возможностью одновременной передачи любого единичного сегмента более чем одному приемнику, причем в течение времени, необходимого для нормального воспроизведения программы, по меньшей мере часть программных сегментов передают более одного раза одновременно к нескольким приемникам без закрепления в любой момент времени головного узла и системы распределения за каким-либо отдельным приемником, в приемной части системы распределения производят запоминание переданных програмных сегментов в буферном запоминающем устройстве приемника для последующего воспроизведения, за счет чего указанный алгоритм планирования, при его использовании, может гарантировать прием любым приемником всех программных сегментов с возможностью последовательного воспроизведения программы с нормальной скоростью с одновременным обеспечением трансформируемости структуры буферного запоминующего устройства, емкость которого будет меньше емкости, вмещающей всю программу в целом.
2. Способ по п.1, отличающийся тем, что выбирают максимальное время отклика, соответствующее максимальному значению времени ожидания пользователем начала воспроизведения запрошенной программы от ее начала.
3. Способ по п.2, отличающийся тем, что в процессе формирования программы разделяют программу на сегменты с длиной, выбранной из условия передачи по меньшей мере одного сегмента за время одного значения максимального времени отклика.
4. Способ по п.3, отличающийся тем, что на этапе передачи программных сегментов передают один или более сегментов в течение каждого значения максимального времени отклика, включая первый сегмент, соответствующий первому сегменту времени воспроизведения программы, согласно алгоритму планирования, обеспечивающего перманентную доступность первого сегмента в пределах одного значения максимального времени отклика для немедленного просмотра в приемнике.
5. Способ по п.4, отличающийся тем, что дополнительно производят нумерацию программных сегментов от 1 до n, где n - равно количеству сегментов, на которое была разделена программа, причем сегменты нумеруются в порядке их появления в программе в условиях нормального воспроизведения.
6. Способ по п. 5, отличающийся тем, что в рамках ритма планирования производят итеративные вычисления в течение каждого значения максимального времени отклика, результат которого
COUNT по модулю X = Y,
где COUNT - заданное исходное целое число, возрастающее на 1 после каждого значения максимального времени отклика
X = от 1 до n, где n - количество сегментов, на которое была разделена программа,
причем всякий раз, когда Y = 0, передают программный сегмент под номером X.
7. Способ по п.1, отличающийся тем, что дополнительно производят запись идентификационного номера пользователя, идентификационного номера заголовка программы и времени каждого запроса в карту запросов абонента и отслеживают продвижение каждого запроса до его завершения.
8. Система для оптимизации передачи программы многим пользователям, выполненная в виде системы распределения, отличающаяся тем, что в головном узле системы содержится блок формирования программы, разделенной на множество программных сегментов для реализации алгоритма планирования, посредством которого программные сегменты выстраиваются в заданной последовательности, и блок передачи программных сегментов согласно алгоритму планирования с возможностью одновременной передачи любого сегмента более чем одному приемнику, причем в течение времени, необходимого для нормального воспроизведения программы, по меньшей мере часть программных сегментов передают более одного раза одновременно нескольким приемникам, без закрепления головного узла и системы ни в один момент времени за каким-либо отдельным приемником, а приемная часть системы содержит буферное запоминающее устройство для хранения передаваемых программных сегментов для последующего воспроизведения в приемнике, посредством которого указанный алгоритм планирования может гарантировать получение приемником всех программных сегментов с возможностью непрерывного воспроизведения программы с нормальной скоростью с одновременным обеспечением трансформируемости структуры буферного средства хранения, емкость которого будет меньше емкости, вмещающей всю программу в целом.
9. Система по п.8, отличающаяся тем, что дополнительно содержит в своем головном узле блок нумерации программных сегментов от 1 до n, где n - соответствует количеству сегментов, на которое разделена программа, причем сегменты нумеруются в порядке их появления в программе в условиях нормального воспроизведения, причем указанный блок нумерации программных сегментов подключен к блоку формирования программы и блоку передачи программных сегментов.
10. Система по п.9, отличающаяся тем, что дополнительно содержит в своем головном узле блок предварительного введения в каждый программный сегмент идентификатора сегмента, выполненного с возможностью идентифицирования программного сегмента по его номеру, причем указанный блок введения идентификатора сегмента подключен к блоку нумерации программных сегментов.
11. Система по п.8, отличающаяся тем, что дополнительно содержит в своем головном узле блок интеративных вычислений в течение каждого значения максимального времени отклика результата выполнения алгоритма планирования
CONT по модулю X = Y,
где COUNT - заданное исходное число, увеличивающееся на 1 после каждого значения максимального времени отклика;
X = 1 до n, где n - количество сегментов, на которое разделена программа;
причем при Y = 0 передают программный сегмент под номером X, и указанный блок итеративных вычислений подключен к блоку передачи программного сегмента.
12. Приемник для приема программы, полученной от системы оптимизации передачи программы, выполненной в виде системы распределения, отличающийся тем, что содержит буферное запоминающее устройство для хранения множества сегментов программы, полученной из головного узла системы согласно алгоритму планирования с возможностью одновременного направления любого сегмента более чем одному приемнику, при этом в течение времени, требуемого для нормального воспроизведения программы, по меньшей мере некоторые из программных сегментов передают более одного раза одновременно нескольким приемникам, без необходимости ни в один из моментов времени закрепления головного узла и системы за каким-либо отдельным приемником, и блок обработки, подключенный к буферному запоминающему устройству и служащий для обработки программных сегментов, храняющихся в буферном запоминающем устройстве и подачи сегментов в правильной последовательности для воспроизведения, с возможностью обеспечения алгоритмом планирования гарантии получения приемником всех программных сегментов с обеспечением последовательного воспроизведения программы с нормальной скоростью и трансформируемостью структуры буферного запоминающего устройства, емкость которого будет меньше емкости, вмещающей всю программу в целом.
13. Приемник по п. 12, отличающийся тем, что указанный блок обработки содержит блок различения принятых программных сегментов с помощью идентификатора сегмента, идентифицирующего сегмента по его номеру, посредством которого приемник может отличать избыточные сегменты от сегментов, необходимых для последовательного воспроизведения.
14. Приемник по п.12, отличающийся тем, что указанный блок обработки дополнительно содержит блок декодирования сжатых программных сегментов, переданных из головного узла системы оптимизации передачи программы.
15. Устройство планирования для системы оптимизации передачи программы, выполненное с возможностью оптимизации передачи программы множеству приемников через систему распределения, отличающееся тем, что содержит блок формирования программы, разделенной на множество программных сегментов для реализации алгоритма планирования, с помощью которого программные сегменты выстраиваются в заданной последовательности, и блок планирования, подключенный к блоку формирования программы и выполненный с возможностью планирования множества программных сегментов согласно алгоритму планирования так, что любой единичный сегмент может быть одновременно послан более чем одному приемнику, причем в течение времени, требуемого для нормального воспроизведения программы, по меньшей мере некоторые из программных сегментов передаются больше одного раза одновременно к многим приемникам, без закрепления ни в один момент времени головного узла и системы за каким-либо отдельным приемником, и посредством чего указанные спланированные программные сегменты могут быть переданы одному либо нескольким приемникам пользователей, запрашивающих программу, причем алгоритм планирования может гарантировать, что приемник пользователя примет все программные сегменты с обеспечением последовательного воспроизведения программы с нормальной скоростью и трансформируемости структуры буферного запоминающего устройства, емкость которого будет меньше емкости, вмещающей всю программу в целом.
16. Устройство по п. 15, отличающееся тем, что дополнительно содержит блок нумерации программных сегментов от 1 до n, где n - равно количеству сегментов, на которое разделена программа, причем сегменты нумеруются в порядке их появления в программе для нормального воспроизведения.
17. Устройство по п. 16, отличающееся тем, что дополнительно содержит блок итеративных вычислений в течение каждого значения максимального времени отклика результата выполнения алгоритма планирования
COUNT по модулю X = Y,
где COUNT - заданное исходное целое число, возрастающее на 1 после каждого значения максимального времени отклика;
X = от 1 до n, где n - количество сегментов, на которое была разделена программа;
причем при Y = 0 передают сегмент под номером X.
18. Устройство по п.15, отличающееся тем, что указанный блок формирования программы включает в себя запоминающее устройство программы сжатых данных и выполнен с возможностью восстановления программных сегментов из запоминающего устройства, программы сжатых данных, причем программа хранится в сжатом сегментированном формате, соответствующем указанному множеству сегментов.
19. Способ по п.1, отличающийся тем, что в течение времени передачи программных сегментов сегменты, появляющиеся в программе раньше, передают чаще, чем позднее появляющиеся сегменты.
20. Способ по п.1, отличающийся тем, что на этапе передачи передают программные сегменты согласно модифицированному алгоритму планирования, сглаживающему нагрузку при передаче и снижающему требования к ширине полосы пропускания.
21. Способ по п.20, отличающийся тем, что на этапе передачи производят передачу одного или более начальных сегментов в заданных временных интервалах для неограниченного хранения в малообъемном буферном запоминающем устройстве приемника и передают оставшиеся сегменты в соответствии с алгоритмом планирования, подразумевающим перманентную доступность первого сегмента для немедленного просмотра в приемнике.
22. Способ по п.1, отличающийся тем, что перед передачей производят сжатие данных программы, посредством чего множество программных сегментов может выдаваться в сжатом формате.