123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614 |
- using System;
- using System.Collections.Generic;
- using System.ComponentModel;
- using System.Data;
- using System.Drawing;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- using System.Windows.Forms;
- namespace VzClientSDKDemo
- {
- public partial class VideoCfg_Form : Form
- {
- private int m_hLPRClient = 0;
- private int m_board_type = 0;
- public VideoCfg_Form()
- {
- InitializeComponent();
- }
- public void SetLPRHandle(int hLPRClient)
- {
- m_hLPRClient = hLPRClient;
- }
- private void LoadVideoSource( )
- {
- if(m_board_type == 2)
- {
- tbar_bright.SetRange(0, 255);
- tbar_contrast.SetRange(0, 255);
- tbar_saturation.SetRange(0, 255);
- tbar_definition.SetRange(0, 255);
- int brt = 0, cst = 0, sat = 0, hue = 0;
- int ret = VzClientSDK.VzLPRClient_GetVideoPara(m_hLPRClient, ref brt, ref cst, ref sat, ref hue);
- if (ret == 0)
- {
- tbar_bright.Value = brt;
- tbar_contrast.Value = cst;
- tbar_saturation.Value = sat;
- tbar_definition.Value = hue;
- lblBright.Text = brt.ToString();
- lblContrast.Text = cst.ToString();
- lblSaturation.Text = sat.ToString();
- lblDefinition.Text = hue.ToString();
- }
- label14.Visible = false;
- cmb_video_standard.Visible = false;
- cmb_exposure_time.Items.Clear();
- cmb_exposure_time.Items.Add("0~3ms");
- cmb_exposure_time.Items.Add("0~2ms");
- cmb_exposure_time.Items.Add("0~1ms");
- int shutter = 0;
- ret = VzClientSDK.VzLPRClient_GetShutter(m_hLPRClient, ref shutter);
- if (ret == 0)
- {
- if (shutter == 96)
- {
- cmb_exposure_time.SelectedIndex = 0;
- }
- else if (shutter == 64)
- {
- cmb_exposure_time.SelectedIndex = 1;
- }
- else if (shutter == 32)
- {
- cmb_exposure_time.SelectedIndex = 2;
- }
- }
- int flip = 0;
- ret = VzClientSDK.VzLPRClient_GetFlip(m_hLPRClient, ref flip);
- if (ret == 0)
- {
- cmb_img_pos.SelectedIndex = flip;
- }
-
- int nMode = 0, nStrength = 0;
- int nRet = VzClientSDK.VzLPRClient_GetDenoise(m_hLPRClient, ref nMode, ref nStrength);
- if (nMode >= 0 && nStrength >= 0)
- {
- m_cmbDeNoiseMode.SelectedIndex = nMode;
- m_cmbDeNoiseLenth.SelectedIndex = nStrength;
- }
- }
- else
- {
- int brt = 0, cst = 0, sat = 0, hue = 0;
- int ret = VzClientSDK.VzLPRClient_GetVideoPara(m_hLPRClient, ref brt, ref cst, ref sat, ref hue);
- if (ret == 0)
- {
- tbar_bright.Value = brt;
- tbar_contrast.Value = cst;
- tbar_saturation.Value = sat;
- tbar_definition.Value = hue;
- lblBright.Text = brt.ToString();
- lblContrast.Text = cst.ToString();
- lblSaturation.Text = sat.ToString();
- lblDefinition.Text = hue.ToString();
- }
- int frequency = 0;
- ret = VzClientSDK.VzLPRClient_GetFrequency(m_hLPRClient, ref frequency);
- if (ret == 0)
- {
- cmb_video_standard.SelectedIndex = frequency;
- }
- int shutter = 0;
- ret = VzClientSDK.VzLPRClient_GetShutter(m_hLPRClient, ref shutter);
- if (ret == 0)
- {
- if (shutter == 2)
- {
- cmb_exposure_time.SelectedIndex = 0;
- }
- else if (shutter == 3)
- {
- cmb_exposure_time.SelectedIndex = 1;
- }
- else if (shutter == 4)
- {
- cmb_exposure_time.SelectedIndex = 2;
- }
- }
- int flip = 0;
- ret = VzClientSDK.VzLPRClient_GetFlip(m_hLPRClient, ref flip);
- if (ret == 0)
- {
- cmb_img_pos.SelectedIndex = flip;
- }
- }
- }
- private void LoadVideoCfg()
- {
- string strRateval = "512";
- if (m_hLPRClient > 0)
- {
- int nSizeVal = 0, nRateval = 0, nEncodeType = 0, modeval = 0, bitval = 0, ratelist = 0, levelval = 0;
- int ret = -1;
- if (m_board_type == 2)
- {
- cmb_frame_size.Items.Clear();
- cmb_frame_size.Items.Add("640x360");
- cmb_frame_size.Items.Add("720x576");
- cmb_frame_size.Items.Add("1280x720");
- cmb_frame_size.Items.Add("1920x1080");
- ret = VzClientSDK.VzLPRClient_GetVideoFrameSizeIndexEx(m_hLPRClient, ref nSizeVal);
- if (nSizeVal == 41943400)
- {
- cmb_frame_size.SelectedIndex = 0;
- }
- else if (nSizeVal == 47186496)
- {
- cmb_frame_size.SelectedIndex = 1;
- }
- else if (nSizeVal == 83886800)
- {
- cmb_frame_size.SelectedIndex = 2;
- }
- else if (nSizeVal == 125830200)
- {
- cmb_frame_size.SelectedIndex = 3;
- }
- else
- {
- cmb_frame_size.SelectedIndex = 0;
- }
- cmb_encode_type.SelectedIndex = 0;
- cmb_encode_type.Items.RemoveAt(1);
- }
- else
- {
- ret = VzClientSDK.VzLPRClient_GetVideoEncodeType(m_hLPRClient, ref nEncodeType);
- if (ret == 0)
- {
- if (nEncodeType == 0)
- {
- cmb_encode_type.SelectedIndex = 0;
- cmb_compress_mode.Enabled = true;
- }
- else
- {
- cmb_encode_type.SelectedIndex = 1;
- cmb_compress_mode.Enabled = false;
- }
- }
- ret = VzClientSDK.VzLPRClient_GetVideoFrameSizeIndex(m_hLPRClient, ref nSizeVal);
- if (ret == 0)
- {
- if (nSizeVal == 0)
- {
- cmb_frame_size.SelectedIndex = 1;
- }
- else if (nSizeVal == 1)
- {
- cmb_frame_size.SelectedIndex = 0;
- }
- else
- {
- cmb_frame_size.SelectedIndex = nSizeVal;
- }
- }
- }
- ret = VzClientSDK.VzLPRClient_GetVideoFrameRate(m_hLPRClient, ref nRateval);
- if (ret == 0 && nRateval > 0)
- {
- cmb_frame_rate.SelectedIndex = nRateval - 1;
- }
- ret = VzClientSDK.VzLPRClient_GetVideoCompressMode(m_hLPRClient, ref modeval);
- if (ret == 0)
- {
- cmb_compress_mode.SelectedIndex = modeval;
- if (modeval == 0)
- {
- txt_rateval.Enabled = true;
- }
- else
- {
- txt_rateval.Enabled = false;
- }
- }
- ret = VzClientSDK.VzLPRClient_GetVideoCBR(m_hLPRClient, ref bitval, ref ratelist);
- if (ret == 0)
- {
- strRateval = bitval.ToString();
- }
- ret = VzClientSDK.VzLPRClient_GetVideoVBR(m_hLPRClient, ref levelval);
- if (ret == 0)
- {
- cmb_img_quality.SelectedIndex = levelval;
- }
- }
- txt_rateval.Text = strRateval;
- }
- private void btnSave_Click(object sender, EventArgs e)
- {
- string sRateVal = txt_rateval.Text.ToString();
- int nRate = Int32.Parse(sRateVal);
- int ret = -1;
- int nSizeVal = cmb_frame_size.SelectedIndex;
- if (m_board_type == 2)
- {
- if (nRate < 512 || nRate > 5000)
- {
- MessageBox.Show("码流范围为512-5000,请重新输入!");
- return;
- }
- switch (nSizeVal)
- {
- case 0:
- nSizeVal = 41943400; break;
- case 1:
- nSizeVal = 47186496; break;
- case 2:
- nSizeVal = 83886800; break;
- case 3:
- nSizeVal = 125830200; break;
- default:
- break;
- }
- ret = VzClientSDK.VzLPRClient_SetVideoFrameSizeIndexEx(m_hLPRClient, nSizeVal);
- if (ret != 0)
- {
- MessageBox.Show("设置分辨率失败,请重试!");
- return;
- }
- }
- else
- {
- if (nRate <= 99 || nRate > 5000)
- {
- MessageBox.Show("码流范围为100-5000,请重新输入!");
- return;
- }
- if (nSizeVal == 0)
- {
- nSizeVal = 1;
- }
- else if (nSizeVal == 1)
- {
- nSizeVal = 0;
- }
- ret = VzClientSDK.VzLPRClient_SetVideoFrameSizeIndex(m_hLPRClient, nSizeVal);
- if (ret != 0)
- {
- MessageBox.Show("设置分辨率失败,请重试!");
- return;
- }
- }
-
- int nRateval = cmb_frame_rate.SelectedIndex + 1;
- ret = VzClientSDK.VzLPRClient_SetVideoFrameRate(m_hLPRClient, nRateval);
- if (ret != 0)
- {
- MessageBox.Show("设置帧率失败,请重试!");
- return;
- }
- int nEncodeType = (cmb_encode_type.SelectedIndex == 0) ? 0 : 2;
- ret = VzClientSDK.VzLPRClient_SetVideoEncodeType(m_hLPRClient, nEncodeType);
- if (ret != 0)
- {
- MessageBox.Show("设置编码方式失败,请重试!");
- return;
- }
- if (cmb_compress_mode.Enabled)
- {
- int modeval = cmb_compress_mode.SelectedIndex;
- ret = VzClientSDK.VzLPRClient_SetVideoCompressMode(m_hLPRClient, modeval);
- if (ret != 0)
- {
- MessageBox.Show("设置码流控制失败,请重试!");
- return;
- }
- }
- int level = cmb_img_quality.SelectedIndex;
- ret = VzClientSDK.VzLPRClient_SetVideoVBR(m_hLPRClient, level);
- if (ret != 0)
- {
- MessageBox.Show("设置图像质量失败,请重试!");
- return;
- }
- if (txt_rateval.Enabled)
- {
- ret = VzClientSDK.VzLPRClient_SetVideoCBR(m_hLPRClient, nRate);
- if (ret != 0)
- {
- MessageBox.Show("设置码流上限失败,请重试!");
- return;
- }
- }
- MessageBox.Show("设置成功!");
- }
- private async void VideoCfg_Form_Load(object sender, EventArgs e)
- {
- VzClientSDK.VzLPRClient_GetHwBoardType(m_hLPRClient, ref m_board_type);
- // await Task.Factory.StartNew(async() => { await load01(); });
-
- LoadVideoCfg();
- Application.DoEvents();
- LoadVideoSource();
- Application.DoEvents();
- }
- private Task load01()
- {
- return Task.Factory.StartNew(()=> { });
- }
-
- private void cmb_encode_type_SelectedIndexChanged(object sender, EventArgs e)
- {
- int nCurSel = cmb_encode_type.SelectedIndex;
- if (nCurSel == 0)
- {
- cmb_compress_mode.Enabled = true;
- }
- else
- {
- cmb_compress_mode.Enabled = false;
- }
- }
- private void cmb_compress_mode_SelectedIndexChanged(object sender, EventArgs e)
- {
- if (cmb_compress_mode.Enabled)
- {
- int nCurSel = cmb_compress_mode.SelectedIndex;
- if (nCurSel == 0)
- {
- txt_rateval.Enabled = true;
- }
- else
- {
- txt_rateval.Enabled = false;
- }
- }
- else
- {
- txt_rateval.Enabled = false;
- }
- }
- private void btnRecovery_Click(object sender, EventArgs e)
- {
- if (m_board_type == 2)
- {
- int brt = 128;
- tbar_bright.Value = brt;
- int cst = 138;
- tbar_contrast.Value = cst;
- int sat = 128;
- tbar_saturation.Value = sat;
- int hue = 140;
- tbar_definition.Value = hue;
- VzClientSDK.VzLPRClient_SetVideoPara(m_hLPRClient, brt, cst, sat, hue);
- VzClientSDK.VzLPRClient_SetShutter(m_hLPRClient, 96);
- cmb_exposure_time.SelectedIndex = 0;
- VzClientSDK.VzLPRClient_SetFlip(m_hLPRClient, 0);
- cmb_img_pos.SelectedIndex = 0;
- VzClientSDK.VzLPRClient_SetDenoise(m_hLPRClient, 3, 2);
- m_cmbDeNoiseMode.SelectedIndex = 3;
- m_cmbDeNoiseLenth.SelectedIndex = 2;
- lblBright.Text = brt.ToString();
- lblContrast.Text = cst.ToString();
- lblSaturation.Text = sat.ToString();
- lblDefinition.Text = hue.ToString();
- }
- else
- {
- int brt = 50;
- tbar_bright.Value = brt;
- int cst = 40;
- tbar_contrast.Value = cst;
- int sat = 30;
- tbar_saturation.Value = sat;
- int hue = 50;
- tbar_definition.Value = hue;
- VzClientSDK.VzLPRClient_SetVideoPara(m_hLPRClient, brt, cst, sat, hue);
- VzClientSDK.VzLPRClient_SetFrequency(m_hLPRClient, 1);
- cmb_video_standard.SelectedIndex = 1;
- VzClientSDK.VzLPRClient_SetShutter(m_hLPRClient, 3);
- cmb_exposure_time.SelectedIndex = 1;
- VzClientSDK.VzLPRClient_SetFlip(m_hLPRClient, 0);
- cmb_img_pos.SelectedIndex = 0;
- lblBright.Text = brt.ToString();
- lblContrast.Text = cst.ToString();
- lblSaturation.Text = sat.ToString();
- lblDefinition.Text = hue.ToString();
- }
- }
- private void tbar_bright_MouseUp(object sender, MouseEventArgs e)
- {
- int brt = tbar_bright.Value;
- int cst = tbar_contrast.Value;
- int sat = tbar_saturation.Value;
- int hue = tbar_definition.Value;
- lblBright.Text = brt.ToString();
- lblContrast.Text = cst.ToString();
- lblSaturation.Text = sat.ToString();
- lblDefinition.Text = hue.ToString();
- VzClientSDK.VzLPRClient_SetVideoPara(m_hLPRClient, brt, cst, sat, hue);
- }
- private void tbar_contrast_MouseUp(object sender, MouseEventArgs e)
- {
- int brt = tbar_bright.Value;
- int cst = tbar_contrast.Value;
- int sat = tbar_saturation.Value;
- int hue = tbar_definition.Value;
- lblBright.Text = brt.ToString();
- lblContrast.Text = cst.ToString();
- lblSaturation.Text = sat.ToString();
- lblDefinition.Text = hue.ToString();
- VzClientSDK.VzLPRClient_SetVideoPara(m_hLPRClient, brt, cst, sat, hue);
- }
- private void tbar_saturation_MouseUp(object sender, MouseEventArgs e)
- {
- int brt = tbar_bright.Value;
- int cst = tbar_contrast.Value;
- int sat = tbar_saturation.Value;
- int hue = tbar_definition.Value;
- lblBright.Text = brt.ToString();
- lblContrast.Text = cst.ToString();
- lblSaturation.Text = sat.ToString();
- lblDefinition.Text = hue.ToString();
- VzClientSDK.VzLPRClient_SetVideoPara(m_hLPRClient, brt, cst, sat, hue);
- }
- private void tbar_definition_MouseUp(object sender, MouseEventArgs e)
- {
- int brt = tbar_bright.Value;
- int cst = tbar_contrast.Value;
- int sat = tbar_saturation.Value;
- int hue = tbar_definition.Value;
- lblBright.Text = brt.ToString();
- lblContrast.Text = cst.ToString();
- lblSaturation.Text = sat.ToString();
- lblDefinition.Text = hue.ToString();
- VzClientSDK.VzLPRClient_SetVideoPara(m_hLPRClient, brt, cst, sat, hue);
- }
- private void cmb_video_standard_SelectedIndexChanged(object sender, EventArgs e)
- {
- int frequency = cmb_video_standard.SelectedIndex;
- int ret = VzClientSDK.VzLPRClient_SetFrequency(m_hLPRClient, frequency);
- }
- private void cmb_exposure_time_SelectedIndexChanged(object sender, EventArgs e)
- {
- if (m_board_type == 2)
- {
- int shutter = 0;
- int curSel = cmb_exposure_time.SelectedIndex;
- if (curSel == 0)
- {
- shutter = 96;
- }
- else if (curSel == 1)
- {
- shutter = 64;
- }
- else if (curSel == 2)
- {
- shutter = 32;
- }
- int ret = VzClientSDK.VzLPRClient_SetShutter(m_hLPRClient, shutter);
- }
- else
- {
- int shutter = 0;
- int curSel = cmb_exposure_time.SelectedIndex;
- if (curSel == 0)
- {
- shutter = 2;
- }
- else if (curSel == 1)
- {
- shutter = 3;
- }
- else if (curSel == 2)
- {
- shutter = 4;
- }
- int ret = VzClientSDK.VzLPRClient_SetShutter(m_hLPRClient, shutter);
- }
- }
- private void cmb_img_pos_SelectedIndexChanged(object sender, EventArgs e)
- {
- int flip = cmb_img_pos.SelectedIndex;
- int ret = VzClientSDK.VzLPRClient_SetFlip(m_hLPRClient, flip);
- }
- private void m_cmbDeNoiseMode_SelectedIndexChanged(object sender, EventArgs e)
- {
- int mode = m_cmbDeNoiseMode.SelectedIndex;
- int strength = m_cmbDeNoiseLenth.SelectedIndex;
- int ret = VzClientSDK.VzLPRClient_SetDenoise(m_hLPRClient, mode, strength);
- }
- private void m_cmbDeNoiseLenth_SelectedIndexChanged(object sender, EventArgs e)
- {
- int mode = m_cmbDeNoiseMode.SelectedIndex;
- int strength = m_cmbDeNoiseLenth.SelectedIndex;
- int ret = VzClientSDK.VzLPRClient_SetDenoise(m_hLPRClient, mode, strength);
- }
- }
- }
|