关于C#调用c的dll是的问题

songzhengwei 2010-09-15 11:17:14
#define IMAGE_WIDTH (352)
#define IMAGE_HEIGHT (288)
uint8_t frameData[65536];
uint8_t imageRGB[IMAGE_WIDTH* IMAGE_HEIGHT*3];

void* g_dec_handler = h264_dec_init();
if(!g_dec_handler) return FALSE;
//开始解码
while(1){。。。。。。。。。。。。。。。。。。

我现在的改写的C#代码是static void Main(string[] args)
{
const int IMAGE_WIDTH =352;
const int IMAGE_HEIGHT=288;
byte [] frameData;
frameData =new byte [65536];
byte[] imageRGB;
imageRGB = new byte[IMAGE_WIDTH * IMAGE_HEIGHT * 3];
下面就有问题了。。不知怎么写了。。。求大侠解释。在线等。
...全文
127 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
无涯大者 2010-09-16
  • 打赏
  • 举报
回复
说清楚些,不明白?
threenewbee 2010-09-16
  • 打赏
  • 举报
回复
不知道你要写什么,所以更不知道怎么写。
songzhengwei 2010-09-16
  • 打赏
  • 举报
回复
??????????????????????????????????????????????
javabegin 2010-09-16
  • 打赏
  • 举报
回复
dllimport
songzhengwei 2010-09-16
  • 打赏
  • 举报
回复
二、 解码器接口
解码库包括
1、 h264dec.dll、h264dec.lib
二进制解码库。用VC2003编译的。
2、 h264dec.h、crc.h
头文件
1、接口说明
void* h264_dec_init();
//初始化解码器,返回指向解码器对象的指针。如果失败,返回NULL

int h264_dec_main(void* pObject,unsigned char *istream,int len);
//解码一帧视频。pObject是由h264_dec_init返回的解码器对象指针,istream指向输入码流,len是码流长度。如果解码器生成解码后的图象,返回非0,否则返回0。注意提供给该函数的图像数据必须是由帧为单位的。另外由于解码器缓存,送入解码器的帧与解码器返回的帧存在延迟,也就是说,前几次调用h264_dec_main可能返回0,这是正常的

void h264_dec_stop(void* pObject);
//停止解码,释放解码器对象。

void h264_dec_getYUV(void* pObject,unsigned char* pY,unsigned char* pU,unsigned char* pV);
//得到解码后的YUV图像。pObject是由h264_dec_init返回的解码器对象指针,pY,pU,pV由调用者提供,存放返回的图像YUV分量。

void h264_dec_getRGB(void* pDecoder,unsigned char* pRGB);
//得到解码后的RGB图像。pObject是由h264_dec_init返回的解码器对象指针,pRGB由调用者提供,存放返回的24bit RGB图像。数据在内存中是按照RGB的顺序存放的。

void h264_get_pic_wh(void* pObject,int* width,int* height);
//得到解码后的图像宽高



就是根据以上用C#写一个解码小程序,,一定要用C#写,h264dll库已经给了。我刚学,不会编,求高人。。





110,518

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧