Lines Matching defs:hSbrEncoder
724 HANDLE_SBR_ENCODER hSbrEncoder = *phSbrEncoder;
726 if (hSbrEncoder != NULL)
732 if (hSbrEncoder->sbrElement[el]!=NULL) {
733 sbrEncoder_ElementClose(&hSbrEncoder->sbrElement[el]);
740 if (hSbrEncoder->pSbrChannel[ch]) {
741 sbrEncoder_ChannelClose(hSbrEncoder->pSbrChannel[ch]);
742 FreeRam_SbrChannel(&hSbrEncoder->pSbrChannel[ch]);
745 if (hSbrEncoder->QmfAnalysis[ch].FilterStates)
746 FreeRam_Sbr_QmfStatesAnalysis((FIXP_QAS**)&hSbrEncoder->QmfAnalysis[ch].FilterStates);
751 if (hSbrEncoder->hParametricStereo)
752 PSEnc_Destroy(&hSbrEncoder->hParametricStereo);
753 if (hSbrEncoder->qmfSynthesisPS.FilterStates)
754 FreeRam_PsQmfStatesSynthesis((FIXP_DBL**)&hSbrEncoder->qmfSynthesisPS.FilterStates);
757 FreeRam_SbrDynamic_RAM((FIXP_DBL**)&hSbrEncoder->pSBRdynamic_RAM);
1483 HANDLE_SBR_ENCODER hSbrEncoder = NULL;
1491 hSbrEncoder = GetRam_SbrEncoder();
1492 if (hSbrEncoder==NULL) {
1495 FDKmemclear(hSbrEncoder, sizeof(SBR_ENCODER));
1497 hSbrEncoder->pSBRdynamic_RAM = (UCHAR*)GetRam_SbrDynamic_RAM();
1498 hSbrEncoder->dynamicRam = hSbrEncoder->pSBRdynamic_RAM;
1501 hSbrEncoder->sbrElement[i] = GetRam_SbrElement(i);
1502 if (hSbrEncoder->sbrElement[i]==NULL) {
1505 FDKmemclear(hSbrEncoder->sbrElement[i], sizeof(SBR_ELEMENT));
1506 hSbrEncoder->sbrElement[i]->sbrConfigData.freqBandTable[LO] = GetRam_Sbr_freqBandTableLO(i);
1507 hSbrEncoder->sbrElement[i]->sbrConfigData.freqBandTable[HI] = GetRam_Sbr_freqBandTableHI(i);
1508 hSbrEncoder->sbrElement[i]->sbrConfigData.v_k_master = GetRam_Sbr_v_k_master(i);
1509 if ( (hSbrEncoder->sbrElement[i]->sbrConfigData.freqBandTable[LO]==NULL) ||
1510 (hSbrEncoder->sbrElement[i]->sbrConfigData.freqBandTable[HI]==NULL) ||
1511 (hSbrEncoder->sbrElement[i]->sbrConfigData.v_k_master==NULL) )
1518 hSbrEncoder->pSbrChannel[i] = GetRam_SbrChannel(i);
1519 if (hSbrEncoder->pSbrChannel[i]==NULL) {
1523 if ( createEnvChannel(&hSbrEncoder->pSbrChannel[i]->hEnvChannel,
1525 ,hSbrEncoder->dynamicRam
1534 hSbrEncoder->QmfAnalysis[i].FilterStates = GetRam_Sbr_QmfStatesAnalysis(i);
1535 if (hSbrEncoder->QmfAnalysis[i].FilterStates==NULL) {
1541 if (PSEnc_Create(&hSbrEncoder->hParametricStereo))
1546 hSbrEncoder->qmfSynthesisPS.FilterStates = GetRam_PsQmfStatesSynthesis();
1547 if (hSbrEncoder->qmfSynthesisPS.FilterStates==NULL) {
1552 *phSbrEncoder = hSbrEncoder;
1559 sbrEncoder_Close(&hSbrEncoder);
1565 HANDLE_SBR_ENCODER hSbrEncoder,
1574 hSbrEncoder->lfeChIdx = -1; /* default value, until lfe found */
1583 hSbrEncoder->lfeChIdx = elInfo[coreEl].ChannelIndex[0];
1589 HANDLE_SBR_ELEMENT hSbrElement = hSbrEncoder->sbrElement[el];
1593 hSbrElement->sbrChannel[ch] = hSbrEncoder->pSbrChannel[totalCh];
1599 hSbrElement->hQmfAnalysis[ch] = &hSbrEncoder->QmfAnalysis[totalQmf++];
1899 HANDLE_SBR_ENCODER hSbrEncoder,
2064 hSbrEncoder->nBitstrDelay = nBitstrDelay;
2065 hSbrEncoder->nChannels = *numChannels;
2066 hSbrEncoder->frameSize = coreFrameLength * *downSampleFactor;
2067 hSbrEncoder->fTimeDomainDownsampling = timeDomainDownsample;
2068 hSbrEncoder->downSampleFactor = *downSampleFactor;
2069 hSbrEncoder->estimateBitrate = 0;
2070 hSbrEncoder->inputDataDelay = 0;
2135 hSbrEncoder->noElements = el+1;
2137 FDKsbrEnc_Reallocate(hSbrEncoder,
2141 for (el=0; el<hSbrEncoder->noElements; el++) {
2150 error = FDKsbrEnc_EnvInit(hSbrEncoder->sbrElement[el],
2158 hSbrEncoder->fTimeDomainDownsampling
2159 ,hSbrEncoder->dynamicRam
2173 if (hSbrEncoder->fTimeDomainDownsampling)
2175 for (el=0; el<hSbrEncoder->noElements; el++)
2177 HANDLE_SBR_ELEMENT hSbrEl = hSbrEncoder->sbrElement[el];
2193 FDKaacEnc_InitDownsampler (&hSbrEncoder->lfeDownSampler, 0, *downSampleFactor);
2205 hSbrEncoder->inputDataDelay = downsamplerDelay;
2212 hSbrEncoder->estimateBitrate += 2500 * (*numChannels);
2218 FDK_ASSERT(hSbrEncoder->noElements == 1);
2233 hSbrEncoder->estimateBitrate += ( (((*coreSampleRate) * 5 * psEncConfig.nStereoBands * psEncConfig.maxEnvelopes) / hSbrEncoder->frameSize));
2240 qmfInitSynthesisFilterBank(&hSbrEncoder->qmfSynthesisPS,
2241 (FIXP_DBL*)hSbrEncoder->qmfSynthesisPS.FilterStates,
2242 hSbrEncoder->sbrElement[0]->sbrConfigData.noQmfSlots,
2243 hSbrEncoder->sbrElement[0]->sbrConfigData.noQmfBands>>1,
2244 hSbrEncoder->sbrElement[0]->sbrConfigData.noQmfBands>>1,
2245 hSbrEncoder->sbrElement[0]->sbrConfigData.noQmfBands>>1,
2250 psEncConfig.sbrPsDelay = FDKsbrEnc_GetEnvEstDelay(&hSbrEncoder->sbrElement[0]->sbrChannel[0]->hEnvChannel.sbrExtractEnvelope);
2252 if(noError != (errorInfo = PSEnc_Init( hSbrEncoder->hParametricStereo,
2254 hSbrEncoder->sbrElement[0]->sbrConfigData.noQmfSlots,
2255 hSbrEncoder->sbrElement[0]->sbrConfigData.noQmfBands
2256 ,hSbrEncoder->dynamicRam
2264 hSbrEncoder->inputDataDelay = (64*10/2) + (6*64) + (0) + (64*10/2-64+1) + ((*downSampleFactor)*downsampledOffset);
2267 hSbrEncoder->downsampledOffset = downsampledOffset;
2269 hSbrEncoder->downmixSize = coreFrameLength*(*numChannels);
2272 hSbrEncoder->bufferOffset = sbrOffset;
2274 if ( hSbrEncoder->nBitstrDelay > 0 )
2276 error = FDKsbrEnc_DelayCompensation (hSbrEncoder, inputBuffer);
2303 sbrEncoder_EncodeFrame( HANDLE_SBR_ENCODER hSbrEncoder,
2313 for (el=0; el<hSbrEncoder->noElements; el++)
2315 if (hSbrEncoder->sbrElement[el] != NULL)
2318 hSbrEncoder,
2320 samples + hSbrEncoder->downsampledOffset,
2331 if ( ( hSbrEncoder->lfeChIdx!=-1) && (hSbrEncoder->downSampleFactor > 1) )
2335 FDKaacEnc_Downsample(&hSbrEncoder->lfeDownSampler,
2336 samples + hSbrEncoder->downsampledOffset + hSbrEncoder->bufferOffset + hSbrEncoder->lfeChIdx,
2337 hSbrEncoder->frameSize,
2339 samples + hSbrEncoder->downsampledOffset + hSbrEncoder->lfeChIdx,
2341 hSbrEncoder->nChannels);
2351 HANDLE_SBR_ENCODER hSbrEncoder,
2355 if ( hSbrEncoder->downsampledOffset > 0 ) {
2358 timeBuffer + hSbrEncoder->downmixSize,
2359 sizeof(INT_PCM) * (hSbrEncoder->downsampledOffset) );
2363 timeBuffer + hSbrEncoder->nChannels * hSbrEncoder->frameSize,
2364 sizeof(INT_PCM) * hSbrEncoder->bufferOffset );
2366 if ( hSbrEncoder->nBitstrDelay > 0 )
2370 for (el=0; el<hSbrEncoder->noElements; el++)
2372 FDKmemmove ( hSbrEncoder->sbrElement[el]->payloadDelayLine[0],
2373 hSbrEncoder->sbrElement[el]->payloadDelayLine[1],
2374 sizeof(UCHAR) * (hSbrEncoder->nBitstrDelay*MAX_PAYLOAD_SIZE) );
2376 FDKmemmove( &hSbrEncoder->sbrElement[el]->payloadDelayLineSize[0],
2377 &hSbrEncoder->sbrElement[el]->payloadDelayLineSize[1],
2378 sizeof(UINT) * (hSbrEncoder->nBitstrDelay) );
2385 INT sbrEncoder_GetEstimateBitrate(HANDLE_SBR_ENCODER hSbrEncoder)
2389 if(hSbrEncoder) {
2390 estimateBitrate += hSbrEncoder->estimateBitrate;
2396 INT sbrEncoder_GetInputDataDelay(HANDLE_SBR_ENCODER hSbrEncoder)
2400 if(hSbrEncoder) {
2401 delay = hSbrEncoder->inputDataDelay;