中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

C++聯合體如何轉換成C#結構

發布時間:2022-10-22 11:32:35 來源:億速云 閱讀:156 作者:iii 欄目:編程語言

今天小編給大家分享一下C++聯合體如何轉換成C#結構的相關知識點,內容詳細,邏輯清晰,相信大部分人都還太了解這方面的知識,所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來了解一下吧。

備注:對于官方這個UNION示例,我的簡單理解,就是這類UNION做法,可適當代替IF ELSE 之類操作。

解決問題:如果只接收視頻解碼數據,而從不接收音頻數據,那么是否可以直接定義結構體,并以此來獲取視頻數據。

/// <summary>
/// * @struct tagTFrameInfo_YUV420
/// * @brief 解碼后幀信息結構(包括音頻和視頻)
/// * @attention 如果只接收視頻解碼數據,而從不接收音頻數據,那么是否可以直接定義結構體,并以此來獲取視頻數據
/// * @原型定義:
/// 解碼后幀信息結構(包括音頻和視頻)
/// typedef struct tagTFrameInfo
/// {
///   BYTE   m_byMediaType; // 媒體類型(PCM或YUV420)
///   DWORD  m_dwTimeStamp; // 時間戳  
///   union
///   {
///     BYTE   m_byBitCount; // 為YUV時的顏色bit位數 
///     BYTE   m_bStereo; // 為PCM時的聲道值
///   };
///   union
///   {
///     WORD   m_wVideoWidth; // 視頻幀寬
///     WORD m_wBitRate; // 采樣bit率(如8000)
///   };
///   union
///   {
///     WORD   m_wVideoHeight;// 視頻幀寬
///     WORD  m_wBand; // 采樣的位數(如16)
///   };
/// }TFrameInfo,*PFrameInfo; 
/// </summary>
[StructLayout(LayoutKind.Sequential)]
public struct tagTFrameInfo_YUV420
{
  /// <summary>
  /// 媒體類型(0:yuv420; 1:pcm; 2:rgb32: 3:uyvy; 4:YV12),pcm是音頻
  /// @原型:BYTE   m_byMediaType; // 媒體類型(1:PCM或0:YUV420)
  /// </summary>
  public byte m_byMediaType;     /** 媒體類型(0:yuv420; 1:pcm; 2:rgb32: 3:uyvy; 4:YV12),pcm是音頻 */

  /// <summary>
  /// 時間戳
  /// @原型:DWORD  m_dwTimeStamp; // 時間戳
  /// </summary>
  public UInt32 m_dwTimeStamp;     /** 時間戳 */

  // YUV
  /// <summary>
  /// 為YUV時的顏色bit位數
  /// @原型:BYTE   m_byBitCount; //為YUV時的顏色bit位數
  /// </summary>
  public byte m_byBitCount;     /** 為YUV時的顏色bit位數 */

  /// <summary>
  /// 視頻幀寬
  /// @原型:WORD   m_wVideoWidth; //視頻幀寬
  /// </summary>
  public UInt16 m_wVideoWidth;     /** 視頻幀寬 */

  /// <summary>
  /// 視頻幀寬
  /// @原型:WORD   m_wVideoHeight; //視頻幀寬
  /// </summary>
  public UInt16 m_wVideoHeight;     /** 視頻幀寬 */
}

以上就是“C++聯合體如何轉換成C#結構”這篇文章的所有內容,感謝各位的閱讀!相信大家閱讀完這篇文章都有很大的收獲,小編每天都會為大家更新不同的知識,如果還想學習更多的知識,請關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

c++
AI

丹凤县| 灵川县| 南平市| 宜春市| 洛浦县| 新源县| 额尔古纳市| 神农架林区| 永善县| 湘潭市| 华安县| 寿阳县| 五台县| 平定县| 波密县| 泰宁县| 于田县| 淳安县| 永福县| 榆林市| 高清| 汾西县| 长泰县| 金沙县| 当阳市| 新田县| 彝良县| 巨野县| 商丘市| 北宁市| 涞源县| 读书| 百色市| 洪湖市| 东辽县| 中超| 綦江县| 长丰县| 当阳市| 安义县| 京山县|