mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2025-02-09 14:14:39 +02:00
Merge commit 'c99307caee01441cfde24f3b7b0db3037b7022dc'
* commit 'c99307caee01441cfde24f3b7b0db3037b7022dc': mpegvideo: make frame_size_alloc() static. Merged-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
commit
f1db3f5f59
@ -57,11 +57,15 @@ static int encode_picture_lossless(AVCodecContext *avctx, AVPacket *pkt,
|
|||||||
* s->mjpeg_hsample[0] * s->mjpeg_vsample[0];
|
* s->mjpeg_hsample[0] * s->mjpeg_vsample[0];
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!s->edge_emu_buffer &&
|
if (!s->rd_scratchpad) {
|
||||||
(ret = ff_mpv_frame_size_alloc(s, pict->linesize[0])) < 0) {
|
int alloc_size = FFALIGN(FFABS(pict->linesize[0]) + 64, 32);
|
||||||
|
s->me.scratchpad =
|
||||||
|
s->rd_scratchpad = av_mallocz(alloc_size * 4 * 16 * 2);
|
||||||
|
if (!s->rd_scratchpad) {
|
||||||
av_log(avctx, AV_LOG_ERROR, "failed to allocate context scratch buffers.\n");
|
av_log(avctx, AV_LOG_ERROR, "failed to allocate context scratch buffers.\n");
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if ((ret = ff_alloc_packet2(avctx, pkt, max_pkt_size)) < 0)
|
if ((ret = ff_alloc_packet2(avctx, pkt, max_pkt_size)) < 0)
|
||||||
return ret;
|
return ret;
|
||||||
|
@ -196,7 +196,7 @@ av_cold int ff_dct_common_init(MpegEncContext *s)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
int ff_mpv_frame_size_alloc(MpegEncContext *s, int linesize)
|
static int frame_size_alloc(MpegEncContext *s, int linesize)
|
||||||
{
|
{
|
||||||
int alloc_size = FFALIGN(FFABS(linesize) + 64, 32);
|
int alloc_size = FFALIGN(FFABS(linesize) + 64, 32);
|
||||||
|
|
||||||
@ -275,7 +275,7 @@ static int alloc_frame_buffer(MpegEncContext *s, Picture *pic)
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (!s->edge_emu_buffer &&
|
if (!s->edge_emu_buffer &&
|
||||||
(ret = ff_mpv_frame_size_alloc(s, pic->f.linesize[0])) < 0) {
|
(ret = frame_size_alloc(s, pic->f.linesize[0])) < 0) {
|
||||||
av_log(s->avctx, AV_LOG_ERROR,
|
av_log(s->avctx, AV_LOG_ERROR,
|
||||||
"get_buffer() failed to allocate context scratch buffers.\n");
|
"get_buffer() failed to allocate context scratch buffers.\n");
|
||||||
ff_mpeg_unref_picture(s, pic);
|
ff_mpeg_unref_picture(s, pic);
|
||||||
@ -655,7 +655,7 @@ int ff_update_duplicate_context(MpegEncContext *dst, MpegEncContext *src)
|
|||||||
if (dst->avctx->codec_tag == AV_RL32("VCR2"))
|
if (dst->avctx->codec_tag == AV_RL32("VCR2"))
|
||||||
exchange_uv(dst);
|
exchange_uv(dst);
|
||||||
if (!dst->edge_emu_buffer &&
|
if (!dst->edge_emu_buffer &&
|
||||||
(ret = ff_mpv_frame_size_alloc(dst, dst->linesize)) < 0) {
|
(ret = frame_size_alloc(dst, dst->linesize)) < 0) {
|
||||||
av_log(dst->avctx, AV_LOG_ERROR, "failed to allocate context "
|
av_log(dst->avctx, AV_LOG_ERROR, "failed to allocate context "
|
||||||
"scratch buffers.\n");
|
"scratch buffers.\n");
|
||||||
return ret;
|
return ret;
|
||||||
@ -774,7 +774,7 @@ do {\
|
|||||||
// linesize dependend scratch buffer allocation
|
// linesize dependend scratch buffer allocation
|
||||||
if (!s->edge_emu_buffer)
|
if (!s->edge_emu_buffer)
|
||||||
if (s1->linesize) {
|
if (s1->linesize) {
|
||||||
if (ff_mpv_frame_size_alloc(s, s1->linesize) < 0) {
|
if (frame_size_alloc(s, s1->linesize) < 0) {
|
||||||
av_log(s->avctx, AV_LOG_ERROR, "Failed to allocate context "
|
av_log(s->avctx, AV_LOG_ERROR, "Failed to allocate context "
|
||||||
"scratch buffers.\n");
|
"scratch buffers.\n");
|
||||||
return AVERROR(ENOMEM);
|
return AVERROR(ENOMEM);
|
||||||
|
@ -793,7 +793,6 @@ void ff_MPV_common_defaults(MpegEncContext *s);
|
|||||||
|
|
||||||
void ff_MPV_decode_defaults(MpegEncContext *s);
|
void ff_MPV_decode_defaults(MpegEncContext *s);
|
||||||
int ff_MPV_common_init(MpegEncContext *s);
|
int ff_MPV_common_init(MpegEncContext *s);
|
||||||
int ff_mpv_frame_size_alloc(MpegEncContext *s, int linesize);
|
|
||||||
int ff_MPV_common_frame_size_change(MpegEncContext *s);
|
int ff_MPV_common_frame_size_change(MpegEncContext *s);
|
||||||
void ff_MPV_common_end(MpegEncContext *s);
|
void ff_MPV_common_end(MpegEncContext *s);
|
||||||
void ff_MPV_decode_mb(MpegEncContext *s, int16_t block[12][64]);
|
void ff_MPV_decode_mb(MpegEncContext *s, int16_t block[12][64]);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user