Lines Matching refs:hSbrEncoder

766   HANDLE_SBR_ENCODER hSbrEncoder = *phSbrEncoder;
768 if (hSbrEncoder != NULL) {
772 if (hSbrEncoder->sbrElement[el] != NULL) {
773 sbrEncoder_ElementClose(&hSbrEncoder->sbrElement[el]);
779 if (hSbrEncoder->pSbrChannel[ch]) {
780 sbrEncoder_ChannelClose(hSbrEncoder->pSbrChannel[ch]);
781 FreeRam_SbrChannel(&hSbrEncoder->pSbrChannel[ch]);
784 if (hSbrEncoder->QmfAnalysis[ch].FilterStates)
786 (FIXP_QAS **)&hSbrEncoder->QmfAnalysis[ch].FilterStates);
789 if (hSbrEncoder->hParametricStereo)
790 PSEnc_Destroy(&hSbrEncoder->hParametricStereo);
791 if (hSbrEncoder->qmfSynthesisPS.FilterStates)
793 (FIXP_DBL **)&hSbrEncoder->qmfSynthesisPS.FilterStates);
796 if (hSbrEncoder->pSBRdynamic_RAM)
797 FreeRam_SbrDynamic_RAM((FIXP_DBL **)&hSbrEncoder->pSBRdynamic_RAM);
1205 HANDLE_SBR_ENCODER hSbrEncoder,
1216 if (hSbrEncoder->downSampleFactor > 1) {
1220 for (el = 0; el < hSbrEncoder->noElements; el++) {
1221 hSbrElement = hSbrEncoder->sbrElement[el];
1222 if (hSbrEncoder->sbrElement[el] != NULL) {
1223 if (hSbrEncoder->downsamplingMethod == SBRENC_DS_TIME) {
1232 hSbrEncoder->bufferOffset / numChannels,
1242 if (hSbrEncoder->lfeChIdx != -1) { /* lfe downsampler */
1243 FDKaacEnc_Downsample(&hSbrEncoder->lfeDownSampler,
1244 samples + hSbrEncoder->lfeChIdx * samplesBufSize +
1245 hSbrEncoder->bufferOffset / numChannels,
1246 hSbrEncoder->frameSize,
1247 samples + hSbrEncoder->lfeChIdx * samplesBufSize,
1252 int samples2Copy = hSbrEncoder->frameSize;
1253 if (hSbrEncoder->bufferOffset / (int)numChannels < samples2Copy) {
1260 hSbrEncoder->bufferOffset / numChannels,
1268 hSbrEncoder->bufferOffset / numChannels,
1500 HANDLE_SBR_ENCODER hSbrEncoder = NULL;
1506 hSbrEncoder = GetRam_SbrEncoder();
1507 if (hSbrEncoder == NULL) {
1510 FDKmemclear(hSbrEncoder, sizeof(SBR_ENCODER));
1513 (hSbrEncoder->pSBRdynamic_RAM = (UCHAR *)GetRam_SbrDynamic_RAM())) {
1516 hSbrEncoder->dynamicRam = hSbrEncoder->pSBRdynamic_RAM;
1520 hSbrEncoder->sbrElement[i] = GetRam_SbrElement(i);
1521 if (hSbrEncoder->sbrElement[i] == NULL) {
1524 FDKmemclear(hSbrEncoder->sbrElement[i], sizeof(SBR_ELEMENT));
1525 hSbrEncoder->sbrElement[i]->sbrConfigData.freqBandTable[LO] =
1527 hSbrEncoder->sbrElement[i]->sbrConfigData.freqBandTable[HI] =
1529 hSbrEncoder->sbrElement[i]->sbrConfigData.v_k_master =
1531 if ((hSbrEncoder->sbrElement[i]->sbrConfigData.freqBandTable[LO] == NULL) ||
1532 (hSbrEncoder->sbrElement[i]->sbrConfigData.freqBandTable[HI] == NULL) ||
1533 (hSbrEncoder->sbrElement[i]->sbrConfigData.v_k_master == NULL)) {
1540 hSbrEncoder->pSbrChannel[i] = GetRam_SbrChannel(i);
1541 if (hSbrEncoder->pSbrChannel[i] == NULL) {
1545 if (createEnvChannel(&hSbrEncoder->pSbrChannel[i]->hEnvChannel, i,
1546 hSbrEncoder->dynamicRam)) {
1553 hSbrEncoder->QmfAnalysis[i].FilterStates = GetRam_Sbr_QmfStatesAnalysis(i);
1554 if (hSbrEncoder->QmfAnalysis[i].FilterStates == NULL) {
1561 if (PSEnc_Create(&hSbrEncoder->hParametricStereo)) {
1565 hSbrEncoder->qmfSynthesisPS.FilterStates = GetRam_PsQmfStatesSynthesis();
1566 if (hSbrEncoder->qmfSynthesisPS.FilterStates == NULL) {
1571 *phSbrEncoder = hSbrEncoder;
1578 sbrEncoder_Close(&hSbrEncoder);
1582 static INT FDKsbrEnc_Reallocate(HANDLE_SBR_ENCODER hSbrEncoder,
1590 hSbrEncoder->lfeChIdx = -1; /* default value, until lfe found */
1598 hSbrEncoder->lfeChIdx = elInfo[coreEl].ChannelIndex[0];
1604 HANDLE_SBR_ELEMENT hSbrElement = hSbrEncoder->sbrElement[el];
1608 hSbrElement->sbrChannel[ch] = hSbrEncoder->pSbrChannel[totalCh];
1616 hSbrElement->hQmfAnalysis[ch] = &hSbrEncoder->QmfAnalysis[totalQmf++];
2066 INT sbrEncoder_Init(HANDLE_SBR_ENCODER hSbrEncoder,
2159 hSbrEncoder->nChannels = *numChannels;
2160 hSbrEncoder->frameSize = coreFrameLength * *downSampleFactor;
2161 hSbrEncoder->downsamplingMethod = downsamplingMethod;
2162 hSbrEncoder->downSampleFactor = *downSampleFactor;
2163 hSbrEncoder->estimateBitrate = 0;
2164 hSbrEncoder->inputDataDelay = 0;
2220 hSbrEncoder->noElements = el + 1;
2222 FDKsbrEnc_Reallocate(hSbrEncoder, elInfo, noElements);
2224 for (el = 0; el < hSbrEncoder->noElements; el++) {
2232 error = FDKsbrEnc_EnvInit(hSbrEncoder->sbrElement[el], &sbrConfig[el],
2234 statesInitFlag, hSbrEncoder->downsamplingMethod,
2235 hSbrEncoder->dynamicRam);
2248 if (hSbrEncoder->downsamplingMethod == SBRENC_DS_TIME) {
2249 for (el = 0; el < hSbrEncoder->noElements; el++) {
2250 HANDLE_SBR_ELEMENT hSbrEl = hSbrEncoder->sbrElement[el];
2264 FDKaacEnc_InitDownsampler(&hSbrEncoder->lfeDownSampler, 0,
2270 hSbrEncoder->sbrElement[0]->sbrChannel[0]->downSampler.delay;
2282 hSbrEncoder->nBitstrDelay = delayParam.bitstrDelay;
2283 hSbrEncoder->sbrDecDelay = delayParam.sbrDecDelay;
2284 hSbrEncoder->inputDataDelay = delayParam.delayInput2Core;
2290 hSbrEncoder->estimateBitrate += 2500 * (*numChannels);
2293 for (el = 0; el < hSbrEncoder->noElements; el++) {
2294 FDKsbrEnc_bsBufInit(hSbrEncoder->sbrElement[el], delayParam.bitstrDelay);
2300 FDK_ASSERT(hSbrEncoder->noElements == 1);
2318 hSbrEncoder->estimateBitrate +=
2321 hSbrEncoder->frameSize));
2329 &hSbrEncoder->qmfSynthesisPS,
2330 (FIXP_DBL *)hSbrEncoder->qmfSynthesisPS.FilterStates,
2331 hSbrEncoder->sbrElement[0]->sbrConfigData.noQmfSlots,
2332 hSbrEncoder->sbrElement[0]->sbrConfigData.noQmfBands >> 1,
2333 hSbrEncoder->sbrElement[0]->sbrConfigData.noQmfBands >> 1,
2334 hSbrEncoder->sbrElement[0]->sbrConfigData.noQmfBands >> 1,
2340 FDKsbrEnc_GetEnvEstDelay(&hSbrEncoder->sbrElement[0]
2345 PSEnc_Init(hSbrEncoder->hParametricStereo, &psEncConfig,
2346 hSbrEncoder->sbrElement[0]->sbrConfigData.noQmfSlots,
2347 hSbrEncoder->sbrElement[0]->sbrConfigData.noQmfBands,
2348 hSbrEncoder->dynamicRam);
2352 hSbrEncoder->downsampledOffset = delayParam.corePathOffset;
2353 hSbrEncoder->bufferOffset = delayParam.sbrPathOffset;
2356 { hSbrEncoder->downmixSize = coreFrameLength * (*numChannels); }
2359 if (hSbrEncoder->nBitstrDelay > 0) {
2360 error = FDKsbrEnc_DelayCompensation(hSbrEncoder, inputBuffer,
2384 INT sbrEncoder_EncodeFrame(HANDLE_SBR_ENCODER hSbrEncoder, INT_PCM *samples,
2390 for (el = 0; el < hSbrEncoder->noElements; el++) {
2391 if (hSbrEncoder->sbrElement[el] != NULL) {
2393 hSbrEncoder, el,
2394 samples + hSbrEncoder->downsampledOffset / hSbrEncoder->nChannels,
2401 hSbrEncoder,
2402 samples + hSbrEncoder->downsampledOffset / hSbrEncoder->nChannels,
2403 samplesBufSize, hSbrEncoder->nChannels, &sbrDataBits[el], sbrData[el], 0);
2409 INT sbrEncoder_UpdateBuffers(HANDLE_SBR_ENCODER hSbrEncoder,
2411 if (hSbrEncoder->downsampledOffset > 0) {
2413 int nd = hSbrEncoder->downmixSize / hSbrEncoder->nChannels;
2415 for (c = 0; c < hSbrEncoder->nChannels; c++) {
2420 (hSbrEncoder->downsampledOffset / hSbrEncoder->nChannels));
2425 for (c = 0; c < hSbrEncoder->nChannels; c++) {
2429 timeBuffer + timeBufferBufSize * c + hSbrEncoder->frameSize,
2430 sizeof(INT_PCM) * hSbrEncoder->bufferOffset / hSbrEncoder->nChannels);
2433 if (hSbrEncoder->nBitstrDelay > 0) {
2436 for (el = 0; el < hSbrEncoder->noElements; el++) {
2438 hSbrEncoder->sbrElement[el]->payloadDelayLine[0],
2439 hSbrEncoder->sbrElement[el]->payloadDelayLine[1],
2440 sizeof(UCHAR) * (hSbrEncoder->nBitstrDelay * MAX_PAYLOAD_SIZE));
2442 FDKmemmove(&hSbrEncoder->sbrElement[el]->payloadDelayLineSize[0],
2443 &hSbrEncoder->sbrElement[el]->payloadDelayLineSize[1],
2444 sizeof(UINT) * (hSbrEncoder->nBitstrDelay));
2450 INT sbrEncoder_SendHeader(HANDLE_SBR_ENCODER hSbrEncoder) {
2452 if (hSbrEncoder) {
2454 for (el = 0; el < hSbrEncoder->noElements; el++) {
2455 if ((hSbrEncoder->noElements == 1) &&
2456 (hSbrEncoder->sbrElement[0]->elInfo.fParametricStereo == 1)) {
2457 hSbrEncoder->sbrElement[el]->sbrBitstreamData.CountSendHeaderData =
2458 hSbrEncoder->sbrElement[el]->sbrBitstreamData.NrSendHeaderData - 1;
2460 hSbrEncoder->sbrElement[el]->sbrBitstreamData.CountSendHeaderData = 0;
2468 INT sbrEncoder_ContainsHeader(HANDLE_SBR_ENCODER hSbrEncoder) {
2470 if (hSbrEncoder) {
2472 for (el = 0; el < hSbrEncoder->noElements; el++) {
2474 (hSbrEncoder->sbrElement[el]->sbrBitstreamData.HeaderActiveDelay == 1)
2482 INT sbrEncoder_GetHeaderDelay(HANDLE_SBR_ENCODER hSbrEncoder) {
2485 if (hSbrEncoder) {
2486 if ((hSbrEncoder->noElements == 1) &&
2487 (hSbrEncoder->sbrElement[0]->elInfo.fParametricStereo == 1)) {
2488 delay = hSbrEncoder->nBitstrDelay + 1;
2490 delay = hSbrEncoder->nBitstrDelay;
2495 INT sbrEncoder_GetBsDelay(HANDLE_SBR_ENCODER hSbrEncoder) {
2498 if (hSbrEncoder) {
2499 delay = hSbrEncoder->nBitstrDelay;
2504 INT sbrEncoder_SAPPrepare(HANDLE_SBR_ENCODER hSbrEncoder) {
2506 if (hSbrEncoder) {
2508 for (el = 0; el < hSbrEncoder->noElements; el++) {
2509 hSbrEncoder->sbrElement[el]->sbrBitstreamData.rightBorderFIX = 1;
2516 INT sbrEncoder_GetEstimateBitrate(HANDLE_SBR_ENCODER hSbrEncoder) {
2519 if (hSbrEncoder) {
2520 estimateBitrate += hSbrEncoder->estimateBitrate;
2526 INT sbrEncoder_GetInputDataDelay(HANDLE_SBR_ENCODER hSbrEncoder) {
2529 if (hSbrEncoder) {
2530 delay = hSbrEncoder->inputDataDelay;
2535 INT sbrEncoder_GetSbrDecDelay(HANDLE_SBR_ENCODER hSbrEncoder) {
2538 if (hSbrEncoder) {
2539 delay = hSbrEncoder->sbrDecDelay;