xuechengan

xuechengan

0个粉丝

10

问答

0

专栏

0

资料

xuechengan  发布于  2016-08-25 15:27:02
采纳率 0%
10个问答
2959

编解码API的实现

 
因为项目的需要,不希望每次都在sysinfo.c文件里更改配置信息,而是希望以API接口的形式呈现出来,这样每次更改配置信息时只需要调用API函数接口即可,具体的功能包括:
1.设置分辨率(1080P  ,720P);
2.设置帧率(120  ,60  ,30  ,25);
3.设置码率(8M,  4M,  2M);
4.设置编码方式(H.264   H.265   MPEG4)等。

在海思SDK的基础上,这样的API一般应该怎么实现呢?
我来回答
回答5个
时间排序
认可量排序

hiuser

0个粉丝

8

问答

0

专栏

1

资料

hiuser 2016-08-25 17:59:10
认可0
设置Attr参数啊

xuechengan

0个粉丝

10

问答

0

专栏

0

资料

xuechengan 2016-08-25 19:35:47
认可0
[quote][url=forum.php?mod=redirect&goto=findpost&pid=36671&ptid=12426]hiuser 发表于 2016-8-25 17:59[/url]
设置Attr参数啊[/quote]

是的,设置结构体参数,但我现在疑惑的是不知该怎么组织这个API函数接口,怎么通过调用这个函数接口来实现各种功能

ngswfx

1个粉丝

55

问答

1

专栏

40

资料

ngswfx 2016-08-27 02:01:01
认可0
本帖最后由 ngswfx 于 2016-8-27 02:04 编辑

这不难呀。你搞编程,还没有学会流程拆解。把一个实际需求,先拆解成几个大的步骤,然后再往下,继续拆解,最后可能会拆解成1000个步骤。从上而下设计需要的功能函数模块。直到和底层基础代码结合。

bool setResolution(int nEncChl,int w,int h);

int nCurW[16];
int nCurH[16];

bool setResolution(int nEncChl,int w,int h)
{

if(nCurW[nEncChl]!=w||nCurH[nEncChl]!=h){

nCurW[nEncChl]=w;
nCurH[nEncChl]=h;
////////////////////////////
//如果必要,这个通道,暂停编码,修改配置,这个和海思接口衔接即可
//设置新的属性
//再次开启编码

}   
return true;
}

//当然,你通过全局变量方式,也可以自定义关键的数据结构,用来保存开始的参数以及现在的参数,然后等到所有参数都修改后,统一根据情况应用这些参数。

hiuser

0个粉丝

8

问答

0

专栏

1

资料

hiuser 2016-08-29 14:33:36
认可0
demo中,肯定有配置的接口,先找几个简单参数,后续再做扩展

JACK_ZHANG

0个粉丝

5

问答

0

专栏

0

资料

JACK_ZHANG 2016-08-30 13:43:51
认可0
慢慢拆吧,这个我觉得还是需要自己来,理解功能的实现,自己传参数而已,封装个接口应该不难,想控制那些变量,你手动改的那些地方接收你传递的变量就可以了,最简单就这样,但是函数之间最好能相互独立,全局变量少定义,这就看你自己如何封装了
或将文件直接拖到这里
悬赏:
E币
网盘
* 网盘链接:
* 提取码:
悬赏:
E币

Markdown 语法

  • 加粗**内容**
  • 斜体*内容*
  • 删除线~~内容~~
  • 引用> 引用内容
  • 代码`代码`
  • 代码块```编程语言↵代码```
  • 链接[链接标题](url)
  • 无序列表- 内容
  • 有序列表1. 内容
  • 缩进内容
  • 图片![alt](url)
+ 添加网盘链接/附件

Markdown 语法

  • 加粗**内容**
  • 斜体*内容*
  • 删除线~~内容~~
  • 引用> 引用内容
  • 代码`代码`
  • 代码块```编程语言↵代码```
  • 链接[链接标题](url)
  • 无序列表- 内容
  • 有序列表1. 内容
  • 缩进内容
  • 图片![alt](url)
相关问答
无更多相似问答 去提问
举报反馈

举报类型

  • 内容涉黄/赌/毒
  • 内容侵权/抄袭
  • 政治相关
  • 涉嫌广告
  • 侮辱谩骂
  • 其他

详细说明

易百纳技术社区