X-Git-Url: http://git.tuebingen.mpg.de/?a=blobdiff_plain;f=aacdec_filter.c;h=797e5b9cb168745087eb0b1303f7f0aba62b67bf;hb=597de66c60f58d1e659630e40b3cf67033b8ce3d;hp=c829984672d0799578cb5448a75bac48e5760ec7;hpb=35a11289d230fe16f8c400ce19cec3a5befb1e97;p=paraslash.git diff --git a/aacdec_filter.c b/aacdec_filter.c index c8299846..797e5b9c 100644 --- a/aacdec_filter.c +++ b/aacdec_filter.c @@ -97,8 +97,7 @@ static int aacdec_post_select(__a_unused struct sched *s, void *context) struct btr_node *btrn = fn->btrn; struct private_aacdec_data *padd = fn->private_data; int i, ret; - char *inbuf, *outbuffer; - char *btr_buf; + char *inbuf, *outbuf, *btrbuf; size_t len, consumed, loaded; next_buffer: @@ -132,7 +131,7 @@ next_buffer: goto success; //PARA_CRIT_LOG("consumed: %zu (%zu + %zu), have: %zu\n", padd->consumed_total + consumed, // padd->consumed_total, consumed, len - consumed); - outbuffer = NeAACDecDecode(padd->handle, &padd->frame_info, + outbuf = NeAACDecDecode(padd->handle, &padd->frame_info, (unsigned char *)inbuf + consumed, len - consumed); if (padd->frame_info.error) { int err = padd->frame_info.error; @@ -145,8 +144,7 @@ next_buffer: "%zu, %zu, %lu\n", padd->consumed_total, consumed, padd->frame_info.bytesconsumed); - if (consumed < len) - consumed++; /* catch 21 */ + consumed++; /* just eat one byte and hope for the best */ goto success; } padd->error_count = 0; @@ -154,18 +152,17 @@ next_buffer: consumed += padd->frame_info.bytesconsumed; if (!padd->frame_info.samples) goto success; - btr_buf = para_malloc(2 * padd->frame_info.samples); + btrbuf = para_malloc(2 * padd->frame_info.samples); loaded = 0; for (i = 0; i < padd->frame_info.samples; i++) { - short sh = ((short *)outbuffer)[i]; - write_int16_host_endian(btr_buf + loaded, sh); + short sh = ((short *)outbuf)[i]; + write_int16_host_endian(btrbuf + loaded, sh); loaded += 2; } - btr_add_output(btr_buf, loaded, btrn); + btr_add_output(btrbuf, loaded, btrn); success: - ret = consumed; - padd->consumed_total += ret; - btr_consume(btrn, ret); + btr_consume(btrn, consumed); + padd->consumed_total += consumed; goto next_buffer; err: assert(ret < 0);