mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-11-26 19:01:44 +02:00
avio: move ff_rewind_with_probe_data from avio.h to avio_internal.h
also change its prefix to ffio
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit f1ef2cd9ed
)
This commit is contained in:
parent
718975aa11
commit
f8bc86d47e
@ -594,21 +594,6 @@ int url_setbufsize(AVIOContext *s, int buf_size);
|
||||
int url_resetbuf(AVIOContext *s, int flags);
|
||||
#endif
|
||||
|
||||
/**
|
||||
* Rewind the AVIOContext using the specified buffer containing the first buf_size bytes of the file.
|
||||
* Used after probing to avoid seeking.
|
||||
* Joins buf and s->buffer, taking any overlap into consideration.
|
||||
* @note s->buffer must overlap with buf or they can't be joined and the function fails
|
||||
* @note This function is NOT part of the public API
|
||||
*
|
||||
* @param s The read-only AVIOContext to rewind
|
||||
* @param buf The probe buffer containing the first buf_size bytes of the file
|
||||
* @param buf_size The size of buf
|
||||
* @return 0 in case of success, a negative value corresponding to an
|
||||
* AVERROR code in case of failure
|
||||
*/
|
||||
int ff_rewind_with_probe_data(AVIOContext *s, unsigned char *buf, int buf_size);
|
||||
|
||||
/**
|
||||
* Create and initialize a AVIOContext for accessing the
|
||||
* resource indicated by url.
|
||||
|
@ -47,4 +47,18 @@ static av_always_inline void ffio_wfourcc(AVIOContext *pb, const uint8_t *s)
|
||||
avio_wl32(pb, MKTAG(s[0], s[1], s[2], s[3]));
|
||||
}
|
||||
|
||||
/**
|
||||
* Rewind the AVIOContext using the specified buffer containing the first buf_size bytes of the file.
|
||||
* Used after probing to avoid seeking.
|
||||
* Joins buf and s->buffer, taking any overlap into consideration.
|
||||
* @note s->buffer must overlap with buf or they can't be joined and the function fails
|
||||
*
|
||||
* @param s The read-only AVIOContext to rewind
|
||||
* @param buf The probe buffer containing the first buf_size bytes of the file
|
||||
* @param buf_size The size of buf
|
||||
* @return 0 in case of success, a negative value corresponding to an
|
||||
* AVERROR code in case of failure
|
||||
*/
|
||||
int ffio_rewind_with_probe_data(AVIOContext *s, unsigned char *buf, int buf_size);
|
||||
|
||||
#endif // AVFORMAT_AVIO_INTERNAL_H
|
||||
|
@ -837,7 +837,7 @@ static int url_resetbuf(AVIOContext *s, int flags)
|
||||
return 0;
|
||||
}
|
||||
|
||||
int ff_rewind_with_probe_data(AVIOContext *s, unsigned char *buf, int buf_size)
|
||||
int ffio_rewind_with_probe_data(AVIOContext *s, unsigned char *buf, int buf_size)
|
||||
{
|
||||
int64_t buffer_start;
|
||||
int buffer_size;
|
||||
|
@ -19,6 +19,7 @@
|
||||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
*/
|
||||
#include "avformat.h"
|
||||
#include "avio_internal.h"
|
||||
#include "internal.h"
|
||||
#include "libavcodec/internal.h"
|
||||
#include "libavutil/opt.h"
|
||||
@ -585,7 +586,7 @@ int av_probe_input_buffer(AVIOContext *pb, AVInputFormat **fmt,
|
||||
}
|
||||
|
||||
/* rewind. reuse probe buffer to avoid seeking */
|
||||
if ((ret = ff_rewind_with_probe_data(pb, buf, pd.buf_size)) < 0)
|
||||
if ((ret = ffio_rewind_with_probe_data(pb, buf, pd.buf_size)) < 0)
|
||||
av_free(buf);
|
||||
|
||||
return ret;
|
||||
|
Loading…
Reference in New Issue
Block a user