[FFmpeg-cvslog] Merge commit '5c1585c4c3b5281835d784c5daef0069915ccd57'
James Almer
git at videolan.org
Sun Oct 22 05:49:32 EEST 2017
ffmpeg | branch: master | James Almer <jamrial at gmail.com> | Sat Oct 21 23:48:29 2017 -0300| [17487f11bb68b1d43a5d1048749cef7f627bacdb] | committer: James Almer
Merge commit '5c1585c4c3b5281835d784c5daef0069915ccd57'
* commit '5c1585c4c3b5281835d784c5daef0069915ccd57':
lavc: Drop deprecated VDPAU buffer fields
Merged-by: James Almer <jamrial at gmail.com>
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=17487f11bb68b1d43a5d1048749cef7f627bacdb
---
libavcodec/vdpau.c | 25 -------------------------
libavcodec/vdpau.h | 43 -------------------------------------------
libavcodec/version.h | 3 ---
3 files changed, 71 deletions(-)
diff --git a/libavcodec/vdpau.c b/libavcodec/vdpau.c
index 4cc51cb79e..7053dd162a 100644
--- a/libavcodec/vdpau.c
+++ b/libavcodec/vdpau.c
@@ -33,9 +33,6 @@
// XXX: at the time of adding this ifdefery, av_assert* wasn't use outside.
// When dropping it, make sure other av_assert* were not added since then.
-#if FF_API_BUFS_VDPAU
-#include "libavutil/avassert.h"
-#endif
#if FF_API_VDPAU
#undef NDEBUG
@@ -353,18 +350,6 @@ int ff_vdpau_common_end_frame(AVCodecContext *avctx, AVFrame *frame,
if (val < 0)
return val;
-#if FF_API_BUFS_VDPAU
-FF_DISABLE_DEPRECATION_WARNINGS
- if (hwctx) {
- av_assert0(sizeof(hwctx->info) <= sizeof(pic_ctx->info));
- memcpy(&hwctx->info, &pic_ctx->info, sizeof(hwctx->info));
- hwctx->bitstream_buffers = pic_ctx->bitstream_buffers;
- hwctx->bitstream_buffers_used = pic_ctx->bitstream_buffers_used;
- hwctx->bitstream_buffers_allocated = pic_ctx->bitstream_buffers_allocated;
- }
-FF_ENABLE_DEPRECATION_WARNINGS
-#endif
-
if (hwctx && !hwctx->render && hwctx->render2) {
status = hwctx->render2(avctx, frame, (void *)&pic_ctx->info,
pic_ctx->bitstream_buffers_used, pic_ctx->bitstream_buffers);
@@ -375,16 +360,6 @@ FF_ENABLE_DEPRECATION_WARNINGS
av_freep(&pic_ctx->bitstream_buffers);
-#if FF_API_BUFS_VDPAU
-FF_DISABLE_DEPRECATION_WARNINGS
- if (hwctx) {
- hwctx->bitstream_buffers = NULL;
- hwctx->bitstream_buffers_used = 0;
- hwctx->bitstream_buffers_allocated = 0;
- }
-FF_ENABLE_DEPRECATION_WARNINGS
-#endif
-
return vdpau_error(status);
}
diff --git a/libavcodec/vdpau.h b/libavcodec/vdpau.h
index 458e4fa605..4d99943369 100644
--- a/libavcodec/vdpau.h
+++ b/libavcodec/vdpau.h
@@ -57,15 +57,6 @@
#include "avcodec.h"
#include "version.h"
-#if FF_API_BUFS_VDPAU
-union AVVDPAUPictureInfo {
- VdpPictureInfoH264 h264;
- VdpPictureInfoMPEG1Or2 mpeg;
- VdpPictureInfoVC1 vc1;
- VdpPictureInfoMPEG4Part2 mpeg4;
-};
-#endif
-
struct AVCodecContext;
struct AVFrame;
@@ -102,40 +93,6 @@ typedef struct AVVDPAUContext {
*/
VdpDecoderRender *render;
-#if FF_API_BUFS_VDPAU
- /**
- * VDPAU picture information
- *
- * Set by libavcodec.
- */
- attribute_deprecated
- union AVVDPAUPictureInfo info;
-
- /**
- * Allocated size of the bitstream_buffers table.
- *
- * Set by libavcodec.
- */
- attribute_deprecated
- int bitstream_buffers_allocated;
-
- /**
- * Useful bitstream buffers in the bitstream buffers table.
- *
- * Set by libavcodec.
- */
- attribute_deprecated
- int bitstream_buffers_used;
-
- /**
- * Table of bitstream buffers.
- * The user is responsible for freeing this buffer using av_freep().
- *
- * Set by libavcodec.
- */
- attribute_deprecated
- VdpBitstreamBuffer *bitstream_buffers;
-#endif
AVVDPAU_Render2 render2;
} AVVDPAUContext;
diff --git a/libavcodec/version.h b/libavcodec/version.h
index 0335a2868c..55b7cfff11 100644
--- a/libavcodec/version.h
+++ b/libavcodec/version.h
@@ -57,9 +57,6 @@
#ifndef FF_API_LOWRES
#define FF_API_LOWRES (LIBAVCODEC_VERSION_MAJOR < 59)
#endif
-#ifndef FF_API_BUFS_VDPAU
-#define FF_API_BUFS_VDPAU (LIBAVCODEC_VERSION_MAJOR < 58)
-#endif
#ifndef FF_API_VOXWARE
#define FF_API_VOXWARE (LIBAVCODEC_VERSION_MAJOR < 58)
#endif
======================================================================
diff --cc libavcodec/vdpau.c
index 4cc51cb79e,68d0813f65..7053dd162a
--- a/libavcodec/vdpau.c
+++ b/libavcodec/vdpau.c
@@@ -28,20 -28,8 +28,17 @@@
#include "h264dec.h"
#include "vc1.h"
#include "vdpau.h"
+#include "vdpau_compat.h"
#include "vdpau_internal.h"
+// XXX: at the time of adding this ifdefery, av_assert* wasn't use outside.
+// When dropping it, make sure other av_assert* were not added since then.
- #if FF_API_BUFS_VDPAU
- #include "libavutil/avassert.h"
- #endif
+
+#if FF_API_VDPAU
+#undef NDEBUG
+#include <assert.h>
+#endif
+
/**
* @addtogroup VDPAU_Decoding
*
@@@ -353,38 -314,11 +350,16 @@@ int ff_vdpau_common_end_frame(AVCodecCo
if (val < 0)
return val;
- #if FF_API_BUFS_VDPAU
- FF_DISABLE_DEPRECATION_WARNINGS
- if (hwctx) {
- av_assert0(sizeof(hwctx->info) <= sizeof(pic_ctx->info));
- memcpy(&hwctx->info, &pic_ctx->info, sizeof(hwctx->info));
- hwctx->bitstream_buffers = pic_ctx->bitstream_buffers;
- hwctx->bitstream_buffers_used = pic_ctx->bitstream_buffers_used;
- hwctx->bitstream_buffers_allocated = pic_ctx->bitstream_buffers_allocated;
- }
- FF_ENABLE_DEPRECATION_WARNINGS
- #endif
-
+ if (hwctx && !hwctx->render && hwctx->render2) {
+ status = hwctx->render2(avctx, frame, (void *)&pic_ctx->info,
+ pic_ctx->bitstream_buffers_used, pic_ctx->bitstream_buffers);
+ } else
status = vdctx->render(vdctx->decoder, surf, &pic_ctx->info,
pic_ctx->bitstream_buffers_used,
pic_ctx->bitstream_buffers);
av_freep(&pic_ctx->bitstream_buffers);
+
- #if FF_API_BUFS_VDPAU
- FF_DISABLE_DEPRECATION_WARNINGS
- if (hwctx) {
- hwctx->bitstream_buffers = NULL;
- hwctx->bitstream_buffers_used = 0;
- hwctx->bitstream_buffers_allocated = 0;
- }
- FF_ENABLE_DEPRECATION_WARNINGS
- #endif
-
return vdpau_error(status);
}
diff --cc libavcodec/vdpau.h
index 458e4fa605,a5d31cb37b..4d99943369
--- a/libavcodec/vdpau.h
+++ b/libavcodec/vdpau.h
@@@ -57,22 -56,6 +57,13 @@@
#include "avcodec.h"
#include "version.h"
- #if FF_API_BUFS_VDPAU
- union AVVDPAUPictureInfo {
- VdpPictureInfoH264 h264;
- VdpPictureInfoMPEG1Or2 mpeg;
- VdpPictureInfoVC1 vc1;
- VdpPictureInfoMPEG4Part2 mpeg4;
- };
- #endif
-
+struct AVCodecContext;
+struct AVFrame;
+
+typedef int (*AVVDPAU_Render2)(struct AVCodecContext *, struct AVFrame *,
+ const VdpPictureInfo *, uint32_t,
+ const VdpBitstreamBuffer *);
+
/**
* This structure is used to share data between the libavcodec library and
* the client video application.
@@@ -101,42 -83,6 +92,8 @@@ typedef struct AVVDPAUContext
* Set by the user.
*/
VdpDecoderRender *render;
+
- #if FF_API_BUFS_VDPAU
- /**
- * VDPAU picture information
- *
- * Set by libavcodec.
- */
- attribute_deprecated
- union AVVDPAUPictureInfo info;
-
- /**
- * Allocated size of the bitstream_buffers table.
- *
- * Set by libavcodec.
- */
- attribute_deprecated
- int bitstream_buffers_allocated;
-
- /**
- * Useful bitstream buffers in the bitstream buffers table.
- *
- * Set by libavcodec.
- */
- attribute_deprecated
- int bitstream_buffers_used;
-
- /**
- * Table of bitstream buffers.
- * The user is responsible for freeing this buffer using av_freep().
- *
- * Set by libavcodec.
- */
- attribute_deprecated
- VdpBitstreamBuffer *bitstream_buffers;
- #endif
+ AVVDPAU_Render2 render2;
} AVVDPAUContext;
/**
diff --cc libavcodec/version.h
index 0335a2868c,033909a1e4..55b7cfff11
--- a/libavcodec/version.h
+++ b/libavcodec/version.h
@@@ -45,21 -45,8 +45,18 @@@
* FF_API_* defines may be placed below to indicate public API that will be
* dropped at a future version bump. The defines themselves are not part of
* the public API and may change, break or disappear at any time.
+ *
+ * @note, when bumping the major version it is recommended to manually
+ * disable each FF_API_* in its own commit instead of disabling them all
+ * at once through the bump. This improves the git bisect-ability of the change.
*/
+#ifndef FF_API_VIMA_DECODER
+#define FF_API_VIMA_DECODER (LIBAVCODEC_VERSION_MAJOR < 58)
+#endif
+#ifndef FF_API_LOWRES
+#define FF_API_LOWRES (LIBAVCODEC_VERSION_MAJOR < 59)
+#endif
- #ifndef FF_API_BUFS_VDPAU
- #define FF_API_BUFS_VDPAU (LIBAVCODEC_VERSION_MAJOR < 58)
- #endif
#ifndef FF_API_VOXWARE
#define FF_API_VOXWARE (LIBAVCODEC_VERSION_MAJOR < 58)
#endif
More information about the ffmpeg-cvslog
mailing list