On Fri, Aug 05, 2016 at 05:23:04PM -0500, Burt P wrote: > A new mode, selected by filter option, to aid in analysis of HDCD > encoded audio. In this mode the audio is replaced by a solid tone and > the amplitude is adjusted to signal some specified aspect of the process. > The output file can be loaded in an audio editor alongside the original, > where the user can see where different features or states are present.
[...]
> @@ -1358,18 +1478,32 @@ static void hdcd_process_stereo(HDCDContext *ctx,
> int32_t *samples, int count)
> count -= envelope_run;
> lead = run - envelope_run;
>
> - hdcd_control_stereo(ctx, &peak_extend[0], &peak_extend[1]);
> + ctlret = hdcd_control_stereo(ctx, &peak_extend[0], &peak_extend[1]);
> }
> if (lead > 0) {
> av_assert0(samples + lead * stride <= samples_end);
> - gain[0] = hdcd_envelope(samples, lead, stride, gain[0],
> ctx->val_target_gain, peak_extend[0]);
> - gain[1] = hdcd_envelope(samples + 1, lead, stride, gain[1],
> ctx->val_target_gain, peak_extend[1]);
> + if (ctx->analyze_mode) {
> + gain[0] = hdcd_analyze(samples, lead, stride, gain[0],
> ctx->val_target_gain, peak_extend[0],
> + ctx->analyze_mode,
> + ctx->state[0].sustain,
> + !!(ctlret == HDCD_TG_MISMATCH) );
> + gain[1] = hdcd_analyze(samples + 1, lead, stride, gain[1],
> ctx->val_target_gain, peak_extend[1],
> + ctx->analyze_mode,
> + ctx->state[1].sustain,
> + !!(ctlret == HDCD_TG_MISMATCH) );
> + } else {
> + gain[0] = hdcd_envelope(samples, lead, stride, gain[0],
> ctx->val_target_gain, peak_extend[0]);
> + gain[1] = hdcd_envelope(samples + 1, lead, stride, gain[1],
> ctx->val_target_gain, peak_extend[1]);
> + }
> }
>
> ctx->state[0].running_gain = gain[0];
> ctx->state[1].running_gain = gain[1];
> }
>
> +/* tone generator: sample_number, frequency, sample_rate, amplitude */
> +#define TONEGEN16(sn, f, sr, a) (int16_t)(sin((6.28318530718 * sn * f) /sr)
> * a * 0x7fff)
missing () for argument protection
TONEGEN16(1+1,2+3,4+5,6+7) wont do what one expects otherwise
[...]
--
Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB
The educated differ from the uneducated as much as the living from the
dead. -- Aristotle
signature.asc
Description: Digital signature
_______________________________________________ ffmpeg-devel mailing list [email protected] http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
