ffmpeg short conversion got fixed somewhere, no need to workaround it - fixes amplitude bug

Originally committed as revision 3408 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
Alex Beregszaszi 2004-08-22 12:40:57 +00:00
parent 33a4d8b1b2
commit ef859ca33f

View File

@ -501,10 +501,14 @@ static int sonic_encode_init(AVCodecContext *avctx)
int i, version = 0; int i, version = 0;
if (avctx->channels > MAX_CHANNELS) if (avctx->channels > MAX_CHANNELS)
{
av_log(avctx, AV_LOG_ERROR, "Only mono and stereo streams are supported by now\n");
return -1; /* only stereo or mono for now */ return -1; /* only stereo or mono for now */
}
if (avctx->channels == 2) if (avctx->channels == 2)
s->mid_side = 1; s->mid_side = 1;
if (avctx->codec->id == CODEC_ID_SONIC_LS) if (avctx->codec->id == CODEC_ID_SONIC_LS)
{ {
s->lossless = 1; s->lossless = 1;
@ -627,10 +631,12 @@ static int sonic_encode_frame(AVCodecContext *avctx,
// short -> internal // short -> internal
for (i = 0; i < s->frame_size; i++) for (i = 0; i < s->frame_size; i++)
{ {
if (samples[i] < 0) // if (samples[i] < 0)
s->int_samples[i] = samples[i]+32768; // s->int_samples[i] = samples[i]+32768;
else // else
s->int_samples[i] = samples[i]-32768; // s->int_samples[i] = samples[i]-32768;
s->int_samples[i] = samples[i];
// av_log(NULL, AV_LOG_INFO, "%d\n", s->int_samples[i]);
} }
if (!s->lossless) if (!s->lossless)