Difference between revisions of "Video API Extensions legacy"

From ElphelWiki
Jump to: navigation, search
 
(19 intermediate revisions by 7 users not shown)
Line 1: Line 1:
{{ru=Video_API_Extensions.Ru|en=Video_API_Extensions|cn=Video_API_Extensions.cn}}
+
{{Manual legacy_pages}}
  
Given realization of Video API has a number of opportunities which are absent in standard Axis Video API.
+
{{en|ru=Video_API_Extensions.Ru|cn=Video_API_Extensions.cn}}
  
 +
The current implementation of the [[Video API]] has a number of features which are absent from the [[AxisAPI|standard Axis Video API]].
  
== Extensions enabling ==
+
 
By default the Video API extensions are blocked. For unblocking it is necessary to establish a corresponding variable:
+
== Enabling extensions ==
 +
By default the Video API extensions are blocked. To unblock them it is necessary to set a corresponding variable:
 
  <nowiki>http://192.168.0.9/axis-cgi/admin/param.cgi?action=update&ElphelExtensions.Enabled=yes</nowiki>
 
  <nowiki>http://192.168.0.9/axis-cgi/admin/param.cgi?action=update&ElphelExtensions.Enabled=yes</nowiki>
  
  
== Obtaining of static and dynamic images ==
+
== Obtaining static and dynamic images ==
The standard interface for the static and dynamic images obtaining in JPEG and MJPEG formats is have a few additional parameters.
+
The standard interface for obtaining static and dynamic images in JPEG and MJPG formats has a few additional parameters.
  
 
{| border="0" cellpadding="2"
 
{| border="0" cellpadding="2"
 
|-
 
|-
|e_dcm_hor ||-|| horisontal decimation (resolution/image size reduction)
+
|e_dcm_hor ||-|| horizontal decimation (resolution/image size reduction)
 
|-
 
|-
 
|e_dcm_vert ||-|| vertical decimation (resolution/image size reduction)
 
|e_dcm_vert ||-|| vertical decimation (resolution/image size reduction)
Line 38: Line 40:
 
|e_flipv ||-|| flip (mirror) image vertically (uses in-sensor capabilities)
 
|e_flipv ||-|| flip (mirror) image vertically (uses in-sensor capabilities)
 
|-
 
|-
|e_color ||-|| consider sensor to be the color one, if not - skip Bayer color filters processing
+
|e_exp_time ||-|| exposure time (0.1 msec step)
 +
|-
 +
|e_gamma ||-|| gamma correction value (%)
 +
|-
 +
|e_pixel_low ||-|| black level
 +
|-
 +
|e_pixel_high ||-|| white level
 +
|-
 +
|e_saturation_blue ||-|| color Saturation (%), Blue
 +
|-
 +
|e_saturation_red ||-|| color Saturation (%), Red
 +
|-
 +
|e_gain_r ||-|| analog gain RED (or mono)
 +
|-
 +
|e_gain_g ||-|| analog gain GREEN (or green in "red" line)
 +
|-
 +
|e_gain_b ||-|| analog gain BLUE
 +
|-
 +
|e_gain_gb ||-||  analog gain GREEN in "blue" line)
 +
|-
 +
|e_spec_kac_gga ||-|| Kodak KAC1310 analog gain Y (all colors)
 
|-
 
|-
|e_quality ||-|| JPEG Quality (%)
+
|e_spec_kac_ggb ||-|| Kodak KAC1310 analog gain ? (all colors)
 
|-
 
|-
 +
|e_spec_kac_ggm ||-|| Kodak KAC1310 mode
 +
|
 
|}
 
|}
  
 
=== Examples ===
 
=== Examples ===
Example of the static image obtaining with using the next parameters:
+
Example of obtaining a static image - use the following parameters:
 
  <nowiki>http://192.168.0.9/axis-cgi/jpg/image.cgi?e_dcm_hor=2&e_dcm_vert=2&e_woi_width=1000&e_woi_height=900&e_woi_left=600</nowiki>
 
  <nowiki>http://192.168.0.9/axis-cgi/jpg/image.cgi?e_dcm_hor=2&e_dcm_vert=2&e_woi_width=1000&e_woi_height=900&e_woi_left=600</nowiki>
  
Example of the dynamic image (MJPEG) obtaining with using the next parameters:
+
Example of obtaining a dynamic image (MPJPG) - use the following parameters:
  
 
  <nowiki>http://192.168.0.9/axis-cgi/mjpg/video.cgi?e_dcm_hor=2&e_dcm_vert=2&e_woi_width=1000&e_woi_height=900&e_woi_left=600</nowiki>
 
  <nowiki>http://192.168.0.9/axis-cgi/mjpg/video.cgi?e_dcm_hor=2&e_dcm_vert=2&e_woi_width=1000&e_woi_height=900&e_woi_left=600</nowiki>
  
You can play this videostream, for example, by using the MPlayer (more detailed description see at [[Using Mplayer With Video API.Ru]]):
+
You can play this videostream, for example, by using MPlayer (for a more detailed description see [[Using Mplayer With Video API]]):
  
 
  <nowiki>$mplayer -demuxer lavf "http://192.168.0.9/axis-cgi/mjpg/video.cgi?e_dcm_hor=2&e_dcm_vert=2&e_woi_width=1000&e_woi_height=900&e_woi_left=600&bogus.mjpg"</nowiki>
 
  <nowiki>$mplayer -demuxer lavf "http://192.168.0.9/axis-cgi/mjpg/video.cgi?e_dcm_hor=2&e_dcm_vert=2&e_woi_width=1000&e_woi_height=900&e_woi_left=600&bogus.mjpg"</nowiki>
  
If any from parameters is not specified, the default values are used. You can find these values at the address:
+
If any of the parameters are not specified, the default values are used. You can find these values at the address:
 
  <nowiki>http://192.168.0.9/axis-cgi/admin/param.cgi?action=list&group=ImageSource.I0.Sensor</nowiki>
 
  <nowiki>http://192.168.0.9/axis-cgi/admin/param.cgi?action=list&group=ImageSource.I0.Sensor</nowiki>
 
'''Note''': All API extensions have the prefix "E_".
 
'''Note''': All API extensions have the prefix "E_".
  
You can change the default value by standard way for Axis Video API. For example:
+
You can change the default value in the standard way for the Axis Video API. For example:
 
  <nowiki>http://192.168.0.9/axis-cgi/admin/param.cgi?action=update&ImageSource.I0.Sensor.E_DcmHor=1</nowiki>
 
  <nowiki>http://192.168.0.9/axis-cgi/admin/param.cgi?action=update&ImageSource.I0.Sensor.E_DcmHor=1</nowiki>
  
== Obtaining the information about the system condition and default values ==
+
== Obtaining information about the system status and default values ==
For obtaining the information about the system condition variable you must use the next path:
+
To obtain information about the system status variable you must use the following path:
 
  <nowiki>http://192.168.0.9/axis-cgi/admin/param.cgi?action=list&group=ImageSource.I0.E_CurrentState</nowiki>
 
  <nowiki>http://192.168.0.9/axis-cgi/admin/param.cgi?action=list&group=ImageSource.I0.E_CurrentState</nowiki>
  
In an addition to the obtaining of the standard "'''rfc'''" format there is the obtaining in XML format also. You must use the '''responseformat''' parameter for it. For example:
+
In an addition to the standard "'''rfc'''" format there is also the possibility to use XML format. You must use the '''responseformat''' parameter for this. For example:
 
  <nowiki>http://192.168.0.9/axis-cgi/admin/param.cgi?action=list&group=ImageSource.I0.E_CurrentState&responseformat=xml</nowiki>
 
  <nowiki>http://192.168.0.9/axis-cgi/admin/param.cgi?action=list&group=ImageSource.I0.E_CurrentState&responseformat=xml</nowiki>
'''Note'''. If the responseformat not specified or specified incorrect, will be used the default value of '''"rfc".'''
+
'''Note'''. If the responseformat is not specified or specified incorrectly, the default value of '''"rfc" will be used.'''
  
  
== Video streaming RTP/MJPG and RTP/Theora ==
+
== Video streaming: RTP/MJPG and RTP/Theora ==
 
The Elphel cameras can transfer the video stream by RTP protocol.
 
The Elphel cameras can transfer the video stream by RTP protocol.
 
=== RTP/MJPG ===
 
=== RTP/MJPG ===
Line 79: Line 103:
  
 
== Exposure control ==
 
== Exposure control ==
The Elphel cameras support the standard and advanced exposure control interface. About the standard settings see [[First_Acquaintance_With_Video_API.Ru]]
+
The Elphel cameras support the standard and advanced exposure control interface. For the standard settings see [[Video_API]]
  
For autoexposure enabling is necessary to use the following command:
+
To enable autoexposure it is necessary to use the following command:
  
 
  <nowiki>http://192.168.0.9/axis-cgi/admin/param.cgi?action=update&ImageSource.I0.Sensor.Exposure=auto</nowiki>
 
  <nowiki>http://192.168.0.9/axis-cgi/admin/param.cgi?action=update&ImageSource.I0.Sensor.Exposure=auto</nowiki>
Line 92: Line 116:
  
 
Window settings:
 
Window settings:
  <nowiki>http://192.168.0.9/axis-cgi/admin/param.cgi?action=update&ImageSource.I0.Sensor.E_Exposure.E_WinWidth=30&ImageSource.I0.Sensor.E_Exposure.E_WinHeight=45&ImageSource.I0.Sensor.E_Exposure.E_WinLeft=10&ImageSource.I0.Sensor.E_Exposure.E_WinTop=20</nowiki>
+
  <nowiki>http://192.168.0.9/axis-cgi/admin/param.cgi?action=update&ImageSource.I0.Sensor.E_Exposure.WinWidth=30&ImageSource.I0.Sensor.E_Exposure.WinHeight=45&ImageSource.I0.Sensor.E_Exposure.WinLeft=10&ImageSource.I0.Sensor.E_Exposure.WinTop=20</nowiki>
  
 
Exposure max.values:
 
Exposure max.values:
  <nowiki>http://192.168.0.9/axis-cgi/admin/param.cgi?action=update&ImageSource.I0.Sensor.E_Exposure.E_Max=3000&ImageSource.I0.Sensor.E_Exposure.E_OverMax=30</nowiki>
+
  <nowiki>http://192.168.0.9/axis-cgi/admin/param.cgi?action=update&ImageSource.I0.Sensor.MaxExposureTime=3000&ImageSource.I0.Sensor.E_Exposure.OverMax=30</nowiki>

Latest revision as of 15:43, 24 August 2008

This is a legacy page. The information bellow is not compatible with Elphel 393 or 353/363 series cameras.

in English | [[{{{de}}}|deutsch]] | [[{{{fr}}}|français]] | по-русски | автоперевод | 中文版 | 机械翻译


The current implementation of the Video API has a number of features which are absent from the standard Axis Video API.


Enabling extensions

By default the Video API extensions are blocked. To unblock them it is necessary to set a corresponding variable:

http://192.168.0.9/axis-cgi/admin/param.cgi?action=update&ElphelExtensions.Enabled=yes


Obtaining static and dynamic images

The standard interface for obtaining static and dynamic images in JPEG and MJPG formats has a few additional parameters.

e_dcm_hor - horizontal decimation (resolution/image size reduction)
e_dcm_vert - vertical decimation (resolution/image size reduction)
e_bin_hor - horizontal binning (sensitivity for lower resolution)
e_bin_vert - vertical binning (sensitivity for lower resolution)
e_woi_width - sensor active window width (before decimation)
e_woi_height - sensor active window height (before decimation)
e_woi_left - sensor active window left margin (before decimation)
e_woi_top - sensor active window top margin (before decimation)
e_virt_width - virtual frame width
e_virt_height - virtual frame height
e_fliph - flip (mirror) image horizontally (uses in-sensor capabilities)
e_flipv - flip (mirror) image vertically (uses in-sensor capabilities)
e_exp_time - exposure time (0.1 msec step)
e_gamma - gamma correction value (%)
e_pixel_low - black level
e_pixel_high - white level
e_saturation_blue - color Saturation (%), Blue
e_saturation_red - color Saturation (%), Red
e_gain_r - analog gain RED (or mono)
e_gain_g - analog gain GREEN (or green in "red" line)
e_gain_b - analog gain BLUE
e_gain_gb - analog gain GREEN in "blue" line)
e_spec_kac_gga - Kodak KAC1310 analog gain Y (all colors)
e_spec_kac_ggb - Kodak KAC1310 analog gain ? (all colors)
e_spec_kac_ggm - Kodak KAC1310 mode

Examples

Example of obtaining a static image - use the following parameters:

http://192.168.0.9/axis-cgi/jpg/image.cgi?e_dcm_hor=2&e_dcm_vert=2&e_woi_width=1000&e_woi_height=900&e_woi_left=600

Example of obtaining a dynamic image (MPJPG) - use the following parameters:

http://192.168.0.9/axis-cgi/mjpg/video.cgi?e_dcm_hor=2&e_dcm_vert=2&e_woi_width=1000&e_woi_height=900&e_woi_left=600

You can play this videostream, for example, by using MPlayer (for a more detailed description see Using Mplayer With Video API):

$mplayer -demuxer lavf "http://192.168.0.9/axis-cgi/mjpg/video.cgi?e_dcm_hor=2&e_dcm_vert=2&e_woi_width=1000&e_woi_height=900&e_woi_left=600&bogus.mjpg"

If any of the parameters are not specified, the default values are used. You can find these values at the address:

http://192.168.0.9/axis-cgi/admin/param.cgi?action=list&group=ImageSource.I0.Sensor

Note: All API extensions have the prefix "E_".

You can change the default value in the standard way for the Axis Video API. For example:

http://192.168.0.9/axis-cgi/admin/param.cgi?action=update&ImageSource.I0.Sensor.E_DcmHor=1

Obtaining information about the system status and default values

To obtain information about the system status variable you must use the following path:

http://192.168.0.9/axis-cgi/admin/param.cgi?action=list&group=ImageSource.I0.E_CurrentState

In an addition to the standard "rfc" format there is also the possibility to use XML format. You must use the responseformat parameter for this. For example:

http://192.168.0.9/axis-cgi/admin/param.cgi?action=list&group=ImageSource.I0.E_CurrentState&responseformat=xml

Note. If the responseformat is not specified or specified incorrectly, the default value of "rfc" will be used.


Video streaming: RTP/MJPG and RTP/Theora

The Elphel cameras can transfer the video stream by RTP protocol.

RTP/MJPG

RTP/Theora

Exposure control

The Elphel cameras support the standard and advanced exposure control interface. For the standard settings see Video_API

To enable autoexposure it is necessary to use the following command:

http://192.168.0.9/axis-cgi/admin/param.cgi?action=update&ImageSource.I0.Sensor.Exposure=auto

Enabling the manual control of exposure:

http://192.168.0.9/axis-cgi/admin/param.cgi?action=update&ImageSource.I0.Sensor.Exposure=manual

Obtaining the exposure state:

http://192.168.0.9/axis-cgi/admin/param.cgi?action=list&group=ImageSource.I0.E_CurrentState.E_Exposure

Window settings:

http://192.168.0.9/axis-cgi/admin/param.cgi?action=update&ImageSource.I0.Sensor.E_Exposure.WinWidth=30&ImageSource.I0.Sensor.E_Exposure.WinHeight=45&ImageSource.I0.Sensor.E_Exposure.WinLeft=10&ImageSource.I0.Sensor.E_Exposure.WinTop=20

Exposure max.values:

http://192.168.0.9/axis-cgi/admin/param.cgi?action=update&ImageSource.I0.Sensor.MaxExposureTime=3000&ImageSource.I0.Sensor.E_Exposure.OverMax=30