СПОСОБ СОЗДАНИЯ ВЕРТИКАЛЬНО ОРИЕНТИРОВАННОГО ВИДЕО
METHOD FOR CREATING VERTICALLY ORIENTED VIDEO

Перекрестные ссылки на родственные заявки
[0001] Настоящая заявка является обычной заявкой предварительной заявки на патент №62836426, поданной 19 апреля 2019 г.
Предпосылки создания изобретения
Область техники, к которой относится изобретение
[0002] Настоящее изобретение относится к системе и способу воспроизведения видео таким способом, который оптимизирует область обзора (например, зону обзора в проигрывателе) для определенного разрешения и ориентации экрана пользовательского устройства.
Предшествующий уровень техники
[0003] Изначально при создании фильмов и (позднее) телевизионного контента имелось лишь несколько видеоформатов и соотношений сторон. Стандартный фильм снимали при соотношении 4:3, а материалы для телевидения - при соотношении 16:9. Оба соотношения были предназначены для горизонтальной ориентации, так как отсутствовала необходимость создавать или воспроизводить вертикальное видео.
[0004] В последние годы с распространением электронных устройств появилась проблема при воспроизведении контента со стандартным разрешением и соотношением сторон, так как многие компьютерные мониторы, мобильные телефоны и планшеты имеют разное соотношение сторон и разрешение и могут иметь вертикальную и горизонтальную ориентацию (ориентация может меняться во время воспроизведения при повороте смартфона или планшета пользователем). Видео, записываемое только с одним разрешением, может недостаточно оптимально воспроизводиться на некоторых экранах и при некоторых ориентациях.
[0005] Соответственно, необходим механизм воспроизведения видео, автоматически оптимизируемый под устройство пользователя.
Сущность изобретения
[0006] Настоящее изобретение относится к воспроизведению видео при разных разрешениях и ориентации экрана, которое соответствует устройству пользователя и позволяет в значительной степени исключить недостатки существующих прототипов.
[0007] В одном варианте осуществления изобретения предлагается способ воспроизведения видео в формате, который соответствует устройству пользователя, при этом способ включает загрузку видео с сервера; загрузку видео в проигрыватель; проверку наличия в видео метаданных с указанием параметров разрешения и обрезки/запаса, которые соответствуют определенному устройству пользователя; если метаданные обнаружены, то (i) из видео берется кадр и в центре кадра задается точка фокуса; (ii) обзор кадра ограничивается, и на основании метаданных сокращается разрешение; (iii) область обзора воспроизводится так, что вертикальный размер области соответствует вертикальному размеру пользовательского устройства, а точка фокуса остается в центре кадра и в центре устройства пользователя (отметим, что сам кадр не изменяется - для формирования области обзора обычно используется исходный кадр, при этом края (верхний/нижний или левый/правый) не отображаются); (iv) при повороте устройства пользователем кадр воспроизводится так, что точка фокуса остается в центре устройства, а горизонтальный размер области обзора соответствует горизонтальному размеру устройства пользователя; и (v) рендеринг последующих кадров видео продолжается согласно пп. (i)-(iv). Отметим, что сам видеофайл не изменяется, меняется только область просмотра.
[0008] При необходимости пользователь вводит в качестве метаданных левый запас, правый запас, верхний запас, нижний запас, временной код и/или номер кадра. При необходимости пользователь применяет программный инструмент для визуального определения отображаемой области. При необходимости пользователь задает значения параметров кадра, которые аналогичны значениям параметров предыдущего кадра. При необходимости метаданные структурируются в виде XML или JSON. При необходимости устройством пользователя является любой смартфон, планшет, настольный компьютер или телевизор. При необходимости проигрыватель определяет изменения разрешения в устройстве пользователя в связи с поворотом и задает рендеринг видео в вертикальном или горизонтальном режиме.
[0009] При необходимости проигрыватель определяет поворот устройства и отображает только заданную/ограниченную часть видео в зависимости от разрешения экрана устройства (вертикального или горизонтального). При необходимости каждую область обзора или часть кадра можно расширить или ужать, или полное видео (отображаемое в области обзора) пригнать к «полотну» проигрывателя. При необходимости области в видео задаются исходя из контекста и различий между кадрами в положениях пикселей. При необходимости точку фокуса определяет проигрыватель, исходя из наиболее выраженной смены пикселей в кадре. При необходимости автоматический выбор отображаемой части видео изменяется во время воспроизведения.
[0010] При необходимости в ответ на перемещение устройства пользователем отображаемая область сдвигается в указанном направлении, аналогично устройствам 360°. При необходимости проигрыватель поддерживает два режима воспроизведения: (1) кадр полностью встраивается в экран, и любое пространство запаса передается в черном цвете, и (2) кадр растягивается по максимальному размеру, а остальная часть кадра остается за пределами экрана. При необходимости режим воспроизведения задается пользователем. При необходимости режим воспроизведения задается метаданными. При необходимости временной код или номер кадра используются для поворота кадра и параметров области обзора. При необходимости в результате поворота устройства происходит плавный переход с пошаговым изменением параметров с первого набора на второй.
[0011] Дополнительные возможности и преимущества изобретения будут изложены в последующем описании и частично станут очевидными из описания, или могут быть изучены в практике осуществления настоящего изобретения. Преимущества изобретения реализуются и достигаются посредством структуры, подробно указанной в описании, пунктах формулы изобретения, а также в приложенных графических материалах.
[0012] Следует понимать, что предшествующее общее описание и следующее полное описание являются приблизительными и поясняющими, и предназначены для последующего изложения изобретения в заявке.
Краткое описание графических материалов
[0013] Сопровождающие графические материалы включены с целью обеспечить более глубокое понимание изобретения и являются неотъемлемой частью этого документа. Они иллюстрируют варианты осуществления изобретения и вместе с описанием служат для объяснения принципов изобретения.
[0014] Описание чертежей:
[0015] На ФИГ. 1 изображена ситуация, в которой пользователь расширил видео для вертикальной подгонки, при этом часть кадра находится за пределами устройства (изображение слева), а справа, где видео подогнано по горизонтали, но в вертикальном направлении остается черное пространство.
[0016] На ФИГ. 2 изображен пример разметки для соотношения сторон экрана устройства 18:9.
[0017] На ФИГ. 3 изображен полный кадр (который намного больше устройства), который отображается в виде области обзора, чтобы вертикальный размер соответствовал устройству, и части области зоны обзора в горизонтальном направлении выходят за пределы устройства;
[0018] На ФИГ. 4 изображена блок-схема алгоритма проигрывателя;
[0019] На ФИГ. 5 изображена блок-схема примера мобильного устройства, которое можно использовать в изобретении.
[0020] На ФИГ. 6 изображена блок-схема примера реализации мобильного устройства.
[0021] На ФИГ. 7 изображена концепция слоев контента.
[0022] На ФИГ. 8 изображен способ разделения кадра на фрагменты.
Детальное описание предпочтительных вариантов осуществления изобретения
[0023] Далее будут представлены детальные описания предпочтительных вариантов осуществления настоящего изобретения, примеры которых изображены на сопровождающих графических материалах.
[0024] Настоящее изобретение представляет систему и способ для проигрывателя видео, работающего с разными разрешениями. Предлагается способ разметки и воспроизведения видеопотоков в зависимости от разрешения экрана устройства. Предлагаемый способ имеет собственный формат данных (далее - формат VV), который создается в редакторе и может воспроизводиться проигрывателем. Во-первых, автор вводит значения параметров в соответствии с размером кадра, положением кадра и временным кодом. Значения параметров могут храниться в базе данных, в файле в качестве метаданных или в каком-либо другом виде. Например, заголовок файла может содержать значения параметров для нескольких возможных устройств пользователя (например, iPhone 1, 2, 3, 5, 7, 10, Samsung Note 3, Samsung Note 4, iPad 2 и т.д.). В альтернативном варианте базу данных можно вести на устройстве пользователя, заполняя ее путем загрузки файла параметров из известного источника, где файл параметров создается автором контента и загружается на сервер вместе с самим видеофайлом.
[0025] После этого заявленный проигрыватель воспроизводит видео, показывая только ту область, которая соответствует введенным ранее значениям параметров. Кроме того, проигрыватель определяет разрешение для каждого кадра и увеличивает или сокращает его в области просмотра в зависимости от типа устройства, его ориентации и разрешения экрана (в соответствии с данными в формате VV).
[0026] В качестве примера, пользователь может вводить следующие значения для задания отображаемой на экране области: левый запас, правый запас, верхний запас, нижний запас, временной код или номер кадра. Данные VV можно предоставить для любого типа устройства, любого разрешения и/или для вертикального или горизонтального разрешения. Пользователь может использовать программный инструмент для визуального определения отображаемой области.
[0027] В качестве дополнительного примера, пользователь может задавать метку данных VV для определенного кадра, указывающую на то, что этот кадр имеет такие же значения параметров, что и предыдущий. В качестве еще одного примера, данные можно структурировать в любом текстовом формате, например XML, JSON, db и т.д. Данные могут храниться в хранилище любого вида, например в виде метаданных файла, базы данных, файловой системы и т.д. Проигрыватель может воспроизводить видео на любом устройстве, включая мобильные устройства, планшеты, настольные компьютеры и телевизоры.
[0028] В качестве еще одного примера, проигрыватель может определять изменения разрешения в устройстве, переводя экран в вертикальный или горизонтальный режим. В качестве другого примера, проигрыватель может обнаруживать поворот устройства, отображая видео в области просмотра измененного/сокращенного размера, в зависимости от разрешения экрана устройства (вертикального или горизонтального). В качестве другого примера, проигрыватель может увеличивать или уменьшать каждую область обзора или все отображаемое видео измененного размера для подгонки к «полотну» проигрывателя. Сам кадр не изменяется - обычно для получения области обзора используется исходный кадр, при этом края (верхний/нижний или левый/правый) не отображаются.
[0029] Перевод в формат VV можно выполнить без пользовательского ввода. Области можно определять исходя из контекста и различий между кадрами по цветам пикселей и положениям групп пикселей. Фокус кадра можно задавать исходя из наиболее выраженной смены пикселей в кадре. При необходимости форматирование VV можно автоматически менять во время воспроизведения. Пользователь может поворачивать и физически перемещать устройство, чтобы отображаемая область изменялась в указанном направлении, аналогично видео 360°.
[0030] В примере осуществления автор (т.е. пользователь, подготавливающий данные для проигрывателя) запускает редактор (т.е. программу для визуального редактирования данных VV) и отмечает области выбора в каждом кадре для вертикального разрешения. Затем автор загружает видео и данные VV в проигрыватель (т.е. программу для воспроизведения видео, которая может считывать данные VV). Затем пользователь мобильного устройства запускает приложение и использует специальный проигрыватель VV, при повернутом горизонтально устройстве открывает в нем видео и смотрит его с исходным разрешением, например 1024×768 пикселей.
[0031] После загрузки видео проигрыватель проверяет свои данные VV и задает возможные разрешения. Во время воспроизведения пользователь может поворачивать устройство из горизонтального положения в вертикальное. Проигрыватель регистрирует действия пользователей и изменения ориентации устройства и затем проверяет, имеется ли тип вертикального разрешения в данных VV. Если данные VV для устройства вертикального типа (т.е. ориентации экрана) обнаружены, то проигрыватель считывает их и применяет к каждому кадру. Например, кадр 37 имеет следующие параметры в формате VV: левый запас: 220 пикселей, правый запас: 280 пикселей, верхний запас: 4 пикселя, нижний запас: 14 пикселей. Когда проигрыватель считывает кадр 37, он отображает только область 524×750 пикселей с соответствующими границами от краев с исходным разрешением видео, не отображая при этом остальную часть. При отображении увеличенных/уменьшенных кадров в виде областей обзора проигрыватель может увеличивать или уменьшать кадры для подгонки к «полотну» проигрывателя.
[0032] Если следующий кадр, т.е. кадр 38, помечен специальной меткой «prf», то для его отображения будут использоваться те же параметры краев. Если кадр 39 имеет другие значения параметров, то проигрыватель считает их и отобразит другую область. Когда пользователь изменяет ориентацию экрана, проигрыватель VV проверяет наличие заданного разрешения (или ориентации) в данных VV. Если такая информация имеется, то проигрыватель продолжит воспроизведение с использованием этого набора данных; в противном случае он будет воспроизводить видео с исходным разрешением.
[0033] В другом варианте осуществления два видео с разным разрешением можно объединить в рамках «полотна» с одним разрешением. Когда первое видео воспроизводится с первым разрешением (и параметрами области обзора) и устройство поворачивается, второе видео (со своим разрешением и параметрами области обзора) «проматывается» на предварительно определенный промежуток времени от начала (т.е. на длину уже воспроизведенной части первого видео) и воспроизводится с этого момента. При очередном повороте устройства первое видео «проматывается» на соответствующее время (воспроизведенная часть второго видео), и воспроизведение продолжается с этой точки.
[0034] В еще одном варианте осуществления проигрыватель может представлять собой комплект разработчика программного обеспечения, который можно интегрировать в различные среды в виде библиотеки кодов.
[0035] Пример формата VV приведен ниже:
кадра относительно экрана
масштабирование относительно кадра, растянутый по минимальной стороне экрана
кадра относительно положения 0 в градусах
анонимизированное изменение значений на основании действия клавиш, когда изменение является плавным в пределах параметров синхронизации клавиш. Например, во время кадров 40-50 значение будет плавно изменяться с 123 на 111
[0036] Формат VV включает временной код преобразования состояния фокуса, который дается в секундах относительно предыдущего кадра.
[0037] Для каждого состояния кадра (состояние кадра - это набор параметров, которые описывают текущее искажение; например, выше параметры области обзора указаны в состоянии кадра) обычно предоставляются следующие данные:
• Запасы в относительных единицах, где 1 - это ширина или высота полного кадра. Например, Margin.R =. 1 значит, что правый запас равен 0,1* (исходная ширина кадра). Этот параметр является необязательным. Если он отсутствует, то кадр отображается в исходном размере.
• Координаты фокуса, точка фокуса, которая располагается в центре экрана просмотра, когда проигрыватель воспроизводит видео, чтобы обеспечить поддержку одинакового формата на разных экранах. Точка фокуса указывается в абсолютных или относительных параметрах. Например (0.3,0.5) в абсолютном выражении - 30 процентов слева и 50 процентов снизу; если параметр задан в абсолютном выражении, то это значение также может составлять (120pix, 100pix), т.е. точка фокуса находится в 120 пикселях слева и 100 пикселях снизу
Анимация «типа преобразование состояния», описывающая правила преобразования (постепенное смещение, ускорение или быстрое ускорение, постепенное замедление или мгновенное изменение). Анимация описывает преобразование между кадрами (предыдущим и текущим), которое отображается на видео. Анимацию можно представить двумя способами: 1. Рядом параметров, которые необходимо изменить, и единица времени (или номер кадра), в котором требуется применить изменение; 2. Двумя координатами, между которыми возникает движение, алгоритм VV создает промежуточные значения
[0038] На ФИГ. 1 изображена ситуация, в которой пользователь расширил видео для вертикальной подгонки, при этом часть кадра находится за пределами области обзора (изображение слева), и справа, где видео подогнано по горизонтали, но в вертикальном направлении остается черное пространство. На ФИГ. 2 изображен пример разметки для соотношения сторон экрана устройства 18:9. На ФИГ. 3 изображен полный кадр (который должен быть больше разрешения устройства), который отображается в виде области обзора, чтобы вертикальный размер соответствовал устройству, и части области обзора в горизонтальном направлении выходят за пределы устройства. Фокус кадра располагается точно в центре экрана устройства. Контур устройства является приблизительным.
[0039] На ФИГ. 4 изображена блок-схема алгоритма проигрывателя.
[0040] Проигрыватель поддерживает воспроизведение видео по меньшей мере в двух режимах: в режиме 1 кадр подгоняется под экран, т.е. он полностью располагается в пределах экрана, а остальное пространство заполняется черным цветом; в режиме 2 кадр растягивается по его самой длинной стороне, при этом остающиеся за пределами экрана части не отображаются. Возможно задание режима пользователем (нажатие/касание экрана) или принудительное включение для определенного видео.
[0041] Процесс воспроизведения видео:
[0042] На экране пользователя видеокадр растягивается проигрывателем по самой длинной стороне.
[0043] Синхронный алгоритм контролирует преобразование положения.
[0044] Когда во время воспроизведения происходит изменение кадров, видео отображается с невидимыми краями, лежащими за пределами области обзора согласно установленному в разметке соотношению, а затем с использованием точки фокуса результирующий кадр располагается в центре экрана пользователя. Эта точка располагается точно в физическом центре экрана устройства, и кадр совмещается по ней.
[0045] Если в момент преобразования обеспечивается анимация преобразования, значения постепенно изменяются на заданные согласно определенному алгоритму.
[0046] Текущая реализация проигрывателя следующая:
[0047] Видео и звук воспроизводятся посредством потокового полнокадрового видео с сервера. Перед воспроизведением загружается вся разметка и файл фокуса кадров. Синхронный алгоритм контролирует время и выдает инструкции для преобразования. Потоковое воспроизведение видео происходит в стандартном режиме, и одновременно с этим с помощью запроса по http принимается файл 4v с описанием формата, и кроме этого, выполняются все операции согласно алгоритму V.
[0048] Описанные выше концепции также применимы к другим эффектам. Предлагаемый формат поддерживает ряд дополнительных эффектов и позволяет во время воспроизведения видео добавлять слои поверх кадров. Эти эффекты можно применять к видеослою и к звуковой дорожке. Информация об эффектах добавляется в метаданные.
[0049] Так как все эффекты отображаются только в проигрывателе, исходное видео остается без изменений. Для использования этого метода в файл вертикализации добавляются инструкции, содержащие необходимые параметры.
[0050] Метка «эффекты», содержащая массив применяемых эффектов, добавляется в файл метаданных .4v. Каждый эффект в свою очередь имеет собственный набор таких параметров как временной код, тип и т.д.
[0051] Пример части файла вертикализации, содержащего эффекты, приведен ниже:
[0052] Применение эффектов можно рассматривать как работу со слоями. См. ФИГ. 7, на которой изображена концепция слоев. Базовый кадр не показывается, и вместо него зритель видит вертикализированный кадр, рендеринг которого ведется в отдельный слой. Если эффект связан с простым искажением кадра, то он применяется напрямую к слою вертикализированных кадров. Если для эффекта требуются добавочный контент или некоторые изменения отдельного слоя, то создается новый слой, который отображается поверх слоя вертикализированных кадров.
[0053] Ниже приведены эффекты в составе базового проигрывателя. Управляя слоями и наборами параметров, указанными ниже, можно создавать новые эффекты, которые потребуется лишь загружать в проигрыватель и описывать в новой версии данных вертикализации. В результате пользователи смогут создавать поверх видео любые искажения или слои изменений, которые можно просматривать во время воспроизведения, либо в реальном времени манипулировать отображением видеокадров.
1. Хромакей
Этот эффект позволяет добавлять слой с другим видеофоном, например с цветом, неподвижным изображением или другим видео. Другими словами, этот слой является полотном, на котором можно нарисовать что угодно. Он имеет следующие параметры:
[0054] Replace - определение положения пикселя цвета, который будет фоновым цветом, и добавление другого цвета этого пикселя на слой, отображаемый поверх видео; и
[0055] Delta - определение уровня допуска для положения пикселя.
[0056] Для определения содержимого и расположения текстового слоя поверх видео для отображения пользователю замененного выбранного текста используется отдельная метка (IMG = путь к неподвижному изображению; VIDEO = путь к видеофайлу; или COLOR = новый цвет).
2. Звуковые эффекты
[0057] Звуковую дорожку также можно изменить с использованием описанного выше подхода, добавляя дополнительную звуковую дорожку к уже имеющейся. Пользователь может применять эффект к исходной звуковой дорожке или в некоторых случаях заменять ее другой дорожкой. Обычно создается другой звуковой поток (он имеет свои параметры, например громкости и других параметров, и выводится в один из каналов). Имеются следующие иллюстративные звуковые эффекты:
[0058] - ЭФФЕКТ ФИЛЬТРА НИЖНИХ ЧАСТОТ
[0059] Cutoff freq - частота среза фильтра нижних частот, Гц (диапазон от 10,0 до 22000,0, по умолчанию = 5000,0).
[0060] Resonance - добротность резонансной кривой ФНЧ (диапазон от 1,0 до 10,0, по умолчанию = 1,0).
[0061] - ЭФФЕКТ ФИЛЬТРА ВЕРХНИХ ЧАСТОТ
[0062] Cutoff freq - частота среза фильтра верхних частот, Гц (диапазон от 10,0 до 22000,0, по умолчанию = 5000,0).
[0063] Resonance - добротность резонансной кривой ФВЧ (диапазон от 1,0 до 10,0, по умолчанию = 1,0).
[0064] Эти два эффекты представляют собой фильтры нижних и верхних частот соответственно. Их основным параметром является частота среза (cutoff freq) в Гц.
[0065] - ЭФФЕКТ ЭХА
[0066] Добавляет в звуковую дорожку эхо, описываемое следующими параметрами: delay - определяет задержку эха от 10 до 5000 мс; и decay - определяет затухание эха от 0 до 1, где 1 - отсутствие затухания, а 0 - полное затухание. Параметры:
[0067] Delay - задержка эха в мс (от 10 до 5000, по умолчанию = 500).
[0068] Decay - затухание эха с задержкой, от 0 до 100%. 100% = отсутствие затухания, 0% = полное затухание (т.е. простая однолинейная задержка). По умолчанию = 50%
[0069] Max channels - макс, число каналов
[0070] Drymix - громкость передаваемого на выход исходного сигнала, от 0 до 100%. По умолчанию = 100%
[0071] Wetmix - громкость передаваемого на выход эхо-сигнала, от 0 до 100%. По умолчанию = 100%
[0072] - ФЛЭНЖЕР
[0073] Добавление флэнжера, описываемого следующими параметрами: Drymix (проценты исходного звука), Wetmix (проценты флэнжера), и Rate - частота от 0,1 до 20 Гц. Параметры:
[0074] Drymix - проценты передаваемого на выход исходного сигнала, от 0,0 до 100,0%. По умолчанию = 45%
[0075] Wetmix - проценты передаваемого на выход сигнала флэнжера. от 0,0 до 100,0%. По умолчанию = 55%
[0076] Depth - глубина от 0,01 до 1,0. По умолчанию = 1,0.
[0077] Rate - скорость от 0,1 до 20 Гц. По умолчанию = 10 Гц
[0078] - ЭФФЕКТ ИСКАЖЕНИЯ
[0079] Добавляет слой искажения, описываемый параметром Distortion - искажение; от 0 до 1, по умолчанию = 0,5.
[0080] - ВЫСОТА
[0081] Добавляет смещение по высоте звука, которое описывается следующими параметрами: pitch - высота, множитель от 0,5 до 2,0; и FFT size - размер БПФ, от 256,0 до 4096,0.
[0082] Эти эффекты являются примерами тех, которые можно включать в базовый проигрыватель. Лежащая в основе технология также поддерживает другие эффекты, которые можно применять к видео, добавляя их в файл вертикализации. XML.
3. Пропорции кадра
[0083] Кадры можно искажать алгоритмически, при этом слой можно обрезать или изменять его размер в реальном времени на основании заданных параметров. Эти эффекты убираются после завершения видео.
[0084] Параметры этих эффектов имеют следующие аргументы: X и Y, которые определяют положение кадра относительно центра экрана; W и Н, которые определяют ширину и высоту кадра. Также можно добавлять метку CROP, для определения запасов слоя: слева (L), справа (R), сверху (Т) и снизу (В).
4. Сложные кадры
[0085] Для сохранения существенной части кадра его можно разделять на фрагменты, которые отображаются в разных частях экрана, см. 1, 2, 3 на ФИГ. 8. Этот эффект позволяет перевести устройство пользователя в многоэкранный режим, в котором несколько фрагментов исходного кадра отображаются одновременно:
[0086] Например, экран пользователя можно разделять на три части, каждая из которых отображает разный фрагмент исходного кадра.
[0087] Эти части экрана задаются следующими параметрами:
[0088] index - уникальный экранный идентификатор, используемый для сопоставления фрагмента с соответствующей ему частью экрана.
[0089] pos - расположение виртуального экрана на устройстве пользователя, которое определяется относительно фактического размера экрана (т.е. ширина виртуального экрана 0,1 равна 10% фактической ширины экрана устройства).
[0090] size - размер виртуального экрана относительно фактического размера экрана.
[0091] Содержимое экрана задается следующими параметрами:
[0092] Index - ссылка на часть экрана, которая будет показывать фрагмент; pos - начальное положение фрагмента; crop - размер фрагмента.
[0093] Экраны можно накладывать друг на друга, но в этом случае каждый экран будет отображаться согласно своему порядковому номеру, например на экран 1 будет налагаться экран 5.
5. Слои
[0094] Дополнительные слои могут содержать внешний контент, например неподвижные изображения, видео или текст, которые можно использовать для добавления титров или изменения впечатления от просмотра исходного видео за счет добавленных слоев.
[0095] Замена фона
[00104] Применение в проигрывателе дополнительного звука (т.е. воспроизведение звуковых эффектов) (тон, частота)
[00105] Формат вертикализации также может содержать параметры звука.
[00115] Эффект нормализации
[00116] Fade in time - время затухания эффекта в секундах (от 0 до 20000,0, по умолчанию = 5000,0 секунд).
[00117] Lowest volume - наименьшая громкость (от 0,0 до 1,0, по умолчанию = 0,10).
[00118] Maximum amp - максимальное усиление (от 20,0 до 100000,0, по умолчанию = 20 х).
[00119] Эффект параметрического эквалайзера
[00120] Center freq - частота в Гц, на которой применяется усиление (диапазон от 20,0 до 22000,0, по умолчанию = 8000,0 Гц).
[00121] Octave Range - число октав, в которых применяется усиление (с центром в центральной частоте) (от 0,20 до 5,00, по умолчанию = 1,0 октава).
[00122] Frequency Gain - применяемое усиление (от 0,05 до 3,00, по умолчанию = 1,00 - без усиления).
[00123] Эффект сдвига по высоте
[00124] Pitch - множитель высоты (от 0,5 × до 2,0 ×, по умолчанию 1,0 ×).
[00125] FFT Size - размер БПФ (от 256,0 до 4096,0, по умолчанию = 1024,0).
[00126] Overlap - перекрытие (от 1 до 32, по умолчанию = 4).
[00127] Max channels - максимальное число каналов (от 0 до 16, по умолчанию = 0 каналов).
[00128] Пропорции кадра (обрезка, изменение размера)
[00129] В реальном времени кадр может выглядеть искаженным за счет изменения (например обрезки) вертикализированного слоя кадра в соответствии с параметрами выбранного эффекта.
Сложный кадр
[00141] Эффект сложного кадра можно использовать для вертикализации с целью отображения нескольких частей одного кадра или разных кадров одновременно. Например, диалог между двумя персонажами можно показать на одном экране, при этом одна часть кадра отображается в верхней половине экрана, а другая часть кадра - в нижней половине экрана.
[00157] Разрезание или склейка частей фильма: показ в реальном времени лишь некоторых частей видеокадров с использованием эффекта обрезки:
Дополнительный слой/маска
[00165] На видео можно наложить дополнительные слои контента, которые могут полностью перекрывать вертикализированное видео.
[00166] Дополнительные слои могут представлять собой видеопотоки и неподвижные изображения. Неподвижные изображения могут иметь альфа-канал. Видеопотоки могут иметь фон с маской или цветом.
[00167] Формат вертикализации вместе с временными кодами слоев может содержать их описания.
[00194] ФИГ. 5 - это блок-схема примера мобильного устройства 59, в котором можно использовать изобретение. Например, мобильным устройством 59 может быть личный цифровой ассистент, сотовый телефон, сетевое устройство, камера, смартфон, мобильный телефон с улучшенной общей службой пакетной радиопередачи (EGPRS), сетевая базовая станция, медиаплеер, устройство навигации, устройство электронной почты, игровая приставка или сочетание двух и более из таких или других устройств обработки данных.
[00195] В некоторых вариантах реализации мобильное устройство 59 имеет сенсорный экран 73. Сенсорный экран 73 может использовать технологию жидкокристаллического дисплея (ЖКД), дисплея на светоизлучающих полимерах (LPD) или другую технологию. Сенсорный экран 73 может реагировать на тактильный контакт с пользователем.
[00196] В некоторых вариантах реализации сенсорный экран 73 может включать мультисенсорный экран 73. Мультисенсорный экран 73 может, к примеру, обрабатывать несколько одновременных касаний, включая обработку данных, связанных с давлением, степенью и/или положением каждой точки касания. Такая обработка способствует взаимодействию с устройством посредством нескольких пальцев, аккордовых команд и других видов взаимодействия. Также можно использовать другие технологии сенсорного экрана, например экран, в котором контакт осуществляется при помощи стилуса или другого средства.
[00197] В некоторых вариантах реализации мобильное устройство 59 может отображать один или несколько графических пользовательских интерфейсов 73 для предоставления пользователю доступа к разным объектам системы и для передачи информации пользователю. В некоторых вариантах реализации графический пользовательский интерфейс может включать один или несколько отображающих объектов 74, 76. В приведенном примере объекты 74, 76 экрана являются графическим представлением объектов системы. Некоторые примеры объектов системы включают функции устройства, приложения, окна, файлы, предупреждения, события и другие идентифицируемые объекты системы.
[00198] В некоторых вариантах реализации мобильное устройство 59 может осуществлять функции нескольких устройств, например телефонного устройства, указанного в виде телефонного объекта 91; устройства электронной почты, указанного в виде объекта 92 электронной почты; устройства сетевой передачи данных, указанного в виде веб-объекта 93; устройства базовой станции Wi-Fi (не изображено); и устройства обработки медиа, указанного в виде объекта 94 медиаплеера. В некоторых вариантах реализации определенные объекты 74 экрана, например телефонный объект 91, объект 92 электронной почты, веб-объект 93 и объект 94 медиаплеера, могут отображаться в строке 95 меню. В некоторых вариантах реализации доступ к функциям устройства может осуществляться из графического пользовательского интерфейса верхнего уровня, например из интерфейса, изображенного на фигуре. При касании одного из объектов 91, 92, 93 или 94 может включаться соответствующая функция.
[00199] В некоторых вариантах реализации мобильное устройство 59 может осуществлять сетевое распределение. Например, эта функциональность позволяет пользователю использовать мобильное устройство 59 и его смежную сеть во время движения. В частности, мобильное устройство 59 может предоставлять доступ в Интернет (например Wi-Fi) другим беспроводным устройствам, находящимся поблизости. Например, мобильное устройство 59 может быть настроено в качестве базовой станции для одного или нескольких устройств. Поэтому мобильное устройство 59 может предоставлять сетевой доступ другим беспроводным устройствам или отказывать в доступе.
[00200] В некоторых вариантах реализации при вызове функции устройства графический пользовательский интерфейс мобильного устройство 59 изменяется, увеличивается или заменяется другим пользовательским интерфейсом или элементами пользовательского интерфейса для упрощения доступа пользователя к определенным функциям, связанным с соответствующим функционалом устройства. Например, в ответ на касание пользователем телефонного объекта 91 графический пользовательский интерфейс сенсорного экрана 73 может отображать объекты, связанные с различными функциями телефона; аналогично при касании объекта 92 электронной почты графический пользовательский интерфейс может отображать объекты, связанные с различными функциями электронной почты; при касании веб-объекта 93 графический пользовательский интерфейс может отображать объекты, связанные с различными функциями веб-навигации; при касании объекта 94 мультиплеера пользовательский интерфейс может отображать объекты, связанные с различными функциями обработки медиа.
[00201] В некоторых вариантах реализации изобретения в среду или состояние графического пользовательского интерфейса верхнего уровня можно вернуться, нажав на кнопку 96, расположенную рядом с нижней частью мобильного устройства 59. В некоторых вариантах реализации изобретения каждая из соответствующих функциональностей устройства может иметь соответствующие «исходные» объекты экрана, которые показаны на сенсорном экране 73, и восстановление среды графического пользовательского интерфейса возможно нажатием на «исходный» объект экрана.
[00202] В некоторых вариантах реализации изобретения графический пользовательский интерфейс верхнего уровня может включать дополнительные объекты 76 экрана, например, объект службы коротких сообщений (SMS), объект календаря, объект камеры, объект калькулятора, объект акций, объект погоды, объект карт, объект заметок, объект часов, объект адресной книги, объект настроек и объект 97 магазина приложений. Например, при касании объекта отображения SMS может открыться среда передачи SMS с соответствующими функциями; аналогично при выборе объекта отображения может открываться соответствующая среда или функциональность объекта.
[00203] В графическом пользовательском интерфейсе также можно отображать дополнительные и/или другие объекты экрана. Например, если устройство 59 работает в качестве базовой станции для других устройств, то в графическом пользовательском интерфейсе могут появляться один или несколько объектов «соединение», указывая на наличие связи. В некоторых вариантах реализации изобретения возможна пользовательская настройка отображаемых на экране объектов 76, например можно задавать отображаемые на экране объекты 76, а также возможна загрузка дополнительных приложений или другого программного обеспечения, предоставляющего другие функции и соответствующие объекты экрана.
[00204] В некоторых вариантах реализации изобретения мобильное устройство 59 может включать одно или несколько устройств ввода/вывода и/или датчики. Например, громкоговоритель 60 и микрофон 62 можно использовать для содействия функциональностям с голосовой активацией, например функциям телефона и голосовой почты. В некоторых вариантах реализации изобретения можно предусматривать кнопку 84 вверх/вниз для регулировки громкости громкоговорителя 60 и микрофона 62. Мобильное устройство 59 также может иметь кнопку 82 включения/выключения для звукового индикатора входящих телефонных вызовов. В некоторых вариантах реализации изобретения для разговора по громкой связи, например для выполнения функций громкой связи, можно предусматривать громкоговоритель 64. Также можно предусматривать гнездо 66 для наушников и/или микрофона.
[00205] В некоторых вариантах реализации изобретения можно предусматривать бесконтактный датчик 68 для обнаружения приближения мобильного устройства 59 к уху пользователя и последующего отключения сенсорного экрана 73 для предотвращения случайных вызовов функций. В некоторых вариантах реализации изобретения сенсорный экран 73 можно для дополнительной экономии энергии отключать, когда мобильное устройство 59 располагается рядом с ухом пользователя.
[00206] Также можно использовать другие датчики. Например, в некоторых вариантах реализации датчик 70 внешней освещенности можно использовать для регулировки яркости сенсорного экрана 73. В некоторых вариантах реализации изобретения можно использовать датчик 72 ускорения, чтобы определять движение мобильного устройства 59, которое указано стрелками направления. Соответственно, объекты экрана и/или медиа можно отображать согласно определенной датчиком ориентации, например вертикальной или горизонтальной. В некоторых вариантах реализации изобретения мобильное устройство 59 может иметь цепи или датчики для определения местоположения, например в системе глобального позиционирования (GPS) или других (например, системы с использованием точек Wi-Fi-доступа, телевизионных сигналов, сотовых сетей, унифицированных указателей ресурсов (URL)). В некоторых вариантах реализации изобретения систему позиционирования (например приемник GPS) можно интегрировать в мобильное устройство 59 или предоставлять в качестве отдельного устройства, которое можно связывать с мобильным устройством 59 через интерфейс (например порт 90), чтобы открывать доступ к службам на основе местоположения.
[00207] Мобильное устройство 59 также может иметь объектив камеры и датчик 80. В некоторых вариантах реализации изобретения объектив камеры и датчик 80 можно располагать на задней поверхности мобильного устройства 59. Камера может снимать неподвижные изображения и/или видео.
[00208] Мобильное устройство 59 также может иметь одну или несколько подсистем беспроводной связи, например, устройство 86 связи 802.11b/g и/или устройство 88 связи BLUETOOTH. Также можно поддерживать другие протоколы связи, включая протоколы связи 802.x (например, WiMax, Wi-Fi, 3G, LTE), многостанционный доступ с кодовым разделением (CDMA), глобальную систему мобильных коммуникаций (GSM), улучшенный GSM для передачи данных (EDGE) и т.д.
[00209] В некоторых вариантах реализации изобретения используется порт 90, например порт универсальной последовательной шины (USB), порт для подключения к ПК или другое портовое проводное соединение. Например, порт 90 можно использовать для установления проводной связи с другими вычислительными устройствами, например устройствами связи 59, устройствами сетевого доступа, персональным компьютером, принтером или другими устройствами обработки, которые могут принимать и/или передавать данные. В некоторых вариантах реализации изобретения порт 90 позволяет синхронизировать мобильное устройство 59 с хост-устройством посредством одного или нескольких протоколов, например TCP/IP, HTTP, UDP или другого известного протокола. В других вариантах реализации изобретения можно использовать протокол TCP/IP по USB.
[00210] ФИГ. 6 - блок-схема 2200 примера реализации мобильного устройства 59. В состав мобильного устройства 59 может входить интерфейс 2202 памяти, один или несколько процессоров данных, процессоры изображений и/или центральные блоки 2204 обработки и периферийный интерфейс 2206. Интерфейс 2202 памяти, один или несколько процессоров 2204 и/или периферийный интерфейс 2206 могут быть отдельными компонентами или встроенными в одну или нескольких интегрированных цепей. Различные компоненты в мобильном устройстве 59 можно соединять посредством одной или нескольких шин связи или сигнальных линий.
[00211] Датчики, устройства и подсистемы для осуществления различных функциональностей можно соединять по интерфейсу периферийных устройств 2206. Например, датчик 2210 движения датчик 2212 света и бесконтактный датчик 2214 для осуществления описанных выше функций ориентации, освещения и приближения можно соединять по интерфейсу периферийных устройств 2206. К интерфейсу периферийных устройств 2206 также можно подключать другие датчики 2216, например системы позиционирования (приемник GPS), датчик температуры, биометрический датчик или другой первичный преобразователь, для осуществления соответствующих функциональностей.
[00212] Подсистема 2220 камеры и оптический датчик 2222, например прибор с зарядовой связью (ПЗС) или оптический датчик с комплементарным металлооксидным полупроводником (КМОП) можно использоваться для выполнения таких функций камеры как съемка фото или видеоклипов.
[00213] Функции связи можно выполнять посредством одной или нескольких беспроводных систем 2224, в состав которых могут входить радиочастотные приемники и передатчики и/или оптические (например, инфракрасные) приемники и передатчики. Особая конструкция и реализация подсистемы 2224 связи может зависеть от сетей связи, в которых предполагается работа мобильного устройства 59. Например, мобильное устройство 59 может включать подсистемы 2224 связи, предназначенные для работы в сети GSM, сети GPRS, сети EDGE, сети Wi-Fi или WiMax, сети BLUETOOTH. В частности, подсистемы 2224 беспроводной связи могут включать протоколы хостинга, благодаря которым устройство 59 можно настроить в виде базовой станции для других беспроводных устройств.
[00214] Подсистему 2226 звука можно связывать с громкоговорителем 2228 и микрофоном 2230 для содействия функциональностям с голосовой активацией, например распознаванием голоса, голосовыми ответами, цифровой записью и функциям телефонии.
[00215] Подсистема 2240 ввода/вывода может включать сенсорный контроллер 2242 и/или другие входные контроллеры 2244. Сенсорный контроллер 2242 можно подключать к сенсорному экрану 2246. Сенсорный экран 2246 и сенсорный контроллер 2242 могут, например, обнаруживать контакт и движение или их прекращение при помощи нескольких сенсорных технологий, включая, помимо прочего, емкостные, резистивные, инфракрасные и ПАВ-технологии, а также массивы других бесконтактных датчиков или другие элементы для определения одной или нескольких точек контакта с сенсорным экраном 2246.
[00216] Другие контроллеры ввода 2244 можно подключать к другим устройствам 2248 ввода/управления, например, к одной или нескольким кнопкам, тумблерам, колесику с накаткой, инфракрасному порту, порту USB и/или указателю, например, к стилусу. В состав одной или нескольких кнопок (не изображены) можно включить кнопку вверх/вниз для регулирования громкоговорителя 2228 и/или микрофона 2230.
[00217] В одном варианте реализации изобретения нажатие кнопки в течение одного периода времени снимает блокировку сенсорного экрана 2246; а нажатием кнопки в течение другого периода времени, превышающего первое нажатие, можно включать или выключать мобильное устройство 59. Пользователь может настраивать функции одной или нескольких кнопок. Сенсорный экран 2246 также можно использовать для виртуальных или сенсорных кнопок и/или клавиатуры.
[00218] В некоторых вариантах реализации изобретения мобильное устройство 59 может представлять записанные аудио или видеофайлы, например файлы МР3, ААС и MPEG. В других вариантах реализации изобретения мобильное устройство 59 может иметь функцию МР3-плеера. Поэтому мобильное устройство 59 может иметь 32-контактный соединитель, совместимый с МР3-плеером. Также можно использовать другие устройства ввода/вывода и управления.
[00219] Интерфейс памяти 2202 можно связать с памятью 2250. Память 2250 может включать высокоскоростную оперативную память и/или энергонезависимую память, например одно или несколько устройств хранения на магнитном диске, одно или несколько оптических устройств хранения и/или флэш-память (например NAND, NOR). Память 2250 может хранить операционную систему 2252, например Darwin, RTXC, LINUX, UNIX, OS X, ANDROID, IOS, WINDOWS или встроенную операционную систему, например VxWorks. Операционная система 2252 может содержать инструкции для работы с базовыми службами системы и выполнения задач, зависимых от аппаратного обеспечения. В некоторых вариантах реализации изобретения операционная система 2252 может быть ядром (например ядро UNIX).
[00220] Память 2250 также может хранить инструкции связи 2254 для осуществления связи с одним или несколькими дополнительными устройствами, одним или несколькими компьютерами и/или одним или несколькими серверами. Память 2250 может содержать инструкции 2256 графическому пользовательскому интерфейсу для осуществления обработки данных графического пользовательского интерфейса, включая представление, навигацию и выбор в магазине приложений; инструкции 2258 для осуществления обработки данных датчиков и выполнения их функций; инструкции 2260 для обработки данных и выполнения функций телефона; инструкции 2262 для осуществления процессов и функций, связанных с электронными сообщениями; инструкции 2264 для осуществления процессов и функций, связанных с веб-браузером; инструкции 2266 для осуществления процессов и функций, связанных с обработкой данных медиа; инструкции 2268 для осуществления процессов и инструкций, связанных с GPS и навигацией; инструкции 2270 камере для выполнения связанных с ней процессов и функций; и/или другие инструкции 2272 к ПО для выполнения других процессов и функций.
[00221] Все указанные выше инструкции и приложения могут соответствовать набору инструкций для выполнения одной или нескольких описанных выше функций. Эти инструкции не требуется внедрять в виде отдельных программ, процедур или модулей. Память 2250 может содержать дополнительные инструкции или немногочисленные инструкции. Кроме того, различные функции мобильного устройства 59 можно реализовать в аппаратном и/или программном обеспечении, включая одну или несколько обработок сигналов и/или встроенные цепи специальных приложений.
[00222] Из приведенного описания предпочтительной реализации изобретения специалистам в этой области должно быть очевидно, что описанные способ и устройство обладают рядом преимуществ.
[00223] Также должно быть понятно, что в рамках объема и сущности настоящего изобретения возможны различные модификации, адаптации и альтернативные варианты реализации изобретения. Изобретение определяется формулой, приведенной далее.