Commit 0b4f02a3 authored by Dominik Weckbecker's avatar Dominik Weckbecker 💬
Browse files

restirc HO-DirAC to > 256 kbps

parent 6a73f327
Loading
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -261,7 +261,7 @@ ivas_error ivas_dec(
            {
                ivas_dirac_dec_read_BS( ivas_total_brate, st, st_ivas->hDirAC, st_ivas->hQMetaData, &nb_bits_metadata[0], st_ivas->sba_mode,
#ifdef HODIRAC
                                        st_ivas->sba_analysis_order,
                                        st_ivas->sba_analysis_order > 1 && ivas_total_brate > IVAS_256k,
#endif
                                        0 );
            }
@@ -286,7 +286,7 @@ ivas_error ivas_dec(
                    &nb_bits_metadata[0],
                    st_ivas->sba_mode,
#ifdef HODIRAC
                    st_ivas->sba_analysis_order,
                    st_ivas->sba_analysis_order > 1 && ivas_total_brate > IVAS_256k,
#endif
                    st_ivas->hSpar->dirac_to_spar_md_bands );
            }
+20 −18
Original line number Diff line number Diff line
@@ -781,7 +781,7 @@ ivas_error ivas_dirac_dec_config(
        if ( ( ivas_dirac_dec_output_synthesis_open( hDirAC, st_ivas->renderer_type, nchan_transport, output_Fs
#ifdef HODIRAC
                                                     ,
                                                     st_ivas->sba_analysis_order > 1
                                                     st_ivas->sba_analysis_order > 1 && ivas_total_brate > IVAS_240_PT_LEN
#endif
                                                     ) ) != IVAS_ERR_OK )
        {
@@ -796,7 +796,7 @@ ivas_error ivas_dirac_dec_config(
        if ( ( ivas_dirac_dec_output_synthesis_open( hDirAC, st_ivas->renderer_type, nchan_transport, output_Fs
#ifdef HODIRAC
                                                     ,
                                                     st_ivas->sba_analysis_order > 1
                                                     st_ivas->sba_analysis_order > 1 && ivas_total_brate > IVAS_240_PT_LEN
#endif
                                                     ) ) != IVAS_ERR_OK )
        {
@@ -895,7 +895,7 @@ ivas_error ivas_dirac_dec_config(
    ivas_dirac_dec_output_synthesis_init( hDirAC, nchan_out_woLFE
#ifdef HODIRAC
                                          ,
                                          st_ivas->sba_analysis_order > 1
                                          st_ivas->sba_analysis_order > 1 && ivas_total_brate > IVAS_256k
#endif
    );

@@ -907,7 +907,7 @@ ivas_error ivas_dirac_dec_config(
    if ( ( error = ivas_dirac_alloc_mem( hDirAC, st_ivas->renderer_type, &( hDirAC->stack_mem )
#ifdef HODIRAC
                                                                             ,
                                         st_ivas->sba_analysis_order > 1
                                         st_ivas->sba_analysis_order > 1 && ivas_total_brate > IVAS_256k
#endif
                                         ) ) != IVAS_ERR_OK )
    {
@@ -1800,7 +1800,7 @@ void ivas_dirac_dec_read_BS(
    int16_t *nb_bits,                 /* o  : number of bits read         */
    const SBA_MODE sba_mode,          /* i  : SBA mode                    */
#ifdef HODIRAC
    const int16_t sba_analysis_order, /* i sba order*/
    const int16_t hodirac, /* i : HO-Dirac flag */
#endif
    int16_t *dirac_to_spar_md_bands /* o  : DirAC->SPAR MD bands        */
)
@@ -1900,7 +1900,7 @@ void ivas_dirac_dec_read_BS(
            *nb_bits += ivas_qmetadata_dec_decode( hQMetaData, st->bit_stream, &( st->next_bit_pos )
#ifdef HODIRAC
                                                                                   ,
                                                   ( sba_analysis_order > 1 )
                                                   hodirac
#endif
            );
        }
@@ -1972,7 +1972,7 @@ void ivas_dirac_dec_read_BS(
        ivas_qmetadata_to_dirac( hQMetaData, hDirAC, NULL, ivas_total_brate, sba_mode
#ifdef HODIRAC
                                 ,
                                 sba_analysis_order
                                 hodirac
#endif
                                 ,
                                 dirac_to_spar_md_bands );
@@ -1995,7 +1995,7 @@ void ivas_qmetadata_to_dirac(
    const int32_t ivas_total_brate,         /* i  : IVAS total bitrate       */
    const SBA_MODE sba_mode,                /* i  : SBA mode                 */
#ifdef HODIRAC
    const int16_t sba_analysis_order, /* i sba order*/
    const int16_t hodirac, /* i : HO-DirAC flag*/
#endif
    int16_t *dirac_to_spar_md_bands /* o  : DirAC->SPAR MD bands     */
)
@@ -2209,7 +2209,7 @@ void ivas_qmetadata_to_dirac(

        /* Bands with spatial data transmitted */
#ifdef HODIRAC
        if ( sba_analysis_order > 1 )
        if ( hodirac )
        {
            no_secs = DIRAC_HO_NUMSECTORS;
        }
@@ -2260,7 +2260,7 @@ void ivas_qmetadata_to_dirac(


#ifdef HODIRAC
                    if ( hMasa == NULL && sba_analysis_order > 1 )
                    if ( hMasa == NULL && hodirac )
                    {
                        azimuth = q_direction[idx_sec].band_data[qBand_idx].azimuth[block_qmetadata];
                        elevation = q_direction[idx_sec].band_data[qBand_idx].elevation[block_qmetadata];
@@ -2296,7 +2296,7 @@ void ivas_qmetadata_to_dirac(
                        tmp_write_idx_band = tmp_write_idx_param_band;

#ifdef HODIRAC
                        if ( sba_analysis_order > 1 )
                        if ( hodirac )
                        {
                            azi = (int16_t) ( azimuth + 0.5f );
                            ele = (int16_t) ( elevation + 0.5f );
@@ -2338,7 +2338,7 @@ void ivas_qmetadata_to_dirac(
                            hDirAC->diffuseness_vector[tmp_write_idx_band][b] = diffuseness;

#ifdef HODIRAC
                            if ( sba_analysis_order > 1 )
                            if ( hodirac )
                            {
                                if ( idx_sec == 0 )
                                {
@@ -2414,7 +2414,7 @@ void ivas_qmetadata_to_dirac(
    }

#ifdef HODIRAC_WRITE_PARAMS
    if ( hMasa == NULL && sba_analysis_order > 1 )
    if ( hMasa == NULL && sba_analysis_order > 1 && ivas_total_brate > IVAS_256k )
    {
        static FILE *f_params = 0;
        int16_t tmp_write_idx_band = 0;
@@ -2639,7 +2639,7 @@ void ivas_dirac_dec(
                                                              p_Rmat
#ifdef HODIRAC
                                                              ,
                                                              st_ivas->sba_analysis_order > 1
                                                              st_ivas->sba_analysis_order > 1 && st_ivas->hDecoderConfig->ivas_total_brate > IVAS_256k
#endif
                );
            }
@@ -2653,7 +2653,7 @@ void ivas_dirac_dec(
                                                              0
#ifdef HODIRAC
                                                              ,
                                                              st_ivas->sba_analysis_order > 1
                                                              st_ivas->sba_analysis_order > 1 && st_ivas->hDecoderConfig->ivas_total_brate > IVAS_256k
#endif
                );
            }
@@ -2969,7 +2969,8 @@ void ivas_dirac_dec(
                                                              index_slot
#endif
#ifdef HODIRAC
                                                                      st_ivas->sba_analysis_order > 1
                                                                          st_ivas->sba_analysis_order > 1 &&
                                                                  st_ivas->hDecoderConfig->ivas_total_brate > IVAS_256k
#endif

                );
@@ -2987,7 +2988,8 @@ void ivas_dirac_dec(
                                                              index_slot
#endif
#ifdef HODIRAC
                                                                      st_ivas->sba_analysis_order > 1
                                                                          st_ivas->sba_analysis_order > 1 &&
                                                                  st_ivas->hDecoderConfig->ivas_total_brate > IVAS_256k
#endif
                );
            }
@@ -3017,7 +3019,7 @@ void ivas_dirac_dec(
                                                                       p_onset_filter
#ifdef HODIRAC
                                                                       ,
                                                                       st_ivas->sba_analysis_order > 1
                                                                       st_ivas->sba_analysis_order > 1 && st_ivas->hDecoderConfig->ivas_total_brate > IVAS_256k
#endif
            );
        }
+2 −2
Original line number Diff line number Diff line
@@ -911,7 +911,7 @@ ivas_error ivas_init_decoder(
                           st_ivas->sba_analysis_order,
                           st_ivas->sba_mode,
#ifdef HODIRAC
                           st_ivas->sba_analysis_order > 1 ? IVAS_MAX_NUM_BANDS : ( IVAS_MAX_NUM_BANDS - SPAR_DIRAC_SPLIT_START_BAND )
                           st_ivas->sba_analysis_order > 1 && st_ivas->hDecoderConfig->ivas_total_brate > IVAS_256k ? IVAS_MAX_NUM_BANDS : ( IVAS_MAX_NUM_BANDS - SPAR_DIRAC_SPLIT_START_BAND )
#else
                           IVAS_MAX_NUM_BANDS - SPAR_DIRAC_SPLIT_START_BAND
#endif
@@ -939,7 +939,7 @@ ivas_error ivas_init_decoder(

                    st_ivas->hSpar->enc_param_start_band = min( IVAS_MAX_NUM_BANDS, SPAR_DIRAC_SPLIT_START_BAND );
#ifdef HODIRAC
                    if ( st_ivas->sba_analysis_order > 1 )
                    if ( st_ivas->sba_analysis_order > 1 && st_ivas->hDecoderConfig->ivas_total_brate > IVAS_256k )
                    {
                        st_ivas->hSpar->enc_param_start_band = 0;

+1 −1
Original line number Diff line number Diff line
@@ -276,7 +276,7 @@ ivas_error ivas_sba_dec_reconfigure(
               st_ivas->sba_analysis_order,
               st_ivas->sba_mode,
#ifdef HODIRAC
               st_ivas->sba_analysis_order > 1 ? IVAS_MAX_NUM_BANDS : ( IVAS_MAX_NUM_BANDS - SPAR_DIRAC_SPLIT_START_BAND )
               st_ivas->sba_analysis_order > 1 && st_ivas->hDecoderConfig->ivas_total_brate > IVAS_256k ? IVAS_MAX_NUM_BANDS : ( IVAS_MAX_NUM_BANDS - SPAR_DIRAC_SPLIT_START_BAND )
#else
               IVAS_MAX_NUM_BANDS - SPAR_DIRAC_SPLIT_START_BAND
#endif
+1 −1
Original line number Diff line number Diff line
@@ -135,7 +135,7 @@ ivas_error ivas_enc(
    {
        if ( ( ivas_format == SBA_FORMAT ) && ( st_ivas->sba_mode == SBA_MODE_SPAR )
#ifdef HODIRAC
                                                  & !( st_ivas->sba_analysis_order > 1 )
                                                  & !( st_ivas->sba_analysis_order > 1 && ivas_total_brate > IVAS_256k )
#endif
        )
        {
Loading