You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
232 lines
4.4 KiB
232 lines
4.4 KiB
using System;
|
|
|
|
namespace EC.Entity.Video
|
|
{
|
|
public class MonitorCamera
|
|
{
|
|
public MonitorCamera()
|
|
{
|
|
}
|
|
|
|
/// <summary>
|
|
/// 主键
|
|
/// </summary>
|
|
public string Id { get; set; }
|
|
|
|
/// <summary>
|
|
/// 站点id
|
|
/// </summary>
|
|
public string SiteId { get; set; }
|
|
|
|
/// <summary>
|
|
/// 相机名称
|
|
/// </summary>
|
|
public string CameraName { get; set; }
|
|
|
|
/// <summary>
|
|
/// 相机类型
|
|
/// </summary>
|
|
public int Type { get; set; }
|
|
|
|
/// <summary>
|
|
/// 相机ip
|
|
/// </summary>
|
|
public string Ip { get; set; }
|
|
|
|
/// <summary>
|
|
/// 相机端口
|
|
/// </summary>
|
|
public int Port { get; set; }
|
|
|
|
/// <summary>
|
|
/// 认证用户名
|
|
/// </summary>
|
|
public string User { get; set; }
|
|
|
|
/// <summary>
|
|
/// 认证密码
|
|
/// </summary>
|
|
public string Password { get; set; }
|
|
|
|
/// <summary>
|
|
/// 纬度
|
|
/// </summary>
|
|
public decimal Latitude { get; set; }
|
|
|
|
/// <summary>
|
|
/// 经度
|
|
/// </summary>
|
|
public decimal Longitude { get; set; }
|
|
|
|
/// <summary>
|
|
/// 高度
|
|
/// </summary>
|
|
public decimal Height { get; set; }
|
|
|
|
/// <summary>
|
|
/// Rtsp地址
|
|
/// </summary>
|
|
public string PreRtsp { get; set; }
|
|
|
|
/// <summary>
|
|
/// 分析 Rtsp 地址
|
|
/// </summary>
|
|
public string AnalysisRtsp { get; set; }
|
|
|
|
/// <summary>
|
|
/// 录像 Rtsp 地址通道3
|
|
/// </summary>
|
|
public string RecordRtsp { get; set; }
|
|
|
|
/// <summary>
|
|
/// 云台控制ip
|
|
/// </summary>
|
|
public string CloudCtrlIp { get; set; }
|
|
|
|
/// <summary>
|
|
/// 云台控制端口
|
|
/// </summary>
|
|
public int CloudCtrlPort { get; set; }
|
|
|
|
/// <summary>
|
|
/// 流媒体服务器id
|
|
/// </summary>
|
|
public string StreamingMediaId { get; set; }
|
|
|
|
/// <summary>
|
|
/// 录像机id
|
|
/// </summary>
|
|
public string VideoRecorderId { get; set; }
|
|
|
|
/// <summary>
|
|
///
|
|
/// </summary>
|
|
public int Factory { get; set; }
|
|
|
|
/// <summary>
|
|
/// 相机预览通道
|
|
/// </summary>
|
|
public int Channel { get; set; }
|
|
|
|
/// <summary>
|
|
/// 样式
|
|
/// </summary>
|
|
public int Style { get; set; }
|
|
|
|
/// <summary>
|
|
/// 左夹角
|
|
/// </summary>
|
|
public double LeftAngle { get; set; }
|
|
|
|
/// <summary>
|
|
/// 右夹角
|
|
/// </summary>
|
|
public double RightAngle { get; set; }
|
|
|
|
/// <summary>
|
|
/// 视野中央有效距离
|
|
/// </summary>
|
|
public double ViewDistance { get; set; }
|
|
|
|
/// <summary>
|
|
/// 采样帧率
|
|
/// </summary>
|
|
public int FrameRate { get; set; }
|
|
|
|
/// <summary>
|
|
/// 最大跟踪范围
|
|
/// </summary>
|
|
public int MaxRange { get; set; }
|
|
|
|
/// <summary>
|
|
/// 状态
|
|
/// </summary>
|
|
public int Status { get; set; }
|
|
|
|
/// <summary>
|
|
/// 零方位角(正北夹角)
|
|
/// </summary>
|
|
public double ZeroAzimuth { get; set; }
|
|
|
|
/// <summary>
|
|
/// 安装垂直角(上下-90°~90°)
|
|
/// </summary>
|
|
public double FixedAngle { get; set; }
|
|
|
|
/// <summary>
|
|
/// 最大仰角
|
|
/// </summary>
|
|
public double MaxElevation { get; set; }
|
|
|
|
/// <summary>
|
|
/// 最大可视距离
|
|
/// </summary>
|
|
public double MaxVisibleDistance { get; set; }
|
|
|
|
/// <summary>
|
|
/// 变倍因子
|
|
/// </summary>
|
|
public double ZoomFactor { get; set; }
|
|
|
|
/// <summary>
|
|
/// 创建人
|
|
/// </summary>
|
|
public string CreateBy { get; set; }
|
|
|
|
/// <summary>
|
|
/// 创建日期
|
|
/// </summary>
|
|
public DateTime? CreateTime { get; set; }
|
|
|
|
/// <summary>
|
|
/// 更新人
|
|
/// </summary>
|
|
public string UpdateBy { get; set; }
|
|
|
|
/// <summary>
|
|
/// 更新日期
|
|
/// </summary>
|
|
public DateTime? UpdateTime { get; set; }
|
|
|
|
public MonitorCamera(string cameraIp, int port, string userName, string passWord, int factory = 0, int type = 0)
|
|
{
|
|
Ip = cameraIp;
|
|
Port = port;
|
|
User = userName;
|
|
Password = passWord;
|
|
Factory = factory;
|
|
Type = type;
|
|
}
|
|
|
|
public string RtspURL(int width = 640)
|
|
{
|
|
if (width < 1200)
|
|
{
|
|
if (!string.IsNullOrEmpty(RecordRtsp))
|
|
{
|
|
return RecordRtsp;
|
|
}
|
|
}
|
|
if (!string.IsNullOrEmpty(PreRtsp))
|
|
{
|
|
return PreRtsp;
|
|
}
|
|
|
|
string rtspformat = "rtsp://{0}:{1}@{2}:554";
|
|
//switch (Factory)
|
|
//{
|
|
// case (int)Video.HK:
|
|
// rtspformat = "rtsp://{0}:{1}@{2}:554/Streaming/Channels/102?transportmode=unicast&profile=Profile_2";
|
|
// break;
|
|
// case (int)VidoeType.DH:
|
|
// rtspformat = "rtsp://{0}:{1}@{2}:554/cam/realmonitor?channel=1&subtype=1&unicast=true&proto=Onvif";
|
|
// break;
|
|
// //case VidoeType.YS:
|
|
// // return "";
|
|
|
|
//}
|
|
string url = string.Format(rtspformat, User, Password, Ip);
|
|
return url;
|
|
}
|
|
}
|
|
}
|