Лабораторная работа Использование Windows Azure для потокового вещания с поддержкой Smooth Streaming



Дата29.11.2016
Размер1.87 Mb.
Просмотров284
Скачиваний1
ТипЛабораторная работа

PBC304ILL

Лабораторная работа

Использование Windows Azure для потокового вещания с поддержкой Smooth Streaming

Технические основы

Введение


Microsoft Live Smooth Streaming – технология адаптивной передачи видео широкому кругу клиентов, включая устройства с операционной системой Apple iOS. Один из вопросов, который часто интересует наших партнёров и заказчиков: Может ли помочь Windows Azure в этой области?

В настоящее время Windows Azure не обладает поддержкой «из коробки» IIS Media Services, требуемой для протокола Live Smooth Streaming. К счастью, существует отличное простое решение этой проблемы, которое полностью соответствует принципам бизнес модели Platform-as-a-Services .

Эта лабораторная работа под руководством инструктора позволит Вам пройти все этапы использования заранее подготовленного проекта Visual Studio для создания проекта видео трансляции, готового для настройки под нужды заказчиков. После выполнения данной лабораторной работы, Вы сможете скомпилировать и продемонстрировать этот проект любому заинтересованному клиенту или партнёру.

Инструкции и код проекта находятся в открытом доступе, по ссылке: http://azlivestreaming.codeplex.com/

Решение Windows Azure Live Streaming позволяет быстро развёртывать масштабируемые сервисы для трансляции живого видео с помощью Windows Azure Web Roles.

Исходный код решения доступен для скачивания по ссылке: http://azlivestreaming.codeplex.com

Высокоуровневая Архитектура представлена на следующей диаграмме:


Upstream Server (пример: upstream.cloudapp.net)


Единственный экземпляр Веб-роли с точкой публикации Push . URL этой точки публикации используется программой Expression Encoder для отправки видеопотока события в режиме реального времени.

Важно: для обеспечения резервирования (избыточности) для точки Push, можно развернуть еще одну дополнительную Web role на разных DNS. Развёртывание Azure Staging так же подойдет.

Upstream Server может быть использован в качестве сервера потокового вещания при развертываниях в малых масштабах. В этом случае URL проигрывателя будет следующим: http://upstream.cloudapp.net/push.isml/manifest.

Downstream Server (пример: downstream.cloudapp.net)


Web role с несколькими экземплярами (instance) с точкой публикации Pull. URL для этих точек публикаций может быть, например, таким - http://downstream.cloudapp.net/pull.isml/manifest.

IIS Media Services 4


IIS Media Services 4 автоматически устанавливаются и конфигурируются с помощью Web role startup tasks и Web Administration API.

Publishing Points


Решение содержит две предопределенных точки публикации:

Push.isml – для получения видеопотока от кодирующего устройства

Pull.isml – для извлечения видеопотока из Upstream Server

Каждый isml файл разворачивается как часть обычной процедуры развёртывания Windows Azure через портал управления или из среды Visual Studio IDE.

Важно: Конфигурация точек публикаций Push/Pull может быть выполнена просто за счёт редактирования файлов isml (XML) в среде Visual Studio, либо в любом другом текстовом редакторе.

Проигрыватель Silverlight


В решении используется пример проигрывателя Silverlight , взятый с сайта iis.net/media, ссылка: http://learn.iis.net/page.aspx/620/getting-started-with-iis-live-smooth-streaming/

Введение

Предполагаемое время выполнения лабораторной работы


60 минут – Наиболее вероятное полное время выполнения лабораторной работы.

Цели

Изучить, как можно построить и развернуть комплексное решение Live Smooth Streaming, используя Windows Azure Web-roles, Visual Studio 2010 SP1, Expression Encoder Pro 4 SP1 и Silverlight проигрыватель.

Обзор лабораторной работы


Во время выполнения этой лабораторной будут пройдены все этапы, необходимые для развёртывания рабочего Live Smooth Streaming решения на Windows Azure, изучен кода решения воспроизведена фактическая видео трансляция.

Функциональные возможности финального решения:

- Кодирование и захват кода видео в реальном времени

- Отправка видеопотока на Windows Azure

- Воспроизведение видео в реальном времени из Windows Azure, используя проигрыватель Silverlight

- Веб-портал на Windows Azure, показывающий конфигурацию Media Services

В рамках этой лабораторной работы вы также узнаете, как можно развернуть пакеты msi и сконфигурировать IIS в Windows Azure Web roles программным путём.

Подробная информация по проекту и инструкции находятся в открытом доступе по ссылке: http://azlivestreaming.codeplex.com/


Технология виртуальной машины


Компьютеры в данной лабораторной работе представлены виртуальными машинами, функционирующими на основе технологии Microsoft Hyper-V. Перед запуском каждой виртуальной машины, убедитесь, что вы применили snapshot Start-Lab. После запуска виртуальной машины, зарегистрируйтесь, используя клавиши CTRL+ALT+END и введя данные Вашей учётной записи, указанные в инструкциях к лабораторной работе.

Компьютеры в этой лабораторной работе


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

Virtual Machine

Role



Developer Workstation, Windows Server 2008 R2

Все аккаунты пользователей в этой лабораторной используют пароль pass@word1

Задание 1: Изучение исходного кода решения


Основная часть решения – проект в среде Visual Studio 2010 SP1, используемый для развёртывания необходимых компонентов Windows Azure Web roles.

Задание – Открытие среды Visual Studio и запуск проекта


Начните это задание, зарегистрировавшись в <lab machine> под учетной записью Administrator используя пароль pass@word1, если потребуется

  1. Откройте Windows Explorer, перейдите в директорию C:\Lab\End сделайте двойной клик мышью по файлу MediaServices.sln в этой директории.

1.На Вашем экране должна запуститься среда Visual Studio и Вы увидите подобное окно:

c:\users\dmitrim.europe\desktop\_mesh\_blog & articles\live streaming\01_solution.png

MediaPortal должен быть установлен в качестве Стартового проекта. Если это не так, щёлкните правой кнопкой мыши на MediaPortal и выберите Set as Startup Project в контекстном меню

Если не отображается Solution Explorer – перейдите в раздел меню View и выберите Solution Explorer.

2.Нажмите клавишу F5. В браузере должно открыться следующее окно (фактический URL может отличаться):



c:\users\dmitrim.europe\desktop\_mesh\_blog & articles\live streaming\3_localportal.png

Портал показывает рекомендуемую конфигурацию решения и актуальные настройки из Media Services: URLs и иерархия объектов точек публикации Push и Pull.

3.Закройте браузер и вернитесь в Visual Studio.

Конфигурация Publishing Points


В этой лабораторной работе мы используем только точку публикации Push .

Решение содержит два предопределённых точки публикации, как показано ниже:



c:\users\dmitrim.europe\desktop\_mesh\_blog & articles\live streaming\04_pubpoints.png

Файл Push.isml не содержит никаких внешних ссылок и может быть оставлен таким, какой есть.

Файл Pull.isml должен быть отредактирован. Необходимо включить ссылку на Upstream Server. Выполните двойной щелчок по файлу pull.isml и отредактируйте элемент smil/body/switch/ref , как показано ниже:

c:\users\dmitrim.europe\desktop\_mesh\_blog & articles\live streaming\05_pull.png

Атрибут src элемента должен включать в себя URL или точку публикации Push на Upstream Server, такую как http://upstream.cloudapp.net/push.isml. Для этого задания лабораторной работы можно оставить значение src в неизменном виде.


Media Services


  1. Проект содержит файл IISMedia64.msi. Щелкните по нему правой кнопкой мыши и проверьте свойства. Этот компонент будет развернут на Windows Azure без изменений.

Startup Tasks (Стартовые задачи)


  1. Startup Task в ServiceDefinition.csdef используется для запуска startup.cmd. Щёлкните два раза кнопкой мыши ServiceDefinition.csdef и посмотрите значение элемента .

  2. Щёлкните два раза кнопкой мыши startup.cmd и посмотрите, как файл msi будет развёрнут на стадии инициализации Веб роли.

Конфигурация IIS в Azure Web Role


  1. Media Services требуют дополнительной конфигурации после инсталляции для работы должным образом. Эти шаги исполняются кодом в папке Services. Щёлкните два раза кнопкой мыши на файле Services/InitService.cs и изучите код.

  2. В основном код изменяет настройки пула приложений IIS, который используется Media Services.

Количество экземпляров Web role


Количество копий конфигурируется посредством диалога в Visual Studio (Щёлкните два раза кнопкой мыши на WindowsAzureProject1/Roles/MediaPortal) или в файле ServiceConfiguration.cscfg:







<Instances count="1" />











Важно: Необходимо сконфигурировать только 1 экземпляр Upstream server. Сконфигурируйте более 1 экземпляра Downstream server. В этой лабораторной не используются Downstream servers с балансировкой нагрузки.

ServiceDefinition.csdef


Убедитесь, что Веб роли запускаются в привилегированном (elevated) контексте безопасности (необходимо для надлежащей конфигурации IIS Media Services):







<Runtime executionContext="elevated">Runtime>






























Проигрыватель


Веб-портал в решении включает проигрыватель Live Smooth Streaming (Views/Home/Play.cshtml), который использует следующий тег :


http://upstream.cloudapp.net/push.isml/manifest"/>





get microsoft silverlight





InitParams должен содержать параметр mediaurl, указывающий либо на push точку Upstream serverа в случае развертывания на одном сервере либо на либо точку pull на Downstream server.

  • Пример Upstream: http://upstream.cloudapp.net/push.isml/manifest

  • Пример Downstream: http://downstream.cloudapp.net/push.isml/manifest

Фрагмент HTML кода выше может быть вставлен в тег



Поделитесь с Вашими друзьями:


База данных защищена авторским правом ©nethash.ru 2019
обратиться к администрации

войти | регистрация
    Главная страница


загрузить материал