AnyChat技术支持论坛

标题: Android AudioRecord初始化失败问题,求解决。 [打印本页]

作者: guowz    时间: 2015-9-24 10:49
标题: Android AudioRecord初始化失败问题,求解决。
09-24 09:43:40.525: W/System.err(3271): java.lang.IllegalStateException: startRecording() called on an uninitialized AudioRecord.
09-24 09:43:40.525: W/System.err(3271):         at android.media.AudioRecord.startRecording(AudioRecord.java:522)
09-24 09:43:40.525: W/System.err(3271):         at com.bairuitech.anychat.AnyChatAudioHelper$RecordAudioThread.run(AnyChatAudioHelper.java:249)


作者: 佰锐科技-李友勤    时间: 2015-9-24 11:25
您好,请问是在哪里运行的呢?
作者: guowz    时间: 2015-9-24 11:46
佰锐科技-李友勤 发表于 2015-9-24 11:25
您好,请问是在哪里运行的呢?

在eclipse上,
09-24 09:40:19.620: E/AudioRecord(2837): AudioFlinger could not create record track, status: -1
09-24 09:40:19.630: E/AudioRecord-JNI(2837): Error creating AudioRecord instance: initialization check failed.
09-24 09:40:19.630: E/android.media.AudioRecord(2837): Error code -20 when initializing native AudioRecord object.
作者: 佰锐科技-邵光清    时间: 2015-9-24 11:50
您好,请将完整log信息发上来方便分析。
作者: guowz    时间: 2015-9-24 11:51
佰锐科技-邵光清 发表于 2015-9-24 11:50
您好,请将完整log信息发上来方便分析。

09-24 09:43:23.440: I/ANYCHAT(3271): 09:43:23(443)        Invoke        Connect(demo.anychat.cn,8906)=0
09-24 09:43:23.445: I/ANYCHAT(3271): 09:43:23(447)        Invoke        LoginServer(username=gzgamut3)
09-24 09:43:23.505: I/ANYCHAT(3271): 09:43:23(510)        CheckClientSocketLink         Connect(ip=121.199.51.198,port=8906)
09-24 09:43:23.630: I/ANYCHAT(3271): 09:43:23(632)        Server version: V5.3(Build Time:2015-08-24 16:09:53, Server OS:Windows)
09-24 09:43:23.710: I/ANYCHAT(3271): 09:43:23(715)        Message        OnConnect(bSuccess:1, errorcode=0)
09-24 09:43:24.030: I/ANYCHAT(3271): initSdk
09-24 09:43:24.030: I/ANYCHAT(3271): 09:43:24(37)        Apply video parameter:320x240, bitrate:150kbps, quality:0, gop:40, fps:10, preset:3, codec:0
09-24 09:43:24.035: I/ANYCHAT(3271): 09:43:24(37)        Invoke        SetSDKOption(BRAC_SO_NETWORK_P2PPOLITIC=1)
09-24 09:43:24.035: I/ANYCHAT(3271): 09:43:24(37)        Invoke        SetSDKOption(BRAC_SO_AUDIO_ECHOCTRL,1)
09-24 09:43:24.035: I/ANYCHAT(3271): 09:43:24(37)        Invoke        SetSDKOption(BRAC_SO_CORESDK_USEHWCODEC=0)
09-24 09:43:24.035: I/ANYCHAT(3271): initSdk
09-24 09:43:24.135: I/ANYCHAT(3271): 09:43:24(141)        Message        OnLoginSystem(userid=4776,errorcode=0,username=gzgamut3), msg deliver worked(0)
09-24 09:43:24.140: I/ANYCHAT(3271): 09:43:24(142)        Server running time: 30 days, 8 hours, 48 minutes, license mode:1
09-24 09:43:24.490: I/ANYCHAT(3271): 09:43:24(495)        Connection to streaming media server successfully!(udp delay:176ms)
09-24 09:43:24.900: I/ANYCHAT(3271): OnAnyChatUserInfoUpdate
09-24 09:43:34.315: I/ANYCHAT(3271): OnAnyChatUserInfoUpdate
09-24 09:43:35.360: I/ANYCHAT(3271): OnAnyChatUserInfoUpdate
09-24 09:43:35.840: I/ANYCHAT(3271): 09:43:35(845)        Invoke        VideoCallControl(EventType:1, UserId:4774, ErrorCode:0, dwFlags:0, dwParam:0, UserStr=0
09-24 09:43:35.915: I/ANYCHAT(3271): 09:43:35(917)        Message        OnVideoCallEvent(EventType:2, UserId:4774, ErrorCode:0, dwFlags:0x0, dwParam:0
09-24 09:43:38.530: I/ANYCHAT(3271): OnAnyChatUserInfoUpdate
09-24 09:43:39.525: I/ANYCHAT(3271): 09:43:39(530)        Message        OnVideoCallEvent(EventType:3, UserId:4774, ErrorCode:0, dwFlags:0x0, dwParam:1
09-24 09:43:39.655: I/dalvikvm-heap(3271): Grow heap (frag case) to 41.816MB for 8294416-byte allocation
09-24 09:43:39.870: I/ANYCHAT(3271): VIDEOCAPTRUE---JAVA
09-24 09:43:39.870: I/ANYCHAT(3271): VIDEOSHOW---JAVA
09-24 09:43:39.875: I/video(3271): 9
09-24 09:43:39.875: I/video(3271): 10
09-24 09:43:39.875: I/ControlRobotsActivity(3271): 6
09-24 09:43:39.875: I/onCreate(3271): init
09-24 09:43:39.875: I/System.out(3271): selfUserId = 4776
09-24 09:43:39.875: I/ANYCHAT(3271): 09:43:39(880)        Invoke        EnterRoom(roomid=1)
09-24 09:43:39.875: I/onCreate(3271): id
09-24 09:43:39.950: I/ANYCHAT(3271): 09:43:39(956)        Message        OnEnterRoom(roomid=1,errorcode=0,siteindex=4)
09-24 09:43:39.955: I/ANYCHAT(3271): 09:43:39(957)        Audio Playback Device Init(0, 1, 16000, 16), Default Playback Driver
09-24 09:43:39.995: I/ANYCHAT(3271): 09:43:39(998)        Message        OnReceiveOnlineUser(count=6,roomid=1)
09-24 09:43:40.215: I/ANYCHAT(3271): allocate: device orientation=0, camera orientation=270, facing=1
09-24 09:43:40.225: I/ANYCHAT(3271): 09:43:40(231)        APPLOG        Camera Preview size: 176 x 144
09-24 09:43:40.230: I/ANYCHAT(3271): 09:43:40(232)        APPLOG        Camera Preview size: 352 x 288
09-24 09:43:40.230: I/ANYCHAT(3271): 09:43:40(233)        APPLOG        Camera Preview size: 320 x 240
09-24 09:43:40.230: I/ANYCHAT(3271): 09:43:40(234)        APPLOG        Camera FrameRate: 1000 , 35000
09-24 09:43:40.305: I/ANYCHAT(3271): 09:43:40(311)        Invoke        SetSDKOption(BRAC_SO_CORESDK_EXTVIDEOINPUT=1)
09-24 09:43:40.305: I/ANYCHAT(3271): 09:43:40(311)        Invoke        SetInputVideoFormat(pixfmt:8, 320x240, 35fps, flags:0)
09-24 09:43:40.305: I/ANYCHAT(3271): 09:43:40(312)        video init finish:320x240, NV21, fps:35, codecid:1
09-24 09:43:40.460: I/ANYCHAT(3271): 09:43:40(466)        Invoke        UserCameraControl(userid=-1, bOpen=1, stream=0)
09-24 09:43:40.460: I/ANYCHAT(3271): 09:43:40(466)        Invoke        UserSpeakControl(userid=-1,bOpen=1)
09-24 09:43:40.460: I/ANYCHAT(3271): 09:43:40(466)        Invoke        UserCameraControl(userid=4774, bOpen=1, stream=0)
09-24 09:43:40.460: I/ANYCHAT(3271): 09:43:40(467)        Invoke        UserSpeakControl(userid=4774,bOpen=1)
09-24 09:43:40.490: I/ANYCHAT(3271): 09:43:40(493)        Invoke        SetSDKOption(BRAC_SO_CORESDK_EXTVIDEOINPUT=1)
09-24 09:43:40.490: I/ANYCHAT(3271): 09:43:40(496)        Invoke        SetInputVideoFormat(pixfmt:8, 320x240, 30fps, flags:0)
09-24 09:43:40.490: I/ANYCHAT(3271): 09:43:40(496)        video init finish:320x240, NV21, fps:30, codecid:1
09-24 09:43:40.500: I/ANYCHAT(3271): 09:43:40(502)        On Remote UserCameraControl(dwUserId:4774, bOpen:1)
09-24 09:43:40.500: E/AudioRecord(3271): AudioFlinger could not create record track, status: -1
09-24 09:43:40.505: I/ANYCHAT(3271): 09:43:40(508)        On Remote UserSpeakControl(dwUserId:4774, bOpen:1)
09-24 09:43:40.520: E/AudioRecord-JNI(3271): Error creating AudioRecord instance: initialization check failed.
09-24 09:43:40.520: E/android.media.AudioRecord(3271): Error code -20 when initializing native AudioRecord object.
09-24 09:43:40.520: I/ANYCHAT(3271): 09:43:40(525)        Invoke        SetInputAudioFormat(1, 16000, 16, flags:0)
09-24 09:43:40.520: I/ANYCHAT(3271): 09:43:40(525)        Audio Init, error:0, device:-1, 1, 16000, 16, capmode:0
09-24 09:43:40.520: I/ANYCHAT(3271): 09:43:40(526)        Audio codec init, handle:1, 11, 1, 16000, 16, 15850
09-24 09:43:40.520: I/android.media.AudioRecord(3271): startRecording
09-24 09:43:40.525: W/System.err(3271): java.lang.IllegalStateException: startRecording() called on an uninitialized AudioRecord.
09-24 09:43:40.525: W/System.err(3271):         at android.media.AudioRecord.startRecording(AudioRecord.java:522)
09-24 09:43:40.525: W/System.err(3271):         at com.bairuitech.anychat.AnyChatAudioHelper$RecordAudioThread.run(AnyChatAudioHelper.java:249)
09-24 09:43:40.575: I/ANYCHAT(3271): 09:43:40(578)        video codec init:codec:1, 10fps, 320x240, bitrate:150kbps, quality:0, preset:3, gop:40, handle:2
09-24 09:43:40.640: I/ANYCHAT(3271): 09:43:40(645)        userid(4774) audio decode, codec:11, 1 channel, 16000Hz
09-24 09:43:40.695: I/ANYCHAT(3271): 09:43:40(698)        userid(4774) video decode, codec:1, 320x240, delay:9ms
09-24 09:43:44.445: I/ANYCHAT(3271): 09:43:44(448)        Message        OnVideoCallEvent(EventType:4, UserId:4774, ErrorCode:0, dwFlags:0x0, dwParam:4774
09-24 09:43:44.475: I/ANYCHAT(3271): initSdk
09-24 09:43:45.000: I/ANYCHAT(3271): 09:43:45(3)        Invoke        UserCameraControl(userid=-1, bOpen=0, stream=0)
09-24 09:43:45.000: I/ANYCHAT(3271): 09:43:45(4)        Invoke        UserSpeakControl(userid=-1,bOpen=0)
09-24 09:43:45.000: I/ANYCHAT(3271): 09:43:45(4)        Invoke        UserSpeakControl(userid=4774,bOpen=0)
09-24 09:43:45.000: I/ANYCHAT(3271): 09:43:45(6)        Invoke        UserCameraControl(userid=4774, bOpen=0, stream=0)
09-24 09:43:45.110: I/ANYCHAT(3271): 09:43:45(113)        Invoke        LeaveRoom(roomid=-1)        Elapse:105 ms
09-24 09:43:45.125: I/ANYCHAT(3271): 09:43:45(131)        Invoke        SetSDKOption(BRAC_SO_CORESDK_EXTVIDEOINPUT=0)
09-24 09:43:45.125: I/android.media.AudioRecord(3271): stopRecording
09-24 09:43:45.210: I/ANYCHAT(3271): 09:43:45(213)        On Remote UserSpeakControl(dwUserId:4774, bOpen:0)
09-24 09:43:45.210: I/ANYCHAT(3271): 09:43:45(214)        On Remote UserCameraControl(dwUserId:4774, bOpen:0)

作者: guowz    时间: 2015-9-24 11:52
佰锐科技-邵光清 发表于 2015-9-24 11:50
您好,请将完整log信息发上来方便分析。

可以视频,但是没有声音。我是根据AnyChatCallCenter来更改。
作者: 佰锐科技-邵光清    时间: 2015-9-24 12:07
guowz 发表于 2015-9-24 11:52
可以视频,但是没有声音。我是根据AnyChatCallCenter来更改。

视频正常,听不到远端的声音是吗?试试运行我们的demo程序是否有问题。
作者: guowz    时间: 2015-9-24 12:12
佰锐科技-邵光清 发表于 2015-9-24 12:07
视频正常,听不到远端的声音是吗?试试运行我们的demo程序是否有问题。

你们的demo没问题,我拿我的更改的项目和demo视频,我更改的项目能听到demo传出来的声音,我更改项目的那端传的声音,demo端听不到。

作者: guowz    时间: 2015-9-24 12:14
佰锐科技-邵光清 发表于 2015-9-24 12:07
视频正常,听不到远端的声音是吗?试试运行我们的demo程序是否有问题。

但是我就把你们demo的视频时间取消,集成上我的项目。然后问题就来了。看了下log好像说是没有初始化,但是我看了又初始化,就是项目不经过startReconding这里,就出现了illegstateException的异常。
作者: admin    时间: 2015-9-24 12:22
09-24 09:43:40.520: E/AudioRecord-JNI(3271): Error creating AudioRecord instance: initialization check failed.
09-24 09:43:40.520: E/android.media.AudioRecord(3271): Error code -20 when initializing native AudioRecord object.

您的项目里面,其它地方是不是也初始化了音频采集模块(AudioRecord),导致资源被占用了?
作者: guowz    时间: 2015-9-24 12:29
admin 发表于 2015-9-24 12:22
您的项目里面,其它地方是不是也初始化了音频采集模块(AudioRecord),导致资源被占用了?

没有,项目关于视频和音频里调用的都是调用AnyChatCoreSDK里面的UserSpeakControl和UserCameraControl
作者: guowz    时间: 2015-9-24 12:33
admin 发表于 2015-9-24 12:22
您的项目里面,其它地方是不是也初始化了音频采集模块(AudioRecord),导致资源被占用了?

没有,关于音频都是根据demo,调用sdk中的UserSpeakControl

作者: 佰锐科技-邵光清    时间: 2015-9-24 13:56
guowz 发表于 2015-9-24 12:33
没有,关于音频都是根据demo,调用sdk中的UserSpeakControl

您好,有没有加上权限了呢,<uses-permission android:name="android.permission.RECORD_AUDIO" />,请检查一下。
作者: guowz    时间: 2015-9-24 14:08
佰锐科技-邵光清 发表于 2015-9-24 13:56
您好,有没有加上权限了呢,,请检查一下。

权限放了。
作者: 佰锐科技-邵光清    时间: 2015-9-24 14:31
guowz 发表于 2015-9-24 14:08
权限放了。

嗯,是否有其他应用占用了音频采集模块呢?试试关掉所有后台应用,或者换一个手机来测试。




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