懒洋洋

懒洋洋

0个粉丝

5

问答

0

专栏

0

资料

懒洋洋  发布于  2016-03-19 18:21:12
采纳率 0%
5个问答
19229

音频(sample_audio)+视频(rtsp)不能同时运行

 
新买的板子想要采集video和audio两部分并发送出来,sample_audio可以采集音频,rtsp程序可以采集视频,单独运行都没有问题,但是两个程序一起运行时,先打开的进程select就会报错,这个位置:SAMPLE_COMM_AUDIO_AencProc get aenc stream select time out
求大神帮忙
我来回答
回答45个
时间排序
认可量排序

懒洋洋

0个粉丝

5

问答

0

专栏

0

资料

懒洋洋 2016-03-19 18:22:58
认可0
如果将两个程序柔和成一个进程,video和audio是不是每个都要创建一个group?,只有chnnl可以吗??

pumeisc

1个粉丝

13

问答

0

专栏

0

资料

pumeisc 2016-03-21 16:15:37
认可0
同问,被一样的问题困扰

zhuangweiye

8个粉丝

0

问答

0

专栏

0

资料

zhuangweiye 2016-03-21 16:22:39
认可0

sample中都有海思初始化的动作SAMPLE_COMM_SYS_Init()
而这个函数一上来就会调用   
    HI_MPI_SYS_Exit();
    HI_MPI_VB_Exit();
意味着,后面的进程会把前一个进程初始化的动作全退出了

把audio的相关代码放到 video的代码里面就好了

懒洋洋

0个粉丝

5

问答

0

专栏

0

资料

懒洋洋 2016-03-21 21:23:05
认可0
[quote][url=forum.php?mod=redirect&goto=findpost&pid=27066&ptid=10532]zhuangweiye 发表于 2016-3-21 16:22[/url]
sample中都有海思初始化的动作SAMPLE_COMM_SYS_Init()
而这个函数一上来就会调用   
    HI_MPI_SYS_E ...[/quote]

你好 先非常感谢你, 我已经看到这两行代码了,明天试一下是否可行,那我如果把后运行的进程这两行代码屏蔽掉, 可以吗? SAMPLE_COMM_SYS_Init还能否初始化成功?

zhuangweiye

8个粉丝

0

问答

0

专栏

0

资料

zhuangweiye 2016-03-22 08:10:55
认可0
应该不行, VB是上来初始化好的
如果去掉这两行,你后面视频的代码将无法开出VB, 意味视频的部分无法正常工作

音频的相关代码不多,copy到视频的代码中就好了,用一个初始化的动作,其他互相不干扰

懒洋洋

0个粉丝

5

问答

0

专栏

0

资料

懒洋洋 2016-03-22 09:09:31
认可0
[quote][url=forum.php?mod=redirect&goto=findpost&pid=27102&ptid=10532]zhuangweiye 发表于 2016-3-22 08:10[/url]
应该不行, VB是上来初始化好的
如果去掉这两行,你后面视频的代码将无法开出VB, 意味视频的部分无法正常工 ...[/quote]

我仔细看了代码, 在video和audio中SAMPLE_COMM_SYS_Init这个初始化函数都是相同的,惟一的不同是video调用这个函数时传进来的VB_CONF_S *pstVbConf参数有进行一个初始化, 而audio传进来的参数被memset为0了,那我把audio代码放到video中,直接用video的SAMPLE_COMM_SYS_Init初始化函数不做修改,这样可以吗?如果需要修改,具体改那个地方呢?

zhuangweiye

8个粉丝

0

问答

0

专栏

0

资料

zhuangweiye 2016-03-22 09:55:16
认可0
用video的 VB就可以了, audio不需要VB

懒洋洋

0个粉丝

5

问答

0

专栏

0

资料

懒洋洋 2016-03-22 11:19:24
认可0
[quote][url=forum.php?mod=redirect&goto=findpost&pid=27109&ptid=10532]zhuangweiye 发表于 2016-3-22 09:55[/url]
用video的 VB就可以了, audio不需要VB[/quote]

好 我试试 有问题再请教您

懒洋洋

0个粉丝

5

问答

0

专栏

0

资料

懒洋洋 2016-03-25 09:32:38
认可0
[quote][url=forum.php?mod=redirect&goto=findpost&pid=27109&ptid=10532]zhuangweiye 发表于 2016-3-22 09:55[/url]
用video的 VB就可以了, audio不需要VB[/quote]

你好 请问我想开启回声抵消功能,
        gs_enPayloadType = PT_G711A;                //PT_G711U   PT_ADPCMA    PT_G726    PT_LPCM

    /* init stAio. all of cases will use it */
    stAioAttr.enSamplerate = AUDIO_SAMPLE_RATE_8000;
    stAioAttr.enBitwidth = AUDIO_BIT_WIDTH_16;
    stAioAttr.enWorkmode = AIO_MODE_I2S_MASTER;
    stAioAttr.enSoundmode = AUDIO_SOUND_MODE_MONO;
    stAioAttr.u32EXFlag = 1;
        stAioAttr.u32FrmNum = 30;                       
    stAioAttr.u32PtNumPerFrm = 160;                /* modify */
    stAioAttr.u32ChnCnt = 2;
    stAioAttr.u32ClkSel = 1;

这样设置为啥不行

zhuangweiye

8个粉丝

0

问答

0

专栏

0

资料

zhuangweiye 2016-03-25 09:51:37
认可0
"这样设置为啥不行"
不是太明白, 哪个函数出错了, 错误码是什么?

懒洋洋

0个粉丝

5

问答

0

专栏

0

资料

懒洋洋 2016-03-25 10:16:06
认可0
[quote][url=forum.php?mod=redirect&goto=findpost&pid=27371&ptid=10532]zhuangweiye 发表于 2016-3-25 09:51[/url]
"这样设置为啥不行"
不是太明白, 哪个函数出错了, 错误码是什么?[/quote]

你好, 没有报错,但是在SAMPLE_COMM_AUDIO_AencProc函数中,fwrite(stStream.pStream + 4,stStream.u32Len - 4, 1,pstAencCtl->pfd); 把数据写在文件中,好像只有底噪,没听到我发出的声音

zhuangweiye

8个粉丝

0

问答

0

专栏

0

资料

zhuangweiye 2016-03-25 10:32:25
认可0
"我想开启回声抵消功能,"

1.你的状态是开启了还是没开启
2. 不开启的时候声音是否是好的
3. 开启了是什么状态
4. 开启用了哪些代码


另外,没有错误,可以看看/proc/umap/Ai

懒洋洋

0个粉丝

5

问答

0

专栏

0

资料

懒洋洋 2016-03-25 15:34:54
认可0
[quote][url=forum.php?mod=redirect&goto=findpost&pid=27377&ptid=10532]zhuangweiye 发表于 2016-3-25 10:32[/url]
"我想开启回声抵消功能,"

1.你的状态是开启了还是没开启
[/quote]

我现在把audio和video融合到一个线程里,audio和video各开了一个线程处理,在video线程中调用了SAMPLE_COMM_SYS_Init函数初始化,然后在audio线程中不调用此函数,然后AI就启动不了,函数:HI_MPI_AI_SetPubAttr报错,返回值:0xa0158010, 请问您之前是说audio不用初始化是如何实现的?

zhuangweiye

8个粉丝

0

问答

0

专栏

0

资料

zhuangweiye 2016-03-25 15:53:20
认可0
video/Audio的流程
初始化->创建读码流线程

你把video的初始化做完,然后再作auidio的初始化,然后再创建video的读码流线程,再创建读audio的读码流线程,就好了呀

就是把sample里面 video的函数以及audio的函数 和成一个函数(调用次序上合起来),而不是开两个线程去分别调用这两个函数


懒洋洋

0个粉丝

5

问答

0

专栏

0

资料

懒洋洋 2016-03-27 16:50:13
认可0
[quote][url=forum.php?mod=redirect&goto=findpost&pid=27409&ptid=10532]zhuangweiye 发表于 2016-3-25 15:53[/url]
video/Audio的流程
初始化->创建读码流线程

[/quote]

大神。。。我又遇到问题了 我现在想读取音频文件送到音频解码器再送到AO出声,就是sample_audio的SAMPLE_AUDIO_AdecAo这个分支,但是运行起来提示:adec chn 0 has no free buffer to save decode frame data,HI_MPI_ADEC_SendStream报错,错误代码:0xa018800f,,,

懒洋洋

0个粉丝

5

问答

0

专栏

0

资料

懒洋洋 2016-03-27 16:52:53
认可0
[quote][url=forum.php?mod=redirect&goto=findpost&pid=27535&ptid=10532]懒洋洋 发表于 2016-3-27 16:50[/url]
大神。。。我又遇到问题了 我现在想读取音频文件送到音频解码器再送到AO出声,就是sample_audio的SAMPLE_ ...[/quote]

原因应该是因为不停的往解码器缓冲里写数据,把缓冲区冲爆了,我要以一个什么频率送数据,或者需要计算一个时间戳?具体怎么实现?

zhuangweiye

8个粉丝

0

问答

0

专栏

0

资料

zhuangweiye 2016-03-28 08:09:30
认可0
可以注意两点:
1。确定Ao设置正确, 进入数据的速率大于出去的速率,会出现缓冲区满,一般来说只有回放音频可能有这个问题(当然音频预览时采集的采样率高于输出的也会)。
     可以利用HI_MPI_AO_QueryChnStat来查询某一通道缓冲是否满,不满才发数据
     当然也可以判断上面a018800f错误码,如果出现就延迟一段时间重发(不推荐)
2。如果是Aodev设成为slave, 那么就要注意 audio codec的设置是否正确,比如codec是否设成了master等等, 不然I2S信号不对,Ao上的数据是不会被读走的,从而导致缓冲区满

nschcl

0个粉丝

1

问答

0

专栏

0

资料

nschcl 2016-03-28 08:26:17
认可0
路过来学习一下

懒洋洋

0个粉丝

5

问答

0

专栏

0

资料

懒洋洋 2016-03-30 16:12:42
认可0
[quote][url=forum.php?mod=redirect&goto=findpost&pid=27560&ptid=10532]zhuangweiye 发表于 2016-3-28 08:09[/url]
可以注意两点:
1。确定Ao设置正确, 进入数据的速率大于出去的速率,会出现缓冲区满,一般来说只有回放音 ...[/quote]

你好,,,经过指点最近有大进展,实现了音视频的RTP发送,并且能够通过UDP接受外部音频解码播放,但是声音出现噪声,请问启用回声消除功能是否会有所改善,其他方面还有哪些会导致输出噪音呢?

zhuangweiye

8个粉丝

0

问答

0

专栏

0

资料

zhuangweiye 2016-03-30 16:49:16
认可0
回声抵消 一般是解决 AO输出的声音进入AI,导致录下来的声音有AO输出的声音的问题

例子是当电话使用免提时, 扬声器和麦克风很近, 扬声器出来的声音会跑到麦克风里面去,严重时会出现啸叫,
回声抵消就是消除这种现象

一般情况输出音频有噪声, 可以看几点
1.  数据源是否有问题, (比如外部编码数据,可以在PC上先解码听一下是否有噪声)
2. 送/取数据是否正确,  这里要注意一点海思的音频数据是有一个头的, 送去海思播放解码时要自己添头, 从海思拿数据要去掉头
3. 如果是编码的音频, 看看解码是否正确(这个有问题的可能性很低, 一般只要检查格式对不对)
4. Ao设置正确, A/D设置正确(可以用PC上录好的PCM格式的音频文件来测试)
5. 如果以上都OK,还是有噪声, 那么就很不幸是硬件问题了
加载中···
或将文件直接拖到这里
悬赏:
E币
网盘
* 网盘链接:
* 提取码:
悬赏:
E币

Markdown 语法

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

Markdown 语法

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

举报类型

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

详细说明

易百纳技术社区