The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"Раздел полезных советов: Организация вещания потокового Flas..."
Отправлено auto_tips, 31-Дек-09 17:05 
ffserver идёт в комплекте с ffmpeg и выполняет роль медиа-сервера - получает видеопоток от ffmpeg, который может быть запущен на другой машине, и раздаёт его пользователям.

Каждый получаемый поток называется Feed-ом (далее будет просто фид). Таких потоков может быть несколько, так же как и отдаваемых (выходных). FFmpeg у нас будет захватывать видео с веб-камеры или читать из файла.

Сначала настроим ffserver, правим /etc/ffserver.conf:

   Port 8090
   BindAddress 0.0.0.0
   MaxClients 100
   MaxBandwidth 20000
   NoDaemon
  
   # Фид, надо запомнить feed.ffm, он нам потребуется при запуске ffmpeg
   <Feed feed.ffm>
      File /tmp/feed.ffm
      FileMaxSize 3M
   </Feed>
   <Stream test.flv>
      # Ранее объявленный фид
      Feed feed.ffm
      Format flv
      VideoCodec flv
      VideoFrameRate 30
      VideoBufferSize 80000
      VideoBitRate 200
      # Качество видео от 1 до 31, 1 == отлично 31 == фи!
      VideoQMin 1
      VideoQMax 5
      # Разрешение, везде должно быть одинаково!
      VideoSize 352x288
      PreRoll 1
      # Если у вас есть микрофон, или вы транслируете видео со звуком, закомментируйте эту строчку
      Noaudio
   </Stream>
  
   # Флешка test.swf для просмотра трансляции
   <Stream test.swf>
      Feed feed.ffm
      # Будет запускаться в Adobe Flash Player
      Format swf
      VideoCodec flv
      VideoFrameRate 30
      VideoBufferSize 50000
      VideoBitRate 100
      VideoQMin 1
      VideoQMax 5
      # Разрешение, везде должно быть одинаково!
      VideoSize 352x288
      PreRoll
      # Если у вас есть микрофон, или вы транслируете видео со звуком, закомментируйте эту строчку
      46. Noaudio
   </Stream>

Запускаем ffserver:

   $ ffserver

Запускаем ffmpeg:

   $ ffmpeg -s 352x288 -r 30 -f video4linux2 -i /dev/video0 http://localhost:8090/feed.ffm

-s разрешение, указанное в конфурации ffserver,
-r количество кадров/секунду,
-f формат,
-i путь к камере (или к видео-файлу),
http://localhost:PORT/FEED - это адрес, где ffserver будет ждать наш поток

PS: если выдаст ошибку, то можно попробовать формат v4l (-f video4linux)

Открываем в браузере http://localhost:8090/test.swf


Для отправки видео поменяем параметр -i на путь к файлу, уберём -f (ffmpeg сам определит формат файла):

   $ ffmpeg -s 352x288 -r 30 -i ~/big_buck_bunny.ogg http://localhost:8090/feed.ffm

Ну а что бы вставить нашу флешку в html-страницу используем следующий код:

   <embed src="http://localhost:8090/test.swf" width="550" height="400"></embed>


URL: http://wiz.su/2009/12/20/potokovoe-video-sredstvami-ffserver.../
Обсуждается: http://www.opennet.ru/tips/info/2252.shtml

 

Ваше сообщение
Имя*:
EMail:
Для отправки ответов на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру