Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

AudioQueueStart is returning error code -50

Start audio recording giving error sometimes and below method returns error

Error Domain=NSOSStatusErrorDomain Code=-50 "(null)" UserInfo= status = AudioQueueStart(_state.queue, NULL);

Followed below steps for recording audo -

  1. Created a new audio queue for recording audio data.

    status = AudioQueueNewInput(&_state.dataFormat, AudioInputCallback, &_state, CFRunLoopGetCurrent(), kCFRunLoopCommonModes, 0, &_state.queue);

  2. Sets an audio queue property value.

    status = AudioQueueSetProperty(_state.queue,kAudioQueueProperty_EnableLevelMetering,&on,sizeof(on));

  3. an audio queue to allocate a buffer.

    status = AudioQueueAllocateBuffer(_state.queue, buffer_size, &_state.buffers[i]);

  4. Assigns a buffer to an audio queue for recording or playback.

    status = AudioQueueEnqueueBuffer (_state.queue, _state.buffers[i], 0, NULL);

  5. Added a listener callback for a property.

    status = AudioQueueAddPropertyListener(_state.queue, kAudioQueueProperty_IsRunning, recordingRunningChangedCallback, &_state);

  6. Begins playing or recording audio.

    status = AudioQueueStart(_state.queue, NULL);

And last steps returns error with

error code -50

like image 998
Sudhakar Tharigoppula Avatar asked Feb 14 '26 05:02

Sudhakar Tharigoppula


1 Answers

I've just had the same issue. For whatever reason calling AudioQueueStart twice did the trick for me:

status = AudioQueueStart(_state.queue, NULL);
if (status == -50) {
    status = AudioQueueStart(_state.queue, NULL);
}
like image 104
user2378197 Avatar answered Feb 16 '26 18:02

user2378197



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!