AnyChat技术支持论坛

标题: 进入房间后一直在打印log [打印本页]

作者: njcitwshy    时间: 2013-11-5 10:11
标题: 进入房间后一直在打印log
一直在打印Underrun user: 0, server: 0, flags 0013该log,然后获取不到房间的人数,输入一段时间的log程序自动奔溃,大虾们出来讨论讨论啥子原因

作者: 廖斌    时间: 2013-11-5 10:30
您好。这种情况在我们标准的demo上面存在吗?
作者: 佰锐技术-卓剑锐    时间: 2013-11-5 10:30
你好,你用的是我们的官方demo么?
作者: njcitwshy    时间: 2013-11-6 08:49
官方demo出现过,刚刚测试了一下,官方demo没有该情况出现,请问这个是什么原因导致的呢,打印的log中tag是AudioTrack,有时候出现,有时候不出现,出现的时候在线人员列表无反应
作者: admin    时间: 2013-11-6 08:58
您好,根据您的log来看,不是AnyChat内核输出的,但至于是什么原因导致AnyChat之外的其他模块输出了上面的log,还请您再仔细排查一下。

另外在您的程序中,每次都会输出上面的log吗?
作者: njcitwshy    时间: 2013-11-6 10:35
这个是内核输出的,经常我进入房间开始就一直输出这句话,
bool AudioTrack::processAudioBuffer(const sp<AudioTrackThread>& thread)
{
    Buffer audioBuffer;
    uint32_t frames;
    size_t writtenSize;
    // Manage underrun callback
    if (mActive && (mCblk->framesReady() == 0)) {
        LOGV("Underrun user: %x, server: %x, flags %04x", mCblk->user, mCblk->server, mCblk->flags);
        if ((mCblk->flags & CBLK_UNDERRUN_MSK) == CBLK_UNDERRUN_OFF) {
            mCbf(EVENT_UNDERRUN, mUserData, 0);
            if (mCblk->server == mCblk->frameCount) {
                mCbf(EVENT_BUFFER_END, mUserData, 0);
            }
            mCblk->flags |= CBLK_UNDERRUN_ON;
            if (mSharedBuffer != 0) return false;
        }
    },这个是内核的代码
作者: 廖斌    时间: 2013-11-6 10:51
njcitwshy 发表于 2013-11-6 10:35
这个是内核输出的,经常我进入房间开始就一直输出这句话,
bool AudioTrack::processAudioBuffer(const sp ...

您好。这个情况有可能是音频模块造成的。请问你的程序使用的是Java音频采集播放模式还是内核采集、播放模式?
作者: admin    时间: 2013-11-6 10:53
您好,您可以尝试将音频采集、播放均修改为“内核驱动模式”,看上述log是否还会输出?
作者: njcitwshy    时间: 2013-11-6 11:07
本地视频采集驱动(0 默认, 1 Linux驱动,3 Java驱动,采用默认吗?
作者: 廖斌    时间: 2013-11-6 11:19
njcitwshy 发表于 2013-11-6 11:07
本地视频采集驱动(0 默认, 1 Linux驱动,3 Java驱动,采用默认吗?

标准demo默认采用的是Java模式,你的程序用的是什么模式呢?通过hallactivity中的ApplyVideoConfig函数设置的
作者: admin    时间: 2013-11-6 11:20
njcitwshy 发表于 2013-11-6 11:07
本地视频采集驱动(0 默认, 1 Linux驱动,3 Java驱动,采用默认吗?

这个是视频采集驱动,您需要关注一下音频采集、播放的驱动,谢谢。
作者: njcitwshy    时间: 2013-11-6 12:24
我都用的是java的模式,是放在酷派的android机子上测试的,系统4.1.2
作者: 廖斌    时间: 2013-11-6 12:48
njcitwshy 发表于 2013-11-6 12:24
我都用的是java的模式,是放在酷派的android机子上测试的,系统4.1.2

哦,你试试音频的采集、播放驱动改成内核模式看看效果
作者: njcitwshy    时间: 2013-11-7 09:32
改成内核模式依然还是那样,而且我跑了你们提供的demo,也有该情况发生,一进入房间就开始无限打印LOG
作者: admin    时间: 2013-11-7 09:37
您好,换一个android设备测试呢,问题是否依然存在?该问题可能与android内核有关。
作者: njcitwshy    时间: 2013-11-7 09:41
用模拟器跑没有问题,我用的酷派的一款,这边没有其他测试机,你们那边没有这个现象吗?
作者: admin    时间: 2013-11-7 09:43
这个问题应该只在特定的机器上出现,可能与硬件厂家的android内核的实现有关,您可以用HTC、Samsung、moto等机器试一下,应该都是正常的。




欢迎光临 AnyChat技术支持论坛 (http://bbs.anychat.cn/) Powered by Discuz! X3