avformat: Add functions for doing global network initialization

Signed-off-by: Martin Storsjö <martin@martin.st>
This commit is contained in:
Martin Storsjö 2011-11-01 13:40:04 +02:00
parent 183baeadca
commit b6d08f40aa
4 changed files with 39 additions and 1 deletions

View File

@ -13,6 +13,9 @@ libavutil: 2011-04-18
API changes, most recent first:
2011-11-xx - xxxxxxx - lavf 53.13.0
Add avformat_network_init()/avformat_network_uninit()
2011-xx-xx - xxxxxxx - lavc 53.15.0
Remove avcodec_parse_frame.
Deprecate AVCodecContext.parse_only and CODEC_CAP_PARSE_ONLY.

View File

@ -1743,4 +1743,19 @@ int avformat_query_codec(AVOutputFormat *ofmt, enum CodecID codec_id, int std_co
*/
const AVClass *avformat_get_class(void);
/**
* Do global initialization of network components. This is optional,
* but recommended, since it avoids the overhead of implicitly
* doing the setup for each session.
*
* Since the next major version bump, calling this function will become
* mandatory if using network protocols.
*/
int avformat_network_init(void);
/**
* Undo the initialization done by avformat_network_init.
*/
int avformat_network_deinit(void);
#endif /* AVFORMAT_AVFORMAT_H */

View File

@ -3964,3 +3964,23 @@ int avformat_query_codec(AVOutputFormat *ofmt, enum CodecID codec_id, int std_co
}
return AVERROR_PATCHWELCOME;
}
int avformat_network_init(void)
{
#if CONFIG_NETWORK
int ret;
if ((ret = ff_network_init()) < 0)
return ret;
ff_tls_init();
#endif
return 0;
}
int avformat_network_deinit(void)
{
#if CONFIG_NETWORK
ff_network_close();
ff_tls_deinit();
#endif
return 0;
}

View File

@ -24,7 +24,7 @@
#include "libavutil/avutil.h"
#define LIBAVFORMAT_VERSION_MAJOR 53
#define LIBAVFORMAT_VERSION_MINOR 12
#define LIBAVFORMAT_VERSION_MINOR 13
#define LIBAVFORMAT_VERSION_MICRO 0
#define LIBAVFORMAT_VERSION_INT AV_VERSION_INT(LIBAVFORMAT_VERSION_MAJOR, \