Commit 10db1fb3 authored by Vladimir Malenovsky's avatar Vladimir Malenovsky
Browse files

Merge branch 'basop-1449-render-framesize-in-split-rendering-is-unclear' into 'main'

Resolve "Render framesize in split rendering is unclear"

See merge request !2688
parents 96ae0d1c a65cbf68
Loading
Loading
Loading
Loading
+7 −0
Original line number Diff line number Diff line
@@ -452,6 +452,13 @@ int main(
            fprintf( stderr, "\nConfigure failed: %s\n\n", IVAS_DEC_GetErrorMessage( error ) );
            goto cleanup;
        }

#ifdef FIX_1449_RENDERER_FRAME_SIZE_UNCLEAR_IN_ISAR
        if ( !arg.renderConfigEnabled && ( arg.renderFramesize != asked_frame_size ) )
        {
            fprintf( stderr, "\nChanged render framesize, only 20ms are allowed for non-0dof split rendering!\n" );
        }
#endif
    }

    /*------------------------------------------------------------------------------------------*
+1 −0
Original line number Diff line number Diff line
@@ -103,6 +103,7 @@
#define FIX_1904_HARM_GSC_ENC                           /* VA: #1904 Harmonization of EVS and IVAS GSC code */
#define FIX_2271_OOB_INDEXING_IN_PIT_OL2                /* VA: Fix for issue 2271, to silence clang18 */
#define FIX_2273_OOB_INDEXING_IN_PIT_FR4                /* VA: Fix to silence clang on ptr init */
#define FIX_1449_RENDERER_FRAME_SIZE_UNCLEAR_IN_ISAR    /* Dolby: Fix for issue 1449: renderer frame size unclear in ISAR */

/* #################### End BE switches ################################## */

+13 −0
Original line number Diff line number Diff line
@@ -1632,6 +1632,12 @@ ivas_error IVAS_DEC_GetSplitBinauralBitstream(
        {
            scale_sig32( p_head_pose_buf[i], numSamplesPerChannelToOutput, sub( Q11, Q_out[i] ) ); // Q11
        }

#ifdef FIX_1449_RENDERER_FRAME_SIZE_UNCLEAR_IN_ISAR
#ifndef DISABLE_LIMITER
        ivas_limiter_dec_fx( st_ivas->hLimiter, p_head_pose_buf, st_ivas->hDecoderConfig->nchan_out, numSamplesPerChannelToOutput, st_ivas->BER_detect, Q11 );
#endif
#else
        IF( EQ_32( st_ivas->hDecoderConfig->render_framesize, IVAS_RENDER_FRAMESIZE_5MS ) )
        {
#ifndef DISABLE_LIMITER
@@ -1642,6 +1648,7 @@ ivas_error IVAS_DEC_GetSplitBinauralBitstream(
        {
            ivas_limiter_dec_fx( st_ivas->hLimiter, p_head_pose_buf, st_ivas->hDecoderConfig->nchan_out, numSamplesPerChannelToOutput, st_ivas->BER_detect, Q11 );
        }
#endif

        ivas_syn_output_fx( p_head_pose_buf, Q11, numSamplesPerChannelToOutput, st_ivas->hDecoderConfig->nchan_out, pcmBuf_out );
    }
@@ -4990,6 +4997,11 @@ IF( hIvasDec->hasDecodedFirstGoodFrame &&splitRendBits != NULL )
            scale_sig32( p_head_pose_buf[i], *nSamplesRendered, sub( Q11, Q_out[i] ) ); // Q11
        }

#ifdef FIX_1449_RENDERER_FRAME_SIZE_UNCLEAR_IN_ISAR
#ifndef DISABLE_LIMITER
        ivas_limiter_dec_fx( st_ivas->hLimiter, p_head_pose_buf, st_ivas->hDecoderConfig->nchan_out, *nSamplesRendered, st_ivas->BER_detect, Q11 );
#endif
#else
        IF( EQ_32( st_ivas->hDecoderConfig->render_framesize, IVAS_RENDER_FRAMESIZE_5MS ) )
        {
#ifndef DISABLE_LIMITER
@@ -5000,6 +5012,7 @@ IF( hIvasDec->hasDecodedFirstGoodFrame &&splitRendBits != NULL )
        {
            ivas_limiter_dec_fx( st_ivas->hLimiter, p_head_pose_buf, st_ivas->hDecoderConfig->nchan_out, *nSamplesRendered, st_ivas->BER_detect, Q11 );
        }
#endif

        ivas_syn_output_fx( p_head_pose_buf, Q11, *nSamplesRendered, st_ivas->hDecoderConfig->nchan_out, pcmBuf );
    }