Commit 5acef35f authored by Björn Axelsson's avatar Björn Axelsson Committed by Robert Swain
Browse files

Add AVClass to URLContext at next major version bump

Patch by Björn Axelsson (bjorn axelsson intinor se)

Originally committed as revision 12411 to svn://svn.ffmpeg.org/ffmpeg/trunk
parent 7ce68923
......@@ -20,6 +20,22 @@
*/
#include "avformat.h"
#include "avstring.h"
#include "opt.h"
#if LIBAVFORMAT_VERSION_MAJOR >= 53
/** @name Logging context. */
/*@{*/
static const char *urlcontext_to_name(void *ptr)
{
URLContext *h = (URLContext *)ptr;
if(h->prot) return h->prot->name;
else return "NULL";
}
static const AVOption options[] = {{NULL}};
static const AVClass urlcontext_class =
{ "URLContext", urlcontext_to_name, options };
/*@}*/
#endif
static int default_interrupt_cb(void);
......@@ -82,6 +98,9 @@ int url_open(URLContext **puc, const char *filename, int flags)
err = AVERROR(ENOMEM);
goto fail;
}
#if LIBAVFORMAT_VERSION_MAJOR >= 53
uc->av_class = &urlcontext_class;
#endif
uc->filename = (char *) &uc[1];
strcpy(uc->filename, filename);
uc->prot = up;
......
......@@ -37,6 +37,9 @@ typedef int64_t offset_t;
* sizeof(URLContext) must not be used outside libav*.
*/
struct URLContext {
#if LIBAVFORMAT_VERSION_MAJOR >= 53
const AVClass *av_class; ///< information for av_log(). Set by url_open().
#endif
struct URLProtocol *prot;
int flags;
int is_streamed; /**< true if streamed (no seek possible), default = false */
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment