avcodec/vorbisenc: Fix mixed declaration and statements
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
This commit is contained in:
parent
d76838c1ad
commit
08ec828de9
@ -1026,6 +1026,7 @@ static int apply_window_and_mdct(vorbis_enc_context *venc)
|
|||||||
static AVFrame *spawn_empty_frame(AVCodecContext *avctx, int channels)
|
static AVFrame *spawn_empty_frame(AVCodecContext *avctx, int channels)
|
||||||
{
|
{
|
||||||
AVFrame *f = av_frame_alloc();
|
AVFrame *f = av_frame_alloc();
|
||||||
|
int ch;
|
||||||
|
|
||||||
if (!f)
|
if (!f)
|
||||||
return NULL;
|
return NULL;
|
||||||
@ -1039,7 +1040,7 @@ static AVFrame *spawn_empty_frame(AVCodecContext *avctx, int channels)
|
|||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
for (int ch = 0; ch < channels; ch++) {
|
for (ch = 0; ch < channels; ch++) {
|
||||||
size_t bps = av_get_bytes_per_sample(f->format);
|
size_t bps = av_get_bytes_per_sample(f->format);
|
||||||
memset(f->extended_data[ch], 0, bps * f->nb_samples);
|
memset(f->extended_data[ch], 0, bps * f->nb_samples);
|
||||||
}
|
}
|
||||||
@ -1108,8 +1109,9 @@ static int vorbis_encode_frame(AVCodecContext *avctx, AVPacket *avpkt,
|
|||||||
if (!frame) {
|
if (!frame) {
|
||||||
if (venc->bufqueue.available * avctx->frame_size < frame_size) {
|
if (venc->bufqueue.available * avctx->frame_size < frame_size) {
|
||||||
int frames_needed = (frame_size/avctx->frame_size) - venc->bufqueue.available;
|
int frames_needed = (frame_size/avctx->frame_size) - venc->bufqueue.available;
|
||||||
|
int i;
|
||||||
|
|
||||||
for (int i = 0; i < frames_needed; i++) {
|
for (i = 0; i < frames_needed; i++) {
|
||||||
AVFrame *empty = spawn_empty_frame(avctx, venc->channels);
|
AVFrame *empty = spawn_empty_frame(avctx, venc->channels);
|
||||||
if (!empty)
|
if (!empty)
|
||||||
return AVERROR(ENOMEM);
|
return AVERROR(ENOMEM);
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user