오디오 대기열 서비스을 내 애플리케이션에 사용합니다. 그들은 항상 동일하지iOS, 오디오 대기열 : 버퍼 크기가 맞지 않습니다.
30000
30000
30000
26928
30000
30000
다음 inNumberPacketDescriptions로 만들어집니다
AudioQueueAllocateBuffer(mQueue, 30000, &mBuffers[i]);
을하지만 콜백의 후속 호출 : 버퍼를 할당 할 때, 나는 30000 개 샘플 버퍼 크기를 설정 30000까지. 왜? (CAStreamBasicDescription 사용)
기록 포맷의 구성 :
mRecordFormat.mSampleRate = kSampleRate;
mRecordFormat.mChannelsPerFrame = 1;
mRecordFormat.mFormatID = kAudioFormatLinearPCM;
mRecordFormat.mFormatFlags = kLinearPCMFormatFlagIsSignedInteger | kLinearPCMFormatFlagIsPacked;
mRecordFormat.mBitsPerChannel = 16;
mRecordFormat.mBytesPerPacket = mRecordFormat.mBytesPerFrame = (mRecordFormat.mBitsPerChannel/8) * mRecordFormat.mChannelsPerFrame;
mRecordFormat.mFramesPerPacket = 1;
3 버퍼가 사용된다.
단일 녹음 세션에 있습니까? 일반적으로 마지막 덩어리는 30000 개 미만입니다. 왜냐하면 그 많은 샘플이 없기 때문입니다. 패킷 수가 30000 미만인 지점에서 녹음을 일시 중지하고 다시 시작 하시겠습니까? 또한'AudioStreamBasicDescription'에서 어떻게 데이터 포맷을 설정 했습니까? – Anurag
일시 중지 또는 중지가 없습니다. 첨부 된 레코드 형식 구성. – alexey