Difference between revisions of "GenReS(плагин)"

From ElphelWiki
Jump to: navigation, search
(Callback функции)
(Back-end программы)
Line 42: Line 42:
 
;onframe:при очередном кадре
 
;onframe:при очередном кадре
 
;onmousedown и др стандартные  callback функции:уже предоставлены браузером и не нуждаются в какой-то обработке внутри плагина
 
;onmousedown и др стандартные  callback функции:уже предоставлены браузером и не нуждаются в какой-то обработке внутри плагина
 +
 +
== Back-end программы ==
 +
 +
В настоящий момент задействованы:
 +
 +
    * mplayer (компилировать с live555)
 +
    * mencoder из пакета mplayer
 +
    * ElphelOgm - для получения mjpeg видео по чистому multicast или unicast rtp.
 +
 +
Чтобы задействовать ElphelOgm, должен быть установлен mime-type начинающийся с video/m
 +
и URL должен быть вида: rtp://ip:port/ , где:
 +
 +
ip -
 +
    multicast ip потока
 +
port -
 +
    multicast port
 +
 +
Unicast тоже можно ринимать, для этого указывается адрес и порт получателя, и сервер также должен быть сконфигурирован чтобы постоянно слать
 +
udp видеопоток на этот адрес и порт. Динамическое изменение URL не поддерживается для RTP.
 +
Вместо этого используёте последоавтельность команд: obj.run=0; obj.src=...; obj.run=1;
 +
 +
== Диагностика ошибок установки ==

Revision as of 14:28, 11 February 2006

in English | autotranslate | по-русски | 中文版

Cтатические параметры тегов

lowres 
параметр прореживания для ускоренного DCT [0-3], 0-полное разрешение, 3-1/8
width 
ширина окна
loop 
повтор проигрывания (0 или не указано - бесконечно)
fps 
частота кадров

Динамически изменяемые переменные (можно указывать и как параметры тегов)

href 
url файла или потока
src 
пока просто другое имя для href
pause=1 или play=0 
приостановить проигрывание
pause=0 или play=1 
продолжить проигрывание
run=1 
запустить плеер если он прекратил работу (по ошибке или концу файла)
run=0 
завершить плеер
save 
запустить mencoder вместо mplayer
save=ask 
всегда спрашивать имя файла для записи
save=auto 
не спрашивать если пользователь укажет в диалоге

Переменные статуса

Это то что выдаёт mplayer или mencoder, в настоящий момент стороки просто разделяются на две части по первому из символов '=' или ':'. То что слева - имя переменной (пробелы и нелатинские буквы удаляются), справа - значение.

frame 
сообщение плеера/рекордера о последнем кадре
error 
последнее сообщение об ошибке

Возможны другие но они пока не используются.

run 
особая переменная - состояние плеера 0 - незапущен, 1 - запущен;
pause, play 
аналогично - состояние приостановки проигрывания.

Callback функции

По приходу данных от плеера они передаются в переменные объекта и становятся доступны из javascript. При этом если задана соответствующая функция с именем "on<имя переменной>", она будет вызвана.

onrun
вызывается по запуску и остановке видеоплеера или процесса записи
onerror
по приходу сообщения об ошибке
onframe
при очередном кадре
onmousedown и др стандартные callback функции
уже предоставлены браузером и не нуждаются в какой-то обработке внутри плагина

Back-end программы

В настоящий момент задействованы:

   * mplayer (компилировать с live555)
   * mencoder из пакета mplayer
   * ElphelOgm - для получения mjpeg видео по чистому multicast или unicast rtp. 

Чтобы задействовать ElphelOgm, должен быть установлен mime-type начинающийся с video/m и URL должен быть вида: rtp://ip:port/ , где:

ip -

   multicast ip потока

port -

   multicast port 

Unicast тоже можно ринимать, для этого указывается адрес и порт получателя, и сервер также должен быть сконфигурирован чтобы постоянно слать udp видеопоток на этот адрес и порт. Динамическое изменение URL не поддерживается для RTP. Вместо этого используёте последоавтельность команд: obj.run=0; obj.src=...; obj.run=1;

Диагностика ошибок установки