You've already forked FFmpeg
							
							
				mirror of
				https://github.com/FFmpeg/FFmpeg.git
				synced 2025-10-30 23:18:11 +02:00 
			
		
		
		
	psymodel: Remove the single channel analysis function
This commit is contained in:
		
				
					committed by
					
						 Alex Converse
						Alex Converse
					
				
			
			
				
	
			
			
			
						parent
						
							01344fe409
						
					
				
				
					commit
					d3a6c2ab7e
				
			| @@ -572,7 +572,7 @@ static int aac_encode_frame(AVCodecContext *avctx, | ||||
|             put_bits(&s->pb, 4, chan_el_counter[tag]++); | ||||
|             for (ch = 0; ch < chans; ch++) | ||||
|                 coeffs[ch] = cpe->ch[ch].coeffs; | ||||
|             s->psy.model->analyze_group(&s->psy, start_ch, coeffs, wi); | ||||
|             s->psy.model->analyze(&s->psy, start_ch, coeffs, wi); | ||||
|             for (ch = 0; ch < chans; ch++) { | ||||
|                 s->cur_channel = start_ch * 2 + ch; | ||||
|                 s->coder->search_for_quantizers(avctx, s, &cpe->ch[ch], s->lambda); | ||||
|   | ||||
| @@ -557,8 +557,8 @@ static float calc_reduced_thr_3gpp(AacPsyBand *band, float min_snr, | ||||
| /** | ||||
|  * Calculate band thresholds as suggested in 3GPP TS26.403 | ||||
|  */ | ||||
| static void psy_3gpp_analyze(FFPsyContext *ctx, int channel, | ||||
|                              const float *coefs, const FFPsyWindowInfo *wi) | ||||
| static void psy_3gpp_analyze_channel(FFPsyContext *ctx, int channel, | ||||
|                                      const float *coefs, const FFPsyWindowInfo *wi) | ||||
| { | ||||
|     AacPsyContext *pctx = (AacPsyContext*) ctx->model_priv_data; | ||||
|     AacPsyChannel *pch  = &pctx->ch[channel]; | ||||
| @@ -741,14 +741,14 @@ static void psy_3gpp_analyze(FFPsyContext *ctx, int channel, | ||||
|     memcpy(pch->prev_band, pch->band, sizeof(pch->band)); | ||||
| } | ||||
|  | ||||
| static void psy_3gpp_analyze_group(FFPsyContext *ctx, int channel, | ||||
| static void psy_3gpp_analyze(FFPsyContext *ctx, int channel, | ||||
|                                    const float **coeffs, const FFPsyWindowInfo *wi) | ||||
| { | ||||
|     int ch; | ||||
|     FFPsyChannelGroup *group = ff_psy_find_group(ctx, channel); | ||||
|  | ||||
|     for (ch = 0; ch < group->num_ch; ch++) | ||||
|         psy_3gpp_analyze(ctx, channel + ch, coeffs[ch], &wi[ch]); | ||||
|         psy_3gpp_analyze_channel(ctx, channel + ch, coeffs[ch], &wi[ch]); | ||||
| } | ||||
|  | ||||
| static av_cold void psy_3gpp_end(FFPsyContext *apc) | ||||
| @@ -931,6 +931,5 @@ const FFPsyModel ff_aac_psy_model = | ||||
|     .init    = psy_3gpp_init, | ||||
|     .window  = psy_lame_window, | ||||
|     .analyze = psy_3gpp_analyze, | ||||
|     .analyze_group = psy_3gpp_analyze_group, | ||||
|     .end     = psy_3gpp_end, | ||||
| }; | ||||
|   | ||||
| @@ -111,16 +111,6 @@ typedef struct FFPsyModel { | ||||
|      */ | ||||
|     FFPsyWindowInfo (*window)(FFPsyContext *ctx, const int16_t *audio, const int16_t *la, int channel, int prev_type); | ||||
|  | ||||
|     /** | ||||
|      * Perform psychoacoustic analysis and set band info (threshold, energy) for a single channel. | ||||
|      * | ||||
|      * @param ctx     model context | ||||
|      * @param channel audio channel number | ||||
|      * @param coeffs  pointer to the transformed coefficients | ||||
|      * @param wi      window information | ||||
|      */ | ||||
|     void (*analyze)(FFPsyContext *ctx, int channel, const float *coeffs, const FFPsyWindowInfo *wi); | ||||
|  | ||||
|     /** | ||||
|      * Perform psychoacoustic analysis and set band info (threshold, energy) for a group of channels. | ||||
|      * | ||||
| @@ -129,7 +119,7 @@ typedef struct FFPsyModel { | ||||
|      * @param coeffs   array of pointers to the transformed coefficients | ||||
|      * @param wi       window information for the channels in the group | ||||
|      */ | ||||
|     void (*analyze_group)(FFPsyContext *ctx, int channel, const float **coeffs, const FFPsyWindowInfo *wi); | ||||
|     void (*analyze)(FFPsyContext *ctx, int channel, const float **coeffs, const FFPsyWindowInfo *wi); | ||||
|  | ||||
|     void (*end)    (FFPsyContext *apc); | ||||
| } FFPsyModel; | ||||
|   | ||||
		Reference in New Issue
	
	Block a user