package com.genersoft.iot.vmp.jt1078.proc.response;
|
|
import com.genersoft.iot.vmp.jt1078.annotation.MsgId;
|
import io.netty.buffer.ByteBuf;
|
import io.netty.buffer.ByteBufUtil;
|
import io.netty.buffer.Unpooled;
|
import io.netty.util.CharsetUtil;
|
|
/**
|
* 回放请求
|
*
|
* @author QingtaiJiang
|
* @date 2023/4/28 10:37
|
* @email qingtaij@163.com
|
*/
|
@MsgId(id = "9201")
|
public class J9201 extends Rs {
|
// 服务器IP地址
|
private String ip;
|
|
// 实时视频服务器TCP端口号
|
private int tcpPort;
|
|
// 实时视频服务器UDP端口号
|
private int udpPort;
|
|
// 逻辑通道号
|
private int channel;
|
|
// 音视频资源类型:0.音视频 1.音频 2.视频 3.视频或音视频
|
private int type;
|
|
// 码流类型:0.所有码流 1.主码流 2.子码流(如果此通道只传输音频,此字段置0)
|
private int rate;
|
|
// 存储器类型:0.所有存储器 1.主存储器 2.灾备存储器"
|
private int storageType;
|
|
// 回放方式:0.正常回放 1.快进回放 2.关键帧快退回放 3.关键帧播放 4.单帧上传
|
private int playbackType;
|
|
// 快进或快退倍数:0.无效 1.1倍 2.2倍 3.4倍 4.8倍 5.16倍 (回放控制为1和2时,此字段内容有效,否则置0)
|
private int playbackSpeed;
|
|
// 开始时间YYMMDDHHMMSS,回放方式为4时,该字段表示单帧上传时间
|
private String startTime;
|
|
// 结束时间YYMMDDHHMMSS,回放方式为4时,该字段无效,为0表示一直回放
|
private String endTime;
|
|
@Override
|
public ByteBuf encode() {
|
ByteBuf buffer = Unpooled.buffer();
|
buffer.writeByte(ip.getBytes().length);
|
buffer.writeCharSequence(ip, CharsetUtil.UTF_8);
|
buffer.writeShort(tcpPort);
|
buffer.writeShort(udpPort);
|
buffer.writeByte(channel);
|
buffer.writeByte(type);
|
buffer.writeByte(rate);
|
buffer.writeByte(storageType);
|
buffer.writeByte(playbackType);
|
buffer.writeByte(playbackSpeed);
|
buffer.writeBytes(ByteBufUtil.decodeHexDump(startTime));
|
buffer.writeBytes(ByteBufUtil.decodeHexDump(endTime));
|
return buffer;
|
}
|
|
public String getIp() {
|
return ip;
|
}
|
|
public void setIp(String ip) {
|
this.ip = ip;
|
}
|
|
public int getTcpPort() {
|
return tcpPort;
|
}
|
|
public void setTcpPort(int tcpPort) {
|
this.tcpPort = tcpPort;
|
}
|
|
public int getUdpPort() {
|
return udpPort;
|
}
|
|
public void setUdpPort(int udpPort) {
|
this.udpPort = udpPort;
|
}
|
|
public int getChannel() {
|
return channel;
|
}
|
|
public void setChannel(int channel) {
|
this.channel = channel;
|
}
|
|
public int getType() {
|
return type;
|
}
|
|
public void setType(int type) {
|
this.type = type;
|
}
|
|
public int getRate() {
|
return rate;
|
}
|
|
public void setRate(int rate) {
|
this.rate = rate;
|
}
|
|
public int getStorageType() {
|
return storageType;
|
}
|
|
public void setStorageType(int storageType) {
|
this.storageType = storageType;
|
}
|
|
public int getPlaybackType() {
|
return playbackType;
|
}
|
|
public void setPlaybackType(int playbackType) {
|
this.playbackType = playbackType;
|
}
|
|
public int getPlaybackSpeed() {
|
return playbackSpeed;
|
}
|
|
public void setPlaybackSpeed(int playbackSpeed) {
|
this.playbackSpeed = playbackSpeed;
|
}
|
|
public String getStartTime() {
|
return startTime;
|
}
|
|
public void setStartTime(String startTime) {
|
this.startTime = startTime;
|
}
|
|
public String getEndTime() {
|
return endTime;
|
}
|
|
public void setEndTime(String endTime) {
|
this.endTime = endTime;
|
}
|
|
@Override
|
public String toString() {
|
return "J9201{" +
|
"ip='" + ip + '\'' +
|
", tcpPort=" + tcpPort +
|
", udpPort=" + udpPort +
|
", channel=" + channel +
|
", type=" + type +
|
", rate=" + rate +
|
", storageType=" + storageType +
|
", playbackType=" + playbackType +
|
", playbackSpeed=" + playbackSpeed +
|
", startTime='" + startTime + '\'' +
|
", endTime='" + endTime + '\'' +
|
'}';
|
}
|
}
|