Как разместить сайт в хостинге видео

В этой статье мы поговорим о том, как вставить видео на сайт и научимся:

  1. Размещать свои файлы на видео хостингах и отображать их на сайте.
  2. Загружать видео на свой хостинг и отображать их на сайте с помощью плеера.

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

  1. Первым делом Вам необходимо войти в свой аккаунт YouTube.
  2. Нажмите кнопку Добавить видео в верхней части страницы.
  3. Выберите ролик для загрузки. (Учитывайте, что видео не должно нарушать авторские права. Если Вы хотите наложить на видео известную музыку, то придется ее купить).
  4. Пока файл загружается заполните основную информацию о ролике и при необходимости дополнительные параметры.
  5. Чтобы добавить видео на YouTube, нажмите Опубликовать.
  6. Пока вы не нажмете кнопку Опубликовать, видео доступно только вам.

С более подробной инструкцией по загрузке видео на Youtube можете ознакомиться на странице supporta

Чтобы вставить уже загруженное (имеющееся) на Youtube видео:

  1. Откройте интересующее Вас видео на Youtube;
  2. Нажмите на находящуюся под видео кнопку «Поделиться»;
  3. Выберите вкладку «HTML» и скопируйте появившийся код; (Чтобы скопировать код быстрее: нажмите правой кнопкой мыши по видео и выберите пункт «Копировать HTML-код.)
  4. Вставьте скопированный код в нужную часть сайта.
  5. Сохраните изменения и обновите страницу.
  1. Откройте понравившееся на Vimeo Вам видео;
  2. Нажмите на находящуюся под видео кнопку «Share»;
  3. В появившимся окошке в пункте «Embed» скопируйте код;
  4. Вставьте скопированный код в нужную часть сайта.
  5. Сохраните изменения и обновите страницу.
  1. Откройте нужное на RuTube Вам видео;
  2. Нажмите на находящуюся под видео кнопку «поделиться»;
  3. Выберите вкладку «Код вставки»
  4. Скопируйте появившийся код;
  5. Вставьте скопированный код в нужную часть сайта.
  6. Сохраните изменения и обновите страницу.
  1. Откройте видео; (Возможно понадобится авторизация).
  2. Нажмите на находящуюся под видео кнопку «Еще»;
  3. Выберите вкладку «Экспортировать» в появившемся окне «Код для вставки» скопируйте появившийся код;
  4. Вставьте скопированный код в нужную часть сайта.
  5. Сохраните изменения и обновите страницу.

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

Теперь рассмотрим варианты воспроизведения видео с загруженным видео на свой сервер.

Для этого способа Вам понадобится тег video

  1. Загружаем на сервер видео;
  2. Копируем вышеуказанный код;
  3. Вставляем в нужную нам часть сайта скопированный код;
  4. Изменяем URL на путь к файлу который мы разместили на хостинге
  5. Сохраняем изменения и обновляем страницу.

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

В первую очередь хотелось бы сказать о таких атрибутах как height (высота), width (ширина).

С их помощью вы можете настроить высоту и ширину области для воспроизведения видеоролика.

  • src — это самый важный атрибут, он указывает путь к видеоролику.
  • autoplay — воспроизведение видео сразу после загрузки страницы.
  • loop — повтор воспроизведения видео по завершению
  • poster — указывает адрес картинки, которая будет отображаться, пока видео не доступно или не воспроизводится.
  • preload — загрузка видео вместе с загрузкой веб-страницы.

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

  1. Скачайте плеер, а затем его разархивируйте;
  2. Создайте папку и поместите в нее файлы из архива;
  3. Подключите javascript-файл плеера к html-файлу. Для этого внутри тега head, пропишите следующий код:

По материалам mmechta.ru

Что делать, если возникла необходимость добавить поддержку размещения и просмотра видео на сайте? Существует великое множество способов — и в данной статье я постараюсь наиболее полно рассмотреть популярные сервисы видеохостинга, а заодно порекомендовать некоторые модули для CMS Drupal.

В начале пару слов о типичной организации процессов сохранения и воспроизведения видео. В целях экономии пространства загружаемое пользователем видео конвертируется в один из распространенных форматов для передачи видео по сети. Самым популярным форматом для получения роликов с невысоким качеством картинки и очень небольшим размером выходного файла в настоящий момент является flv (flash video), который использует кодек H.263. В случае, если необходимо получить видео более высокого качества, то ролики конвертируются в какой-либо формат, поддерживающий кодек H.264.

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

На этом закруглимся с теорией и приступим к рассмотрению возможных схем.

Проще всего взвалить заботу по загрузке видеороликов на сторонние сервисы, такие как YouTube, Blip.TV или Revver. Денег платить не надо, пространство на вашем хостинге не задействовано, транслирование контента пользователю вашего сайта происходит через распределенную сеть серверов, принадлежащих видеохостингу, а это значит, что:
1) Ваш исходящий трафик не расходуется.
2) Видеоролики имеют высокую степень доступности пользователям из любой точки мира.
Но такие ресурсы могут иметь ряд ограничений или запретов, особенно касающихся использования данного сервиса коммерческими сайтами — так что внимательно читайте пользовательские соглашения, прежде чем реализовывать данную схему.
Выглядит она следующим образом: пользователь загружает ролик на стороннем сервисе и копирует ссылку на него, после чего сохраняет ее на вашем сайте, где она преобразуется при просмотре в соответствующее видео.
Для проигрывания роликов могу посоветовать модуль Embedded Media Field, который в данный момент поддерживает воспроизведение видеороликов с почти двух десятков видеохостингов и агрегаторов.
Из минусов данной схемы можно отметить то, что пользователю для загрузки видео придется покинуть ваш сайт, он не сможет выбрать качество конвертации, внешний вид плеера будет статичен или ограничен несколькими вариантами, тоже самое можно сказать про его функциональность. Также опционально поверх ролика может быть наложено лого сервиса, до или после отображена реклама и т.д.
В общем, вариант из разряда «дешево и сердито», крайне скудный в плане конфигурирования.

В этом случае пользователи загружает видео на сторонний сервис непосредственно с вашего сайта, при этом ролики обычно размещаются под единственным аккаунтом. Место на хостинге может использоваться для временного сохранения видео до момента последующего трансфера на выбранный сервис, или не использоваться вовсе.
В качестве примера — модуль Video Upload для YouTube.
Стоит отметить, что многие сервисы бесплатно предоставляют API под подобные задачи или даже полноценные сайты-заготовки, например в рамках партнерских программ.
При этом АPI обычно пишется для многих языков программирования, и почти всегда присутствует Javascript API, благодаря чему такую схему можно очень просто воплотить в жизнь. Исходя из личного опыта, могу сказать, что PHP API, предоставляемое [http://rutube.ru/ Rutube], с минимальными усилиями по переделке интегрируется с Drupal.

А теперь пришло время рассмотреть компании, специализирующиеся на создании любых мыслимых сервисов, так или иначе связанных с видео и интернетом. Такие компании называются видео провайдерами (video provider), и используют собственные сети доставки контента (CDN — content delivery network). Для работы с ними необходимо создать аккаунт, стоимость которого зависит от используемого спектра услуг, объемов загружаемого и транслируемого видео, желаемой функциональности, уровня технической поддержки, объемов работ по внедрению или переходу на данную платформу, необходимому API и пр. Зачастую вместо конкретных цен на сайте видео провайдера можно обнаружить предложение написать письмо или позвонить — в этом случае готовьтесь, что цены на услуги будут начинаться с нескольких сотен долларов в месяц.
Итак, что же можно получить за порой немаленькую сумму денег?
1) Изменение внешнего вида флеш плеера под ваш дизайн и функционал, создание виджетов.
2) Декодирование в любой нужный вам формат, в том числе и .
3) Предоставление необходимых инструментов для массовой загрузки видеороликов, отчетности и аналитики.
4) Создание собственного интернет-телеканала.
5) Редактирование видеороликов онлайн, микширование.
6) Загрузка контента пользователей, удобное управление их аккаунтами и правами.
7) Внедрение рекламы, участие в рекламных сетях.
И это далеко не полный список, который варьируется от провайдера к провайдеру, среди которых: brightcove, viddler, ooyala, thePlatform, Onstream media, magnify.net, iPlayerHD, fliqz, Kaltura (модуль для Drupal — http://drupal.org/project/kaltura/).

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

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

Первое, о чем стоит задуматься, создавая собственный видеохостинг — это о том, где же будут храниться видеоролики. В случае, если вы решите размещать их у себя на хостинге, стоит озаботиться подбором подходящего выделенного сервера. Альтернативным вариантом является размещение контента на сторонних серверах, например в рамках Amazon Simple Storage Service (Amazon s3) — такая возможность также присутствует в FlashVideo.

Модуль FlashVideo позволяет конвертировать добавляемые в аттачменты видеоролики в нужный формат (по умолчанию во флеш — .flv) для указанных типов нод. Данный модуль имеет множество настроек, которые позволяют детально сконфигурировать процесс перекодирования и отображения видеоматериала.

Для работы модуля необходима программа ffmpeg, которая позволяет конвертировать видео из одного формата в другой. Соответственно, ваш хостер должен предоставлять такую возможность.
К слову, поддержка ffmpeg — далеко не редкость, так что с этим не должно возникнуть проблем. Как установить ffmpeg на локальной windows-машине, использующей Denwer, можно в частности прочитать тут.

Далее, для корректной работы модуля вам необходимо поменять настройки ряда php параметров:

  • upload_max_filesize — задает максимальный размер загружаемого файла;
  • post_max_size — определяет максимальный размер POST`а, который должен быть больше либо равен upload_max_filesize;
  • max_execution_time — устанавливает максимальное количество секунд, которое может исполнятся скрипт. Данный параметр должен обеспечивать достаточное количество времени для конвертации больших файлов.
  • max_input_time — максимальное количество секунд, в течении которых скрипт может считывать входящие данные. Слишком маленькое выставленное время приведет к тайм-ауту больших по весу загрузок.

Автор модуля рекомендует выставить следующие значения (либо в php.ini, либо в корневом .htaccess файле):

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

Для воспроизведения видеороликов вам потребуется флэш плеер, например протестированные в работе с FlashVideo плееры Dash Media Player или JW Player.
Прочитать краткий обзор ряда плееров можно тут. Для примера воспользуем JW Player.
В случае, если на вашем сайте включен public режим доступа к файлам, будет достаточно поместить файлы плеера в Output Directory.
Если же включен private режим, то вам будет необходимо создать запись до файла плеера в таблице files либо вручную, либо, например, загрузив файлы плеера при сохранении какой-либо ноды (если директория
для файлов совпадает с Output Directory). Не забудьте поменять Flash Player Name на правильный.

Итак, пришло время создать ноду типа video. Загрузите видеоролик и разместите в описании тег [ video ]
Если после ее сохранения, вы видите, как в выбранном плеере воспроизводится ваш ролик, позвольте поздравить вас с победой!
Если же нет, то проверьте таблицу ffmpeg_data — если там есть записи, попытайтесь вручную запустить ffmpeg с указанными параметрами и посмотрите сообщения об ошибках. Также, если вы не включали конвертацию сразу же после загрузки и у вас не настроен или еще не запускался крон, стоит запустить его вручную.
Если записей об ошибках нет, но не видно плеера, то стоит проверить все ли его файлы вы скопировали в Output Directory, есть ли запись в БД в случае private метода загрузки файла и правильно ли указано имя плеера в Flash Player Name.

Статья автора модуля про FlashVideo (содержит раздел о проблемах) — http://www.travistidwell.com/flashvideo.

Забавно, но в корневом модуле Upload невозможно ограничить количество файлов для загрузки в аттачменты.
Допустим, мы хотим, чтобы пользователь мог загружать только один видеофайл для каждой ноды — довольно логично, неправда ли? Можно было бы воспользоваться модулем FileField, но вот вопрос — как заставить работать их в одной связке с FlashVideo? Дело в том, что FlashVideo ролик может быть засабмитен только через Upload аттачмент, но не через FileField. Соотвественно необходимо это как-то исправить.
Самым правильным способом, конечно же, было бы переделать модуль FlashVideo и добиться коммита в CVS проекта.
Однако, когда я столкнулся с подобной проблемой я был очень ограничен по времени, так что у меня родилось следующее решение:
1. Устанавливаем модуль FileField.
2. Добавляем в тип ноды video поле типа file (машинное имя — upload_video) и прописываем разрешенные для загрузки типы файлов.
2. Создаем собственный модуль (назовем его fff) и помещаем в него следующий код:

function fff_form_alter ( $form_id , & $form )
<
//если тип ноды video
if ( $form_id == ‘video_node_form’ )
<
//убираем аттачменты
unset ( $form [ ‘attachments’ ] ) ;
//меняем функцию сабмита формы
unset ( $form [ ‘#submit’ ] [ ‘node_form_submit’ ] ) ;
$form [ ‘#submit’ ] [ ‘fff_redirect_submit’ ] = array ( ) ;
$form [ «#submit» ] [ ‘fff_redirect_submit’ ] [ «#title» ] = ‘Save’ ;
>

//конвертируем объект в массив
function object_2_array ( $data )
<
if ( is_array ( $data ) || is_object ( $data ) )
<
$result = array ( ) ;
foreach ( $data as $key => $value )
<
$result [ $key ] = object_2_array ( $value ) ;
>
return $result ;
>
return $data ;
>

function fff_redirect_submit ( $form_id , $form_values )
<
//смотрим если есть старые файлы и помечаем
//их для удаления
if ( count ( $form_values [ ‘field_upload_video’ ] ) == 2 )
<
$node = new stdClass ( ) ;
$node -> vid = $form_values [ ‘vid’ ] ;
$files = upload_load ( $node ) ;
$form_values [ ‘files’ ] = array ( ) ;
foreach ( $files as $file )
<
$file = object_2_array ( $file ) ;
$file [ ‘remove’ ] = 1 ;
unset ( $file [ ‘vid’ ] ) ;
$form_values [ ‘files’ ] [ $file [ ‘fid’ ] ] = $file ;
>
>
//сабмитим ноду дефолтным методом
$node_url = node_form_submit ( $form_id , $form_values ) ;
//переходим на страницу сабмиченной ноды
return $node_url ;
>

function fff_nodeapi ( & $node , $op , $a3 = NULL , $a4 = NULL )
<
if ( $node -> type == ‘video’ )
<
switch ( $op )
<
//обрабатываем edit
case ‘prepare’ :
if ( ! $node -> files )
<
break ;
>
$videofile ;
foreach ( $node -> files as $file )
<
if ( $file -> filemime == ‘flv-application/octet-stream’ )
<
$videofile = $file ;
>
>
if ( ! $videofile )
<
break ;
>
//переделываем структуру аттачмента в FileField
$node -> field_upload_video = array ( 0 => array (
‘fid’ => $videofile -> fid ,
‘description’ => $videofile -> description ,
‘list’ => 1 ,
‘nid’ => $videofile -> nid ,
‘filename’ => $videofile -> filename ,
‘filepath’ => $videofile -> filepath ,
‘filemime’ => $videofile -> filemime ,
‘filesize’ => $videofile -> filesize
) ) ;

В результате структура FileField подменяется на структуру аттачмента и, вуаля — все работает так как нам надо!
Из недостатков данного решения можно отметить то, что в базе остается неиспользуемое поле аттачментов.

По материалам housecomputer.ru