透明色 2018-06-27 11:45 采纳率: 0%
浏览 2670
已结题

关于宇视网络摄像头SDK解码问题

请问哪位大佬使用 宇视 网络摄像头SDK开发的?小弟目前使用C#语言进行YUV解码完全迷糊了,
对这方面的技术一点都不了解,请有经验的大佬们能够提供代码,并取得每帧的byte[]或bitmap。

DEMO如下:

[StructLayout(LayoutKind.Sequential)]
public struct NETDEV_PICTURE_DATA_S
{
    /// <summary>
    /// <para>pucData[0]:Y 平面指针</para>
    /// <para>pucData[1]:U 平面指针</para>
    /// <para>pucData[2]:V 平面指针</para>
    /// </summary>
    [MarshalAs(UnmanagedType.ByValArray, SizeConst = 4)]
    public byte[] pucData;               

    /// <summary>
    /// <para>ulLineSize[0]:Y平面每行跨距</para>
    /// <para>ulLineSize[1]:U平面每行跨距</para>
    /// <para>ulLineSize[2]:V平面每行跨距</para>
    /// </summary>
    [MarshalAs(UnmanagedType.ByValArray, SizeConst = 4)]
    public Int32[] dwLineSize;             

    /// <summary>
    /// 图片高度
    /// </summary>
    public Int32 dwPicHeight;               

    /// <summary>
    /// 图片宽度
    /// </summary>
    public Int32 dwPicWidth;              

    /// <summary>
    /// 用于渲染的时间数据类型
    /// </summary>
    public Int32 dwRenderTimeType;        

    /// <summary>
    /// 用于渲染的时间数据
    /// </summary>
    public Int64 tRenderTime;         
};

    /// <summary>
    /// 码流数据回调函数
    /// <para>1.用户应及时处理输出的视频流数据,确保函数尽快返回,否则会影响播放器内的媒体流处理.</para>
    /// <para>2.视频数据是yv12格式.排列顺序“Y0-Y1-......”,“U0-U1-......”,“V0-V1-......”</para>
    /// </summary>
    /// <param name="lpRealHandle">当前的实况播放句柄</param>
    /// <param name="pstPictureData">存放解码后视频流数据信息缓冲区指针</param>
    /// <param name="lpUserParam">用户设置参数,即用户在调用#NDPlayer_SetDecodeVideoDataCB函数时指定的用户参数</param>
    private void DecodeVideoDataCallBack(IntPtr lpRealHandle, ref NETDEV_PICTURE_DATA_S pstPictureData, IntPtr lpUserParam)
            {
                 //请大佬补充此处解码后返回的byte[]或bitmap图像数据
            }
  • 写回答

2条回答 默认 最新

  • devmiao 2018-06-27 15:41
    关注
    评论

报告相同问题?

悬赏问题

  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器