mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2025-03-03 14:32:16 +02:00
avisynth: More av_new_packet changes
These are the remaining av_packet-related bits from 9eac7c4 that didn't get merged at that time. Changes authored by Anton Khirnov <anton@khirnov.net>, split out from 9eac7c4 by Stephen Hutchinson <qyot27@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
parent
5d4541007f
commit
02dd178d9d
@ -459,17 +459,16 @@ static int avisynth_read_packet_video(AVFormatContext *s, AVPacket *pkt,
|
||||
(int64_t)avs->vi->height) * bits) / 8;
|
||||
if (!pkt->size)
|
||||
return AVERROR_UNKNOWN;
|
||||
if (av_new_packet(pkt, (int)pkt->size) < 0) {
|
||||
av_free(pkt);
|
||||
|
||||
if (av_new_packet(pkt, pkt->size) < 0)
|
||||
return AVERROR(ENOMEM);
|
||||
}
|
||||
|
||||
frame = avs_library.avs_get_frame(avs->clip, n);
|
||||
error = avs_library.avs_clip_get_error(avs->clip);
|
||||
if (error) {
|
||||
av_log(s, AV_LOG_ERROR, "%s\n", error);
|
||||
avs->error = 1;
|
||||
av_freep(&pkt->data);
|
||||
av_packet_unref(pkt);
|
||||
return AVERROR_UNKNOWN;
|
||||
}
|
||||
|
||||
@ -558,8 +557,8 @@ static int avisynth_read_packet_audio(AVFormatContext *s, AVPacket *pkt,
|
||||
samples * avs->vi->nchannels;
|
||||
if (!pkt->size)
|
||||
return AVERROR_UNKNOWN;
|
||||
pkt->data = av_malloc(pkt->size);
|
||||
if (!pkt->data)
|
||||
|
||||
if (av_new_packet(pkt, pkt->size) < 0)
|
||||
return AVERROR(ENOMEM);
|
||||
|
||||
avs_library.avs_get_audio(avs->clip, pkt->data, n, samples);
|
||||
@ -567,7 +566,7 @@ static int avisynth_read_packet_audio(AVFormatContext *s, AVPacket *pkt,
|
||||
if (error) {
|
||||
av_log(s, AV_LOG_ERROR, "%s\n", error);
|
||||
avs->error = 1;
|
||||
av_freep(&pkt->data);
|
||||
av_packet_unref(pkt);
|
||||
return AVERROR_UNKNOWN;
|
||||
}
|
||||
return 0;
|
||||
@ -600,8 +599,6 @@ static int avisynth_read_packet(AVFormatContext *s, AVPacket *pkt)
|
||||
if (avs->error)
|
||||
return AVERROR_UNKNOWN;
|
||||
|
||||
av_free_packet(pkt);
|
||||
|
||||
/* If either stream reaches EOF, try to read the other one before
|
||||
* giving up. */
|
||||
avisynth_next_stream(s, &st, pkt, &discard);
|
||||
|
Loading…
x
Reference in New Issue
Block a user