Summary
External control API for the Video Mixer plugin of the Panasonic Media Production Suite (MPS-400S) software. The plugin exposes both an HTTP/1.1 GET-based Web API (port 1337) and a framed TCP command channel (port 1437) using STX/ETX delimited messages. The API supports PGM switching, DSK on/off, screenshot capture, AI background capture, multi-view layout/cell queries, volume control, and VideoMixerEnable status queries.
Transport
protocols:
- http
- tcp
addressing:
http:
port: 1337
base_url: "/cgi-bin/video_mixer"
tcp:
port: 1437
auth:
type: none # inferred: no login/password/auth procedure described in source
Traits
powerable: false # inferred: no power on/off commands documented
routable: true # inferred from PGM switching (SPGM) commands
queryable: true # inferred from QMVL/QMVC/QPGM/QVOL/QVME queries
levelable: true # inferred from SCVL volume control command
Actions
- id: switch_pgm_http
label: Switch PGM (HTTP)
kind: action
command: "/cgi-bin/video_mixer?cmd=SPGM&cell={cell}"
params:
- name: cell
type: integer
description: Cell number (1-12, 13=A, 14=B). Mapping depends on layout.
transport: http
- id: switch_pgm_tcp
label: Switch PGM (TCP)
kind: action
command: "<STX>SPGM:{cell}<ETX>"
params:
- name: cell
type: string
description: ASCII cell number, e.g. "01"-"14" (1-12 plus A=13, B=14)
transport: tcp
- id: dsk_on_http
label: DSK On (HTTP)
kind: action
command: "/cgi-bin/video_mixer?cmd=SDSK&control=1"
params: []
transport: http
- id: dsk_off_http
label: DSK Off (HTTP)
kind: action
command: "/cgi-bin/video_mixer?cmd=SDSK&control=0"
params: []
transport: http
- id: dsk_on_tcp
label: DSK On (TCP)
kind: action
command: "<STX>SDSK:1<ETX>"
params: []
transport: tcp
- id: dsk_off_tcp
label: DSK Off (TCP)
kind: action
command: "<STX>SDSK:0<ETX>"
params: []
transport: tcp
- id: capture_screenshot_http
label: Capture Screenshot (HTTP)
kind: action
command: "/cgi-bin/video_mixer?cmd=SCAP&control={control}&image={image}"
params:
- name: control
type: integer
description: "1=PGM, 2=KEY"
- name: image
type: integer
description: "0=no image attached, 1=image attached (PNG)"
transport: http
- id: capture_screenshot_pgm_tcp
label: Capture PGM (TCP)
kind: action
command: "<STX>SCAP:1<ETX>"
params: []
transport: tcp
- id: capture_screenshot_key_tcp
label: Capture KEY (TCP)
kind: action
command: "<STX>SCAP:2<ETX>"
params: []
transport: tcp
- id: capture_ai_background_http
label: Capture AI Background (HTTP)
kind: action
command: "/cgi-bin/video_mixer?cmd=SAIB&input={input}&bkgd={bkgd}"
params:
- name: input
type: integer
description: Input number to capture (1-4)
- name: bkgd
type: integer
description: BKGD number to capture (1-4)
transport: http
- id: capture_ai_background_tcp
label: Capture AI Background (TCP)
kind: action
command: "<STX>SAIB:{input}:{bkgd}<ETX>"
params:
- name: input
type: integer
description: Input number (1-4)
- name: bkgd
type: integer
description: BKGD number (1-4)
transport: tcp
- id: get_multiview_layout_http
label: Get Multi View Layout (HTTP)
kind: query
command: "/cgi-bin/video_mixer?cmd=QMVL"
params: []
transport: http
- id: get_multiview_layout_tcp
label: Get Multi View Layout (TCP)
kind: query
command: "<STX>QMVL:1<ETX>"
params: []
transport: tcp
- id: get_multiview_cell_http
label: Get Multi View Cell (HTTP)
kind: query
command: "/cgi-bin/video_mixer?cmd=QMVC&cell={cell}"
params:
- name: cell
type: integer
description: Cell number (1-14; 13=A, 14=B)
transport: http
- id: get_multiview_cell_tcp
label: Get Multi View Cell (TCP)
kind: query
command: "<STX>QMVC:{cell}<ETX>"
params:
- name: cell
type: integer
description: Cell number (1-14)
transport: tcp
- id: get_pgm_cell_http
label: Get PGM Cell (HTTP)
kind: query
command: "/cgi-bin/video_mixer?cmd=QPGM"
params: []
transport: http
- id: get_pgm_cell_tcp
label: Get PGM Cell (TCP)
kind: query
command: "<STX>QPGM<ETX>"
params: []
transport: tcp
- id: get_multiview_image_http
label: Get Multi View Image (HTTP)
kind: query
command: "/cgi-bin/video_mixer?cmd=QMVI&cell={cell}"
params:
- name: cell
type: integer
description: Cell number (1-14)
transport: http
- id: control_volume_http
label: Control Volume (HTTP)
kind: action
command: "/cgi-bin/video_mixer?cmd=SCVL&volume={volume}"
params:
- name: volume
type: integer
description: Volume level (0-100)
transport: http
- id: control_volume_tcp
label: Control Volume (TCP)
kind: action
command: "<STX>SCVL:{volume}<ETX>"
params:
- name: volume
type: integer
description: Volume level (0-100)
transport: tcp
- id: get_volume_http
label: Get Audio Volume (HTTP)
kind: query
command: "/cgi-bin/video_mixer?cmd=QVOL"
params: []
transport: http
- id: get_volume_tcp
label: Get Audio Volume (TCP)
kind: query
command: "<STX>QVOL<ETX>"
params: []
transport: tcp
- id: get_vm_enable_status_http
label: Get VM Enable Status (HTTP)
kind: query
command: "/cgi-bin/video_mixer?cmd=QVME"
params: []
transport: http
- id: get_vm_enable_status_tcp
label: Get VM Enable Status (TCP)
kind: query
command: "<STX>QVME<ETX>"
params: []
transport: tcp
Feedbacks
- id: pgm_cell
label: PGM Cell Number
type: integer
description: Currently selected PGM cell (1-14); 0 if none selected
- id: multiview_layout
label: Multi View Layout
type: enum
values: [layout1, layout2, layout3]
- id: multiview_cell_name
label: Multi View Cell Name
type: string
- id: multiview_cell_type
label: Multi View Cell Type
type: enum
values: [none, input, movie, image, key, scene, pgm_output, pvw, internal_sg]
- id: output_volume
label: Output Volume
type: integer
description: Volume value 0-100
- id: vm_enable_status
label: VideoMixerEnable Status
type: enum
values: [off, on]
- id: tcp_error
label: TCP Error Response
type: enum
values: [api_format_error, undefined_command, communication_error, communication_timeout]
Variables
# UNRESOLVED: no settable parameters documented that are not covered by discrete actions
Events
# UNRESOLVED: no unsolicited notifications documented in source
Macros
# UNRESOLVED: no multi-step sequences described explicitly in source
Safety
confirmation_required_for: []
interlocks: []
# UNRESOLVED: no safety warnings or interlock procedures documented in source
Notes
- Known protocol given as "RS-232C" but source exclusively documents HTTP (port 1337) and TCP (port 1437). No RS-232 / serial interface is described.
- HTTP requests are GET only; URL pattern:
http://[IP]:1337/cgi-bin/video_mixer?cmd=[Command]&[Param]=[Value]&... - TCP frame format:
<STX>(0x02) + 4-char Command +:+ params separated by:+<ETX>(0x03). - TCP responses generally begin with response mnemonic (
APGM,ADSK,ACAP,AAIB,AMVL,AMVC,AVOL,AVME) followed by:-separated parameters. - TCP errors use command
ERORwith codes 01 (API format error), 02 (undefined command), 03 (communication error), 04 (communication timeout). - TCP server disconnects after 20 seconds of inactivity since the last response command.
QMVI(Get Multi View Image) is HTTP-only; TCP not supported.SCAPvia TCP returns the captured file name in parameter 2 on success; TCP does not attach image files (use HTTP for that).
Provenance
source_domains:
- eww.pass.panasonic.co.jp
source_urls:
- https://eww.pass.panasonic.co.jp/pro-av/support/content/guide/DEF/MPS_VM/WebApplication_en.pdf
retrieved_at: 2026-08-01T09:13:56.201Z
last_checked_at: 2026-08-05T08:34:58.829Z
Verification Summary
verdict: verified
checked_at: 2026-08-05T08:34:58.829Z
matched_actions: 24
action_count: 24
confidence: medium
summary: "All 24 spec actions match source command mnemonics (SPGM/SDSK/SCAP/SAIB/QMVL/QMVC/QPGM/QMVI/SCVL/QVOL/QVME) with correct parameters and shapes; transport ports 1337/1437 verified. (6 unresolved item(s) noted in Known Gaps.)"
Known Gaps
- "Known protocol was given as \"RS-232C\" but the source exclusively describes HTTP and TCP. No RS-232 interface is documented."
- "no settable parameters documented that are not covered by discrete actions"
- "no unsolicited notifications documented in source"
- "no multi-step sequences described explicitly in source"
- "no safety warnings or interlock procedures documented in source"
- "protocol mismatch between declared \"RS-232C\" and source-documented HTTP/TCP; firmware version not stated; no safety or event documentation."
From the AI4AV catalog (https://ai4av.net) · ODbL-1.0