Lines Matching refs:context
41 PRIVATE OI_STATUS FindSyncword(OI_CODEC_SBC_DECODER_CONTEXT *context, in FindSyncword() argument
55 if (context->limitFrameFormat && context->enhancedEnabled){ in FindSyncword()
58 } else if (context->enhancedEnabled == FALSE) { in FindSyncword()
70 context->common.frameInfo.enhanced = (**frameData == OI_SBC_ENHANCED_SYNCWORD); in FindSyncword()
87 context->common.frameInfo.enhanced = FALSE; in FindSyncword()
98 static OI_STATUS DecodeBody(OI_CODEC_SBC_DECODER_CONTEXT *context, in DecodeBody() argument
105 …OI_UINT frameSamples = context->common.frameInfo.nrof_blocks * context->common.frameInfo.nrof_subb… in DecodeBody()
111 … if (*pcmBytes < (sizeof(OI_INT16) * frameSamples * context->common.pcmStride) && !allowPartial) { in DecodeBody()
116 …} else if (*pcmBytes < sizeof (OI_INT16) * context->common.frameInfo.nrof_subbands * context->comm… in DecodeBody()
122 if (context->bufferedBlocks == 0) { in DecodeBody()
124 OI_SBC_ReadScalefactors(&context->common, bodyData, &bs); in DecodeBody()
127 OI_SBC_ComputeBitAllocation(&context->common); in DecodeBody()
130 if (context->common.frameInfo.mode == SBC_JOINT_STEREO) { in DecodeBody()
131 OI_SBC_ReadSamplesJoint(context, &bs); in DecodeBody()
133 OI_SBC_ReadSamples(context, &bs); in DecodeBody()
136 context->bufferedBlocks = context->common.frameInfo.nrof_blocks; in DecodeBody()
140 …decode_block_count = *pcmBytes / sizeof(OI_INT16) / context->common.pcmStride / context->common.fr… in DecodeBody()
142 if (decode_block_count > context->bufferedBlocks) { in DecodeBody()
143 decode_block_count = context->bufferedBlocks; in DecodeBody()
147 decode_block_count = context->common.frameInfo.nrof_blocks; in DecodeBody()
152 OI_UINT start_block = context->common.frameInfo.nrof_blocks - context->bufferedBlocks; in DecodeBody()
153 OI_SBC_SynthFrame(context, pcmData, start_block, decode_block_count); in DecodeBody()
156 OI_ASSERT(context->bufferedBlocks >= decode_block_count); in DecodeBody()
157 context->bufferedBlocks -= decode_block_count; in DecodeBody()
159 frameSamples = decode_block_count * context->common.frameInfo.nrof_subbands; in DecodeBody()
164 if (context->common.frameInfo.nrof_channels == 1 && context->common.pcmStride == 2) { in DecodeBody()
174 *pcmBytes = frameSamples * sizeof(OI_INT16) * context->common.pcmStride; in DecodeBody()
175 if (context->bufferedBlocks > 0) { in DecodeBody()
182 PRIVATE OI_STATUS internal_DecodeRaw(OI_CODEC_SBC_DECODER_CONTEXT *context, in internal_DecodeRaw() argument
194 if (context->bufferedBlocks == 0) { in internal_DecodeRaw()
198 context->common.frameInfo.bitpool = bitpool; in internal_DecodeRaw()
202 bodyLen = OI_CODEC_SBC_CalculateFramelen(&context->common.frameInfo) - SBC_HEADER_LEN; in internal_DecodeRaw()
214 status = DecodeBody(context, *frameData, pcmData, pcmBytes, TRUE); in internal_DecodeRaw()
223 OI_STATUS OI_CODEC_SBC_DecoderReset(OI_CODEC_SBC_DECODER_CONTEXT *context, in OI_CODEC_SBC_DecoderReset() argument
230 …return internal_DecoderReset(context, decoderData, decoderDataBytes, maxChannels, pcmStride, enhan… in OI_CODEC_SBC_DecoderReset()
233 OI_STATUS OI_CODEC_SBC_DecodeFrame(OI_CODEC_SBC_DECODER_CONTEXT *context, in OI_CODEC_SBC_DecodeFrame() argument
246 status = FindSyncword(context, frameData, frameBytes); in OI_CODEC_SBC_DecodeFrame()
258 OI_SBC_ReadHeader(&context->common, *frameData); in OI_CODEC_SBC_DecodeFrame()
265 …if (context->limitFrameFormat && (context->common.frameInfo.subbands != context->restrictSubbands)… in OI_CODEC_SBC_DecodeFrame()
270 if (context->common.frameInfo.nrof_channels > context->common.maxChannels) { in OI_CODEC_SBC_DecodeFrame()
275 if (context->common.pcmStride < 1 || context->common.pcmStride > 2) { in OI_CODEC_SBC_DecodeFrame()
287 framelen = OI_CODEC_SBC_CalculateFramelen(&context->common.frameInfo); in OI_CODEC_SBC_DecodeFrame()
295 crc = OI_SBC_CalculateChecksum(&context->common.frameInfo, *frameData); in OI_CODEC_SBC_DecodeFrame()
296 if (crc != context->common.frameInfo.crc) { in OI_CODEC_SBC_DecodeFrame()
297 TRACE(("CRC Mismatch: calc=%02x read=%02x\n", crc, context->common.frameInfo.crc)); in OI_CODEC_SBC_DecodeFrame()
306 …if ((context->common.frameInfo.bitpool < SBC_MIN_BITPOOL) && !context->common.frameInfo.enhanced) { in OI_CODEC_SBC_DecodeFrame()
307 ERROR(("Bitpool too small: %d (must be >= 2)", context->common.frameInfo.bitpool)); in OI_CODEC_SBC_DecodeFrame()
310 if (context->common.frameInfo.bitpool > OI_SBC_MaxBitpool(&context->common.frameInfo)) { in OI_CODEC_SBC_DecodeFrame()
311 …OR(("Bitpool too large: %d (must be <= %ld)", context->common.frameInfo.bitpool, OI_SBC_MaxBitpool… in OI_CODEC_SBC_DecodeFrame()
321 status = DecodeBody(context, *frameData + SBC_HEADER_LEN, pcmData, pcmBytes, FALSE); in OI_CODEC_SBC_DecodeFrame()
331 OI_STATUS OI_CODEC_SBC_SkipFrame(OI_CODEC_SBC_DECODER_CONTEXT *context, in OI_CODEC_SBC_SkipFrame() argument
340 status = FindSyncword(context, frameData, frameBytes); in OI_CODEC_SBC_SkipFrame()
347 OI_SBC_ReadHeader(&context->common, *frameData); in OI_CODEC_SBC_SkipFrame()
348 framelen = OI_SBC_CalculateFrameAndHeaderlen(&context->common.frameInfo, &headerlen); in OI_CODEC_SBC_SkipFrame()
352 crc = OI_SBC_CalculateChecksum(&context->common.frameInfo, *frameData); in OI_CODEC_SBC_SkipFrame()
353 if (crc != context->common.frameInfo.crc) { in OI_CODEC_SBC_SkipFrame()
359 context->bufferedBlocks = 0; in OI_CODEC_SBC_SkipFrame()
425 PRIVATE void OI_SBC_ReadSamplesJoint4(OI_CODEC_SBC_DECODER_CONTEXT *context, OI_BITSTREAM *global_b… in OI_SBC_ReadSamplesJoint4() argument
432 PRIVATE void OI_SBC_ReadSamplesJoint8(OI_CODEC_SBC_DECODER_CONTEXT *context, OI_BITSTREAM *global_b… in OI_SBC_ReadSamplesJoint8() argument
439 typedef void (*READ_SAMPLES)(OI_CODEC_SBC_DECODER_CONTEXT *context, OI_BITSTREAM *global_bs);
449 PRIVATE void OI_SBC_ReadSamplesJoint(OI_CODEC_SBC_DECODER_CONTEXT *context, OI_BITSTREAM *global_bs) in OI_SBC_ReadSamplesJoint() argument
451 OI_CODEC_SBC_COMMON_CONTEXT *common = &context->common; in OI_SBC_ReadSamplesJoint()
455 SpecializedReadSamples[nrof_subbands >> 3](context, global_bs); in OI_SBC_ReadSamplesJoint()