diff --git a/libavformat/avio.h b/libavformat/avio.h index 342980d6db..dd4380e4f4 100644 --- a/libavformat/avio.h +++ b/libavformat/avio.h @@ -476,6 +476,12 @@ int avio_put_str16le(AVIOContext *s, const char *str); */ int64_t avio_seek(AVIOContext *s, int64_t offset, int whence); +/** + * Skip given number of bytes forward + * @return new position or AVERROR. + */ +int64_t avio_skip(AVIOContext *s, int64_t offset); + /** * ftell() equivalent for AVIOContext. * @return position or AVERROR. diff --git a/libavformat/aviobuf.c b/libavformat/aviobuf.c index 1bdc478ed9..e82d89c433 100644 --- a/libavformat/aviobuf.c +++ b/libavformat/aviobuf.c @@ -233,6 +233,11 @@ int64_t avio_seek(AVIOContext *s, int64_t offset, int whence) return offset; } +int64_t avio_skip(AVIOContext *s, int64_t offset) +{ + return avio_seek(s, offset, SEEK_CUR); +} + #if FF_API_OLD_AVIO int url_fskip(AVIOContext *s, int64_t offset) {