设为首页收藏本站

AnyChat技术支持论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 活动 交友 discuz
123
返回列表 发新帖
楼主: hk92
打印 上一主题 下一主题

外部视频输入

[复制链接]

5

主题

180

帖子

801

积分

高级会员

Rank: 4

积分
801
21#
发表于 2015-12-23 11:44:46 | 只看该作者
本帖最后由 佰锐科技-李永星 于 2015-12-23 11:46 编辑
hk92 发表于 2015-12-23 11:39
但是在c#里面这里面没有H.264格式,是否加入BRAC_PIX_FMT_H264,就能解决?

是的,你加到枚举里,参考C++头文件中定义:
  1. // 视频图像格式定义
  2. enum BRAC_PixelFormat{
  3.         BRAC_PIX_FMT_RGB24 = 0,                  ///< Packed RGB 8:8:8, 24bpp, RGBRGB...(MEDIASUBTYPE_RGB24)
  4.         BRAC_PIX_FMT_RGB32,                        ///< 对应于:MEDIASUBTYPE_RGB32,Packed RGB 8:8:8, 32bpp, (msb)8A 8R 8G 8B(lsb), in cpu endianness
  5.         BRAC_PIX_FMT_YV12,                          ///< 对应于:MEDIASUBTYPE_YV12,Planar YUV 4:2:0, 12bpp, (1 Cr & Cb sample per 2x2 Y samples)
  6.         BRAC_PIX_FMT_YUY2,                          ///< 对应于:MEDIASUBTYPE_YUY2,Packed YUV 4:2:2, 16bpp, Y0 Cb Y1 Cr
  7.         BRAC_PIX_FMT_YUV420P,                    ///< Planar YUV 4:2:0, 12bpp, (1 Cr & Cb sample per 2x2 Y samples)
  8.         BRAC_PIX_FMT_RGB565,                     ///< 对应于:MEDIASUBTYPE_RGB565
  9.         BRAC_PIX_FMT_RGB555,                     ///< 对应于:MEDIASUBTYPE_RGB555
  10.         BRAC_PIX_FMT_NV12,                         ///< Planar YUV 4:2:0, 12bpp, Two arrays, one is all Y, the other is U and V
  11.         BRAC_PIX_FMT_NV21,                         ///< Planar YUV 4:2:0, 12bpp, Two arrays, one is all Y, the other is V and U
  12.         BRAC_PIX_FMT_NV16,                        ///< YUV422SP
  13.         
  14.         BRAC_PIX_FMT_MJPEG = 200,
  15.         BRAC_PIX_FMT_H264,
  16. };
复制代码
回复 支持 反对

使用道具 举报

21

主题

74

帖子

275

积分

中级会员

Rank: 3Rank: 3

积分
275
22#
 楼主| 发表于 2015-12-23 13:50:09 | 只看该作者
本帖最后由 hk92 于 2015-12-23 14:04 编辑
佰锐科技-李永星 发表于 2015-12-23 11:44
是的,你加到枚举里,参考C++头文件中定义:

您好,您能提供一个将H.264写入内存的方法吗(c#)?
回复 支持 反对

使用道具 举报

23#
发表于 2015-12-23 14:23:32 | 只看该作者
hk92 发表于 2015-12-23 13:50
您好,您能提供一个将H.264写入内存的方法吗(c#)?

您好,上次发给你的mp4代码里有,需要您自己转成C#
回复 支持 反对

使用道具 举报

21

主题

74

帖子

275

积分

中级会员

Rank: 3Rank: 3

积分
275
24#
 楼主| 发表于 2015-12-23 14:32:38 | 只看该作者
佰锐科技-李永星 发表于 2015-12-23 14:23
您好,上次发给你的mp4代码里有,需要您自己转成C#

您好,外部视频输入之后,是只能在本地播放,还是可以传送给对方显示呢?
回复 支持 反对

使用道具 举报

249

主题

2967

帖子

9076

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
9076
25#
发表于 2015-12-23 14:34:21 | 只看该作者
如果是输入H.264视频,则不可以在本地播放,只可以传给对方显示。
回复 支持 反对

使用道具 举报

21

主题

74

帖子

275

积分

中级会员

Rank: 3Rank: 3

积分
275
26#
 楼主| 发表于 2015-12-23 14:39:11 | 只看该作者
admin 发表于 2015-12-23 14:34
如果是输入H.264视频,则不可以在本地播放,只可以传给对方显示。

好的,这个正是需要的。
回复 支持 反对

使用道具 举报

21

主题

74

帖子

275

积分

中级会员

Rank: 3Rank: 3

积分
275
27#
 楼主| 发表于 2015-12-23 15:44:28 | 只看该作者
佰锐科技-李永星 发表于 2015-12-23 14:23
您好,上次发给你的mp4代码里有,需要您自己转成C#

您好;
  1. FileStream fs1 = new FileStream(@"D:\01.264", FileMode.Open);

  2.                     //获取文件大小
  3.                     long size = fs1.Length;

  4.                     byte[] array = new byte[size];

  5.                     //将文件读到byte数组中
  6.                     fs1.Read(array, 0, array.Length);
  7.                   
  8.                      IntPtr buffer = Marshal.AllocHGlobal(array.Length);
  9.                      Marshal.Copy(array, 0, buffer, array.Length);

  10.                     fs1.Close();

  11.                     int roomid = m.WParam.ToInt32();
  12.                     Print("进入房间成功,房间编号为:" + roomid.ToString());
  13.                     m_RoomID = roomid;
  14.                     int ret = AnyChatCoreSDK.SetVideoPos(-1, pnl_local.Handle, 0, 0, pnl_local.Width, pnl_local.Height);
  15.                    // ret = AnyChatCoreSDK.UserCameraControl(-1, true);
  16.                     ret = AnyChatCoreSDK.InputVideoData(buffer,320*240*3,0);
  17.                     MessageBox.Show(ret.ToString());
  18.                     ret = AnyChatCoreSDK.UserSpeakControl(-1, true);
  19.                    // int ret1 = AnyChatCoreSDK.InputVideoData();
  20.                 }
复制代码
这个ret = AnyChatCoreSDK.InputVideoData(buffer,320*240*3,0);这里的ret为20;函数功能不允许,这个是怎么回事呢?
回复 支持 反对

使用道具 举报

28#
发表于 2015-12-23 16:14:15 | 只看该作者
hk92 发表于 2015-12-23 15:44
您好;这个ret = AnyChatCoreSDK.InputVideoData(buffer,320*240*3,0);这里的ret为20;函数功能不允许, ...

您好,请你把代码发过来,我这边测试一下。
回复 支持 反对

使用道具 举报

21

主题

74

帖子

275

积分

中级会员

Rank: 3Rank: 3

积分
275
29#
 楼主| 发表于 2015-12-23 16:37:39 | 只看该作者
佰锐科技-李永星 发表于 2015-12-23 16:14
您好,请你把代码发过来,我这边测试一下。

您好,我已经把代码发送至您的邮箱,请查收。
回复 支持 反对

使用道具 举报

21

主题

74

帖子

275

积分

中级会员

Rank: 3Rank: 3

积分
275
30#
 楼主| 发表于 2015-12-24 12:41:49 | 只看该作者
佰锐科技-李永星 发表于 2015-12-23 16:14
您好,请你把代码发过来,我这边测试一下。

您好,您那边测试的结果出来了吗?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|AnyChat ( 粤ICP备13022410号-1 )  

GMT+8, 2024-4-27 21:26 , Processed in 0.224603 second(s), 20 queries .

Powered by Discuz! X3

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表