summaryrefslogtreecommitdiff
path: root/libavcodec/avcodec.h
diff options
context:
space:
mode:
authorAnton Khirnov <anton@khirnov.net>2016-05-21 11:46:44 +0200
committerAnton Khirnov <anton@khirnov.net>2016-05-23 06:46:17 +0200
commit5f30ac27795f9f98043e8582ccaad8813104adc4 (patch)
treec31dc7f98cce49b6b8eaf91c04dd532fb3f43978 /libavcodec/avcodec.h
parent14634429b915333f3612eaf41db3954222dc4aaf (diff)
lavc: deprecate avcodec_copy_context()
Since AVCodecContext contains a lot of complex state, copying a codec context is not a well-defined operation. The purpose for which it is typically used (which is well-defined) is copying the stream parameters from one codec context to another. That is now possible with through the AVCodecParameters API. Therefore, there is no reason for avcodec_copy_context() to exist.
Diffstat (limited to 'libavcodec/avcodec.h')
-rw-r--r--libavcodec/avcodec.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/libavcodec/avcodec.h b/libavcodec/avcodec.h
index bb545651ae..639ecf343e 100644
--- a/libavcodec/avcodec.h
+++ b/libavcodec/avcodec.h
@@ -3648,6 +3648,7 @@ int avcodec_get_context_defaults3(AVCodecContext *s, const AVCodec *codec);
*/
const AVClass *avcodec_get_class(void);
+#if FF_API_COPY_CONTEXT
/**
* Copy the settings of the source AVCodecContext into the destination
* AVCodecContext. The resulting destination codec context will be
@@ -3658,8 +3659,16 @@ const AVClass *avcodec_get_class(void);
* avcodec_alloc_context3(), but otherwise uninitialized
* @param src source codec context
* @return AVERROR() on error (e.g. memory allocation error), 0 on success
+ *
+ * @deprecated The semantics of this function are ill-defined and it should not
+ * be used. If you need to transfer the stream parameters from one codec context
+ * to another, use an intermediate AVCodecParameters instance and the
+ * avcodec_parameters_from_context() / avcodec_parameters_to_context()
+ * functions.
*/
+attribute_deprecated
int avcodec_copy_context(AVCodecContext *dest, const AVCodecContext *src);
+#endif
/**
* Allocate a new AVCodecParameters and set its fields to default values