diff --git a/libavformat/avio.h b/libavformat/avio.h index 342980d6db0bb8b8cb775496e4f92b3bec4e94bc..dd4380e4f4d2b248f831a4ac1cf0ae7100b074ae 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 1bdc478ed9e9d7793b50e1e236cfdbe5a7b24e41..e82d89c43371f427487887d128aa5a075cce8451 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) {