mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-11-26 19:01:44 +02:00
Use EAGAIN return, primarely intended as example of EAGAIN useage.
Originally committed as revision 16719 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
parent
cda6902d36
commit
a308737bd6
@ -309,7 +309,6 @@ static int flv_read_packet(AVFormatContext *s, AVPacket *pkt)
|
||||
int64_t dts, pts = AV_NOPTS_VALUE;
|
||||
AVStream *st = NULL;
|
||||
|
||||
retry:
|
||||
for(;;){
|
||||
pos = url_ftell(s->pb);
|
||||
url_fskip(s->pb, 4); /* size of previous packet */
|
||||
@ -345,7 +344,7 @@ static int flv_read_packet(AVFormatContext *s, AVPacket *pkt)
|
||||
av_log(s, AV_LOG_ERROR, "skipping flv packet: type %d, size %d, flags %d\n", type, size, flags);
|
||||
skip:
|
||||
url_fseek(s->pb, next, SEEK_SET);
|
||||
continue;
|
||||
return AVERROR(EAGAIN);
|
||||
}
|
||||
|
||||
/* skip empty data packets */
|
||||
@ -369,7 +368,7 @@ static int flv_read_packet(AVFormatContext *s, AVPacket *pkt)
|
||||
|| st->discard >= AVDISCARD_ALL
|
||||
){
|
||||
url_fseek(s->pb, next, SEEK_SET);
|
||||
continue;
|
||||
return AVERROR(EAGAIN);
|
||||
}
|
||||
if ((flags & FLV_VIDEO_FRAMETYPE_MASK) == FLV_FRAME_KEY)
|
||||
av_add_index_entry(st, pos, dts, size, 0, AVINDEX_KEYFRAME);
|
||||
@ -420,7 +419,7 @@ static int flv_read_packet(AVFormatContext *s, AVPacket *pkt)
|
||||
if (type == 0) {
|
||||
if ((ret = flv_get_extradata(s, st, size)) < 0)
|
||||
return ret;
|
||||
goto retry;
|
||||
return AVERROR(EAGAIN);
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user