什么是简易IP控制

简易IP控制是一种通过本地网络控制显示器的简单通信协议。它专为熟悉CIS (Custom Installation Services) 和AV设备控制系统的开发人员而设计。控制监听端口为显示器的TCP20060。该协议采用24字节的固定长度数据,支持多种命令。

特点

可靠的TCP通信

通过使用TCP的通信,进行命令的收发。

简单高效的命令格式

SSIP (BRAVIA专业显示器专有协议) 实现高速和稳定性。

专为技术人员设计

灵活、可扩展的设计可满足CIS和商用AV设备控制系统的需求。

准备和实施指南

预先准备

  • 连接到同一网络。支持有线LAN和无线LAN。

所需的显示器设置

所需的显示器设置

启用远程设备控制

操作步骤:[设置]→[网络和互联网]→[远程设备设置]→[远程控制]


启用简易IP控制

操作步骤: [设置]→[网络和互联网]→[本地网络设置]→[IP控制]→[简单IP控制]

注意
欧洲地区型号基于RED-DA合规性有3种规格。每种规格的设置和可用命令不同。详情请参阅[IP Control]

从Linux控制显示器的方法 (使用netcat)

协议的数据格式为24字节的固定长度数据。以下是在Linux上使用netcat命令的简单示例。发送TCP数据即可轻松与显示器进行通信。

例:利用Linux上的netcat命令与显示器通信

连接到显示器

连接到显示器的IP地址和TCP端口20060,以便能直接发送命令。

$ netcat [IP address] 20060
执行关机操作时

命令请求
它具有24字节的固定长度,具有以下结构。

*SCPOWRO000000000000000

响应(返回值)

*SAPOWR0000000000000000
*SNPOWR0000000000000000

各字段含义
SAPOWR… 正在接受Power Off命令。
SNPOWR… 当前电源状态为OFF。

数据格式

简易IP控制中使用的消息为固定长度数据,每条命令由24字节构成。消息由以下五个部分组成。

字节偏移类型字节长度
0-1开头2Byte[0] 0x2A [*]: (fixed value)
Byte[1] 0x53 [S]: (fixed value)
2消息类型10x43 [C]: Control
0x45 [E]: Enquiry
0x41 [A]: Answer
0x4E [N]: Notify
3-6命令4
7-22参数16
23页脚10x0A [LF]: (fixed value)

开头

消息开头必须为可以识别为消息的固定报头 (0x2A 0x53) 。


页脚

每条消息都有一个用于标识消息结束的固定帧尾 (0x0A)。


消息类型

消息类型消值消息方向说明
Control0x43 [C]从客户端到显示器用于控制或更改显示器上的值。应答消息用于回复。
Enquiry0x45 [E]从客户端到显示器用于查询显示器上的值。应答消息用于回复。
Answer0x41 [A]从显示器到客户端用于从显示器向客户端回复。
Notify0x4E [N]从显示器到客户端用于从显示器向客户端发送事件。

命令定义

每个命令都可通过Four-CC格式表示的4个ASCII字符识别,并具有参数。

每个消息类型的公共参数

以下表格显示了公共参数定义。

消息类型
(Byte[2])
参数
(Byte[7] – Byte[22])
说明
C################用于无参数的控制 例如:切换功能
E################用于无参数的查询
A0000000000000000成功响应 例如:控制结果
AFFFFFFFFFFFFFFFF错误响应 例如:无效参数

简易IP控制命令

命令名消息类型
(Byte[2])
FourCC
(Byte[3]
– Byte[6])
参数
(Byte[7] – Byte[22])
说明
setIrccCodeCIRCCXXXXXXXXXXXXXXXX发送遥控器IR命令等代码。详情请参阅IR命令
 A    0000000000000000成功
 A    FFFFFFFFFFFFFFFF错误
setPowerStatusCPOWR0000000000000000待机(关机)
 C    0000000000000001激活(开机)
 A    0000000000000000成功
 A    FFFFFFFFFFFFFFFF错误
getPowerStatusEPOWR################ 
 A    0000000000000000待机(关机)
 A    0000000000000001激活(开机)
 A    FFFFFFFFFFFFFFFF错误
togglePowerStatusCTPOW################切换电源状态
 A    0000000000000000成功
 A    FFFFFFFFFFFFFFFF错误
setAudioVolumeCVOLUXXXXXXXXXXXXXXXX以十进制数指定音量值,左侧用”0″填充
例如: 0000000000000029
 A    0000000000000000成功,返回音量值
 A    FFFFFFFFFFFFFFFF错误
getAudioVolumeEVOLU################获取音量值
 A    XXXXXXXXXXXXXXXX成功,返回音量值
 A    FFFFFFFFFFFFFFFF错误
setAudioMuteCAMUT0000000000000000取消静音
 C    0000000000000001静音
 A    0000000000000000成功
 A    FFFFFFFFFFFFFFFF错误
getAudioMuteEAMUT################获取音频静音状态
 A    0000000000000000未静音
 A    0000000000000001静音中
 A    FFFFFFFFFFFFFFFF错误
setInputCINPT000000010000XXXX将输入切换到HDMI(1〜9999)
 C    000000030000XXXX将输入切换到复合视频 (1〜9999)
 C    000000040000XXXX将输入切换到分量视频 (1〜9999)
 C    000000050000XXXX将输入切换到屏幕镜像 (1〜9999)
 A    NNNNNNNNNNNNNNNN未找到
 A    0000000000000000成功
 A    FFFFFFFFFFFFFFFF错误
getInputEINPT################获取当前输入
 A    000000010000XXXXHDMI (1〜9999)
 A    000000030000XXXX复合视频 (1〜9999)
 A    000000040000XXXX分量视频 (1〜9999)
 A    000000050000XXXX屏幕镜像 (1〜9999)
setPictureMuteCPMUT0000000000000000禁用画面静音状态
 C    0000000000000001使屏幕变黑(画面静音)
 A    0000000000000000成功
 A    FFFFFFFFFFFFFFFF错误
getPictureMuteEPMUT################确认画面静音是否启用
 A    0000000000000000禁用(画面静音关闭)
 A    0000000000000001启用(画面静音开启)
 A    FFFFFFFFFFFFFFFF错误
togglePictureMuteCTPMU################切换画面模式
 A    0000000000000000成功
 A    FFFFFFFFFFFFFFFF错误
setSceneSettingCSCENXXXXXXXXXXXXXXXX更改场景设置。
— auto
— auto24pSync
— general
general 参数字符串区分大小写,
右侧用”#”填充。
例如:auto24pSync#####
 A    0000000000000000成功
 A    NNNNNNNNNNNNNNNN当前输入不可用
 A    FFFFFFFFFFFFFFFF错误
getSceneSettingESCEN################获取当前场景设置
 A    XXXXXXXXXXXXXXXX场景设置值,成功
 A    NNNNNNNNNNNNNNNN当前输入不可用
 A    FFFFFFFFFFFFFFFF错误
firePowerChangeNPOWR0000000000000000关机时发送
 N    0000000000000001开机时发送
fireInputChangeNINPT0000000000000000显示器输入发生变化时发送
 N    000000010000XXXXHDMI (1〜9999)
 N    000000030000XXXX复合视频 (1〜9999)
 N    000000040000XXXX分量视频 (1〜9999)
 N    000000050000XXXX屏幕镜像 (1〜9999)
fireVolumeChangeNVOLUXXXXXXXXXXXXXXXX音量变化时发送
fireMuteChangeNAMUT0000000000000000取消静音时发送
 N    0000000000000001静音时发送
firePicture
MuteChange
NPMUT0000000000000000画面静音禁用时发送
 N    0000000000000001画面静音启用时发送
getBroadcastAddress*EBADReth0############获取指定接口的广播IPv4地址
 A    192.168.0.14####以左对齐方式指定广播地址,后面用”#”填充。
 A    FFFFFFFFFFFFFFFF错误
getMacAddress*EMADReth0############获取指定接口的MAC地址
 A    XXXXXXXXXXXX####以左对齐方式指定MAC地址,后面用”#”填充。
 A    FFFFFFFFFFFFFFFF错误

注意
* 欧洲地区型号基于RED-DA合规性有3种规格。每种规格的设置和可用命令不同。详情请参阅[IP Control]


红外命令

红外命令的发送由上述定义的setIrccCode支持。支持的代码及其参数定义如下。

红外命令参数 (Byte[7] – Byte[22])
Display0000000000000005
Home0000000000000006
Options0000000000000007
Return0000000000000008
Up0000000000000009
Down0000000000000010
Right0000000000000011
Left0000000000000012
Confirm0000000000000013
Red0000000000000014
Green0000000000000015
Yellow0000000000000016
Blue0000000000000017
Num10000000000000018
Num20000000000000019
Num30000000000000020
Num40000000000000021
Num50000000000000022
Num60000000000000023
Num70000000000000024
Num80000000000000025
Num90000000000000026
Num00000000000000027
Volume Up0000000000000030
Volume Down0000000000000031
Mute0000000000000032
Channel Up0000000000000033
Channel Down0000000000000034
Subtitle0000000000000035
DOT0000000000000038
Picture Off0000000000000050
Wide0000000000000061
Jump0000000000000062
Sync Menu0000000000000076
Forward0000000000000077
Play0000000000000078
Rewind0000000000000079
Prev0000000000000080
Stop0000000000000081
Next0000000000000082
Pause0000000000000084
Flash Plus0000000000000086
Flash Minus0000000000000087
TV Power0000000000000098
Audio0000000000000099
Input0000000000000101
Sleep0000000000000104
Sleep Timer0000000000000105
Video 20000000000000108
Picture Mode0000000000000110
Demo Surround0000000000000121
HDMI 10000000000000124
HDMI 20000000000000125
HDMI 30000000000000126
HDMI 40000000000000127
Action Menu0000000000000129
Help0000000000000130