private void btnApplyOSDBuffer_Click(object sender, EventArgs e) { // SPECIFY A FILE TO READ FROM // FileStream fsSource = new FileStream(m_strBinaryFilePath, FileMode.Open, FileAccess.Read); m_bytesOSDBuffer = new byte[fsSource.Length]; int numBytesToRead = (int)fsSource.Length; int numBytesRead = 0; int nRead = fsSource.Read(m_bytesOSDBuffer, numBytesRead, numBytesToRead); fsSource.Close(); if (nRead == 0) { return; } m_pinnedOSDArray = GCHandle.Alloc(m_bytesOSDBuffer, GCHandleType.Pinned); m_pointerOSDAry = m_pinnedOSDArray.AddrOfPinnedObject(); m_nOsdNum3 = (uint)comboxOSDLayer3.SelectedIndex; m_xoffset3 = Convert.ToInt32(txtBox_Xoffset3.Text); m_yoffset3 = Convert.ToInt32(txtBox_Yoffset3.Text); m_width3 = Convert.ToInt32(txtBox_width3.Text); m_height3 = Convert.ToInt32(txtBox_height3.Text); m_nTransparent3 = Convert.ToUInt32(txtBox_Transparent3.Text); uint nOSDColorSpace = (uint)EXPORTS.ColorSpaceTypeEnum.QCAP_COLORSPACE_TYEP_RGB24; if (comboOSDBufferColorSpace.SelectedIndex == 0) { nOSDColorSpace = (uint)EXPORTS.ColorSpaceTypeEnum.QCAP_COLORSPACE_TYEP_YUY2; } if (comboOSDBufferColorSpace.SelectedIndex == 1) { nOSDColorSpace = (uint)EXPORTS.ColorSpaceTypeEnum.QCAP_COLORSPACE_TYEP_YV12; } if (comboOSDBufferColorSpace.SelectedIndex == 2) { nOSDColorSpace = (uint)EXPORTS.ColorSpaceTypeEnum.QCAP_COLORSPACE_TYEP_RGB24; } if (comboOSDBufferColorSpace.SelectedIndex == 3) { nOSDColorSpace = (uint)EXPORTS.ColorSpaceTypeEnum.QCAP_COLORSPACE_TYEP_BGR24; } if (comboOSDBufferColorSpace.SelectedIndex == 4) { nOSDColorSpace = (uint)EXPORTS.ColorSpaceTypeEnum.QCAP_COLORSPACE_TYEP_ARGB32; } if (comboOSDBufferColorSpace.SelectedIndex == 5) { nOSDColorSpace = (uint)EXPORTS.ColorSpaceTypeEnum.QCAP_COLORSPACE_TYEP_ABGR32; } uint nOSDBufferWidth = Convert.ToUInt32(textBoxOSDBufferWidth.Text); uint nOSDBufferHeight = Convert.ToUInt32(textBoxOSDBufferHeight.Text); if (m_hCapDev[0] != 0) { EXPORTS.QCAP_SET_OSD_BUFFER(m_hCapDev[0], m_nOsdNum3, m_xoffset3, m_yoffset3, m_width3, m_height3, nOSDColorSpace, (uint)m_pointerOSDAry, nOSDBufferWidth, nOSDBufferHeight, 0, m_nTransparent3); } if (m_hCapDev[1] != 0) { EXPORTS.QCAP_SET_OSD_BUFFER(m_hCapDev[1], m_nOsdNum3, m_xoffset3, m_yoffset3, m_width3, m_height3, nOSDColorSpace, (uint)m_pointerOSDAry, nOSDBufferWidth, nOSDBufferHeight, 0, m_nTransparent3); } if (m_hCapDev[2] != 0) { EXPORTS.QCAP_SET_OSD_BUFFER(m_hCapDev[2], m_nOsdNum3, m_xoffset3, m_yoffset3, m_width3, m_height3, nOSDColorSpace, (uint)m_pointerOSDAry, nOSDBufferWidth, nOSDBufferHeight, 0, m_nTransparent3); } if (m_hCapDev[3] != 0) { EXPORTS.QCAP_SET_OSD_BUFFER(m_hCapDev[3], m_nOsdNum3, m_xoffset3, m_yoffset3, m_width3, m_height3, nOSDColorSpace, (uint)m_pointerOSDAry, nOSDBufferWidth, nOSDBufferHeight, 0, m_nTransparent3); } }