API CONTROL logoMV4 IP Multiviewer
User Manual

MV4 IP Multiviewer

The MV4 IP Multiviewer is capable of being controlled from a variety of third-party manufacturers, supported systems include Crestron, Extron, AMX, RTI, QSC and  Symterix. The API is a human readable key value pair accessible via, HTTP GET/POST, UDP unicast, and UDP multicast. Please note that although most of the HTTP examples below are shown as GET for simplicity, use of POST for HTTP API is recommended. UDP API is more efficient if your control system supports it.
When using the API, it is important to keep in mind that all changes are volatile. This means that without a save, changes will be lost upon reboot!
All commands start with CMD=START and end with CMD=END to allow multiple key value pairs per command sequence. All keys and values are case sensitive.

Architecture:

Key Value System Port/IP Address Notes
HTTP Port 80
UDP Socket Port 8000 Will listen on unicast and multicast
Multicast Address 226.0.0.19
HTTP GET Port 80 Queries
HTTP POST Port 80 Set values
& Separates Key Value Pairs
= Separates Keys and Values
CM D=START Start of all commands
CMD=END End of all commands

HTTP GET:
Require authentication (Default: username=admin, password=admin)
Example Query http://admin:admin@192.168.8.101/cgibin/wapi.cgi?CMD=START&QUERY.ALL=TRUE&CMD=END
HTTP POST:
Example: Set decoder to connect to the encoder at 192.168.8.101 and display the stream

  1. URL: http://192.168.8.101/cgi-bin/wapi.cgi
  2. Request Header: “Content-Type”, “application/x-www-form-urlencoded”
  3. Request Header: “Authorization”, “Basic “ + Base64EncodedString(“admin:admin”) this evaluates to “Basic YWRtaW46YWRtaW4=”
  4. Post Data: “CMD=START&UNIT.ID=ALL&STREAM.HOST=192.168.8.101&STREAM.CONNECT=TRUE&CMD=END” Example: Flash Unit LEDs

GET: http://admin:admin@192.168.8.101/cgi-bin/wapi.cgi?CMD=START&UNIT.ID=ALL&UNIT.FU=TRUE&CMD=END
POST:

  1. http://192.168.8.101/cgi-bin/wapi.cgi
  2. Request Header: “Content-type”, “application/x-www-form-urlencoded”
  3. Request Header: “Authorization”, “Basic “ + Base64EncodedString(“admin:admin”) this evaluates to Basic YWRtaW46YWRtaW4=
  4. POST Data: “CMD=START&UNIT.ID=ALL&UNIT.FU=TRUE&CMD=END
Key Default Value Values Applies To: Notes
AUDIO.MUTE FALSE TRUE, FALSE DECODER Mute/Unmute the audio in the HDMI output for monitors  where the volume may get inadvertently set.
AUDIO.VOLUME 80 0-100 DECODER Set the analog volume. For  ncoders it sets the input volume, for Decoders, the output volume.
MV.BORDER_OFF None {CHX|MODE} ENCODER Used to turn boarder off, per channel.
CHX= {1, 2, 3, 4, ALL} MODE= {FULL, QUAD, POP, PIP, ALL}
MV.BORDER_ON None {CHX|MODE} ENCODER Used to turn boarder on, per  channel.
CHX= {1, 2, 3, 4, ALL}  MODE= {FULL, QUAD, POP, PIP, ALL}
MV.BUTTON None UP, DOWN, ENTER, BACK, RES, INFO, AUDIO, MODE ENCODER Used to emulate the front panel buttons of the MV4.
MV.CUSTOM_MOV None {RES|CHX|HS|VS} ENCODER Only available in Custom Mode. Used to set the custom position of a channel.
RES={4k,1080p} CHX= 4k:1,2 or 1080p:1,2,3,4} HS=Horz start, VS=Vert start
MV.CUSTOM_POS None {RES|CHX|HS|VS|HW|VW} ENCODER Only available in Custom Mode.  Used to set the custom size and  position of a channel.
RES={4k,1080p} CHX={4k:1,2 or
1080p:1,2,3,4}
HS=Horz start, VS=Vert start, HW=Horz Size, VW=Vert Size
MV.RESOLUTION 1080 4K, 1080 ENCODER Used to set the MV4 encoder/HDMI output  resolution.
MV.FDEFAULT None TRUE ENCODER Used to perform factory default.
MV.HRESET None TRUE ENCODER Used to reset/reboot the MV4.
STREAM.AUDIO DECODER_1 DECODER_1, DECODER_2, DECODER_3, DECODER_4 ENCODER Used to select which decoder audio is being sent with AV stream/HDMI output being  transmitted by the MV4 encoder.
STREAM.HOST None Any valid Unicast IP Address of an ENCODER DECODER IP address of the encoder that the decoder is tuned in to.
STREAM.MODE multicast multicast, unicast ENCODER Changes steam mode between multicast and unicast.
STREAM.VIDEO QUAD DECODER_1, DECODER_2, DECODER_3,

DECODER_4, QUAD, PIP,

POP

ENCODER Used to set the mode of the AV stream/HDMI output being transmitted by the MV4 encoder.
VIDEO.GENLOCK False True, False DECODER Allows the decoder output to free run and not be genlocked to the source encoder. Useful for some projectors that cannot accommodate wide clock range. Should be set to TRUE for video wall setups.
VIDEO.HDCP_FORCE_ON TRUE for D4X00 TRUE, FALSE DECODER This determines whether a unit forces HDCP for all
FALSE for E4X00 sources or sinks (TRUE) or allows non- ncrypted to go through natively (FALSE). When FALSE switching can be slow if you need to renegotiate the HDMI link.
VIDEO.INFO_TEXT TRUE TRUE, FALSE DECODER Enables (TRUE) or Disables (FALSE) the  showing of IP addresses and connection  information on the splash screen
VIDEO.OSD_TEXT NONE Text to be displayed on OSD DECODER Can be used to put user text onto the screen as an overlay.
VIDEO.FORMAT SOURCE Source, (Codes from Video Format Table below) DECODER This value controls the output scaling of the decoder. See Table 1 for Values to Codes
VIDEO.OUTPUT NORMAL NORMAL, OFF, STANDBY, LOGO DECODER OFF is HDMI output disabled. STANDBY is HDMI output blank screen. LOGO is HDMI output of splash screen. NORMAL is normal operation
VIDEO.POWER_SAVE FALSE TRUE, FALSE DECODER After VIDEO.SOURCE_TIMEOUT when there is no IP Video Stream detected, TRUE sets HDMI output to off, FALSE sets output to display the splash screen
VIDEO.SOURCE_TIMEOUT TRUE TRUE, FALSE DECODER When set to TRUE, decoder output will switch to off or splash screen depending upon setting of VIDEO.POWER_SAVE
when there is no IP Video Stream detected

Example: Set MV4 to quad mode, displaying all 4 sources simultaneously
GET: http://admin:admin@192.168.8.101/cgi-bin/wapi.cgi?CMD=START&UNIT.ID=ALL&STREAM.VIDEO=QUAD&CMD=END
POST:

  1. http://192.168.8.101/cgi-bin/wapi.cgi
  2. Request Header: “Content-type”, “application/x-www-form-urlencoded”
  3. Request Header: “Authorization”, “Basic “ + Base64EncodedString(“admin:admin”) this evaluates to Basic YWRtaW46YWRtaW4=
  4. POST Data: “CMD=START&UNIT.ID=ALL&STREAM.VIDEO=QUAD&CMD=END

Example: Set MV4 to display decoder 1 only
GET: http://admin:admin@192.168.8.101/cgi-bin/wapi.cgi?CMD=START&UNIT.ID=ALL&STREAM.VIDEO=DECODER_1&CMD=END
POST:

  1. http://192.168.8.101/cgi-bin/wapi.cgi
  2. Request Header: “Content-type”, “application/x-www-form-urlencoded”
  3. Request Header: “Authorization”, “Basic “ + Base64EncodedString(“admin:admin”) this evaluates to Basic YWRtaW46YWRtaW4=
  4. POST Data: “CMD=START&UNIT.ID=ALL&STREAM.VIDEO=DECODER_1&CMD=END

Example: Emulate pressing the MV4 front panel Mode button to change the MV4 output mode
GET: http://admin:admin@192.168.8.101/cgi-bin/wapi.cgi?CMD=START&UNIT.ID=ALL&MV.BUTTON=MODE&CMD=END
POST:

  1. http://192.168.8.101/cgi-bin/wapi.cgi
  2. Request Header: “Content-type”, “application/x-www-form-urlencoded”
  3. Request Header: “Authorization”, “Basic “ + Base64EncodedString(“admin:admin”) this evaluates to Basic YWRtaW46YWRtaW4=
  4. POST Data: “CMD=START&UNIT.ID=ALL&MV.BUTTON=MODE&CMD=END

Example: Turn boarder off for channel 2 when in Quad Mode
GET: http://admin:admin@192.168.8.101/cgi-bin/wapi.cgi?CMD=START&UNIT.ID=ALL&MV.BOARDER_OFF=2|QUAD&CMD=END
POST:

  1. http://192.168.8.101/cgi-bin/wapi.cgi
  2. Request Header: “Content-type”, “application/x-www-form-urlencoded”
  3. Request Header: “Authorization”, “Basic “ + Base64EncodedString(“admin:admin”) this evaluates to Basic YWRtaW46YWRtaW4=
  4. POST Data: “CMD=START&UNIT.ID=ALL&MV.BOARDER_OFF=2|QUAD&CMD=END

Example: Turn boarder on for channel 2 when in Quad Mode
GET: http://admin:admin@192.168.8.101/cgi-bin/wapi.cgi?CMD=START&UNIT.ID=ALL&MV.BOARDER_ON=2|QUAD&CMD=END
POST:

  1. http://192.168.8.101/cgi-bin/wapi.cgi
  2. Request Header: “Content-type”, “application/x-www-form-urlencoded”
  3. Request Header: “Authorization”, “Basic “ + Base64EncodedString(“admin:admin”) this evaluates to Basic YWRtaW46YWRtaW4=
  4. POST Data: “CMD=START&UNIT.ID=ALL&MV.BOARDER_ON=2|QUAD&CMD=END

Example: Set the custom size and position for channel 1 in Custom Mode: Resolution
1080P, Position 300×100, Size 1920×1080
GET: http://admin:admin@192.168.8.101/cgibin/wapi.cgi?CMD=START&UNIT.ID=ALL&MV.CUSTOM_POS=1080p|1|300|100|1920|1080&CMD=END
POST:

  1. http://192.168.8.101/cgi-bin/wapi.cgi
  2. Request Header: “Content-type”, “application/x-www-form-urlencoded”
  3. Request Header: “Authorization”, “Basic “ + Base64EncodedString(“admin:admin”) this evaluates to Basic YWRtaW46YWRtaW4=
  4. POST Data: “CMD=START&UNIT.ID=ALL&MV.CUSTOM_POS=1080p|1|300|100|1920|1080&CMD=END

Example: Move channel 1 to a specific position in Custom Mode: Resolution 1080P, Position 300×100
GET: http://admin:admin@192.168.8.101/cgi-bin/wapi.cgi?CMD=START&UNIT.ID=ALL&MV.CUSTOM_MOV=1080p|1|300|100&CMD=END
POST:

  1. http://192.168.8.101/cgi-bin/wapi.cgi
  2. Request Header: “Content-type”, “application/x-www-form-urlencoded”
  3. Request Header: “Authorization”, “Basic “ + Base64EncodedString(“admin:admin”) this evaluates to Basic YWRtaW46YWRtaW4=
  4. POST Data: “CMD=START&UNIT.ID=ALL&MV.CUSTOM_MOV=1080p|1|300|100&CMD=END

API CONTROL logo

Documents / Resources

API CONTROL MV4 IP Multiviewer [pdf] User Manual
MV4 IP Multiviewer, MV4, MV4 Multiviewer, IP Multiviewer

References

Leave a comment

Your email address will not be published. Required fields are marked *