[Bf-blender-cvs] [8c3b27c] master: Change libavcodec CODEC_ID_* to AV_CODEC_ID_*
Anton Khirnov
noreply at git.blender.org
Tue Jan 28 09:28:42 CET 2014
Commit: 8c3b27ce279f1f0904af3c220d92acfa1f20a70e
Author: Anton Khirnov
Date: Thu Jan 16 15:40:37 2014 +0100
https://developer.blender.org/rB8c3b27ce279f1f0904af3c220d92acfa1f20a70e
Change libavcodec CODEC_ID_* to AV_CODEC_ID_*
CODEC_ID_* have been replaced with AV_CODEC_ID_* in new libavcodec
versions.
Update the code to use those new identifiers.
Added a compatibility code to ffmpeg_compat.h
===================================================================
M intern/audaspace/ffmpeg/AUD_FFMPEGWriter.cpp
M intern/ffmpeg/ffmpeg_compat.h
M source/blender/blenkernel/intern/writeffmpeg.c
M source/blender/imbuf/intern/indexer.c
M source/blender/makesrna/intern/CMakeLists.txt
M source/blender/makesrna/intern/SConscript
M source/blender/makesrna/intern/rna_scene.c
===================================================================
diff --git a/intern/audaspace/ffmpeg/AUD_FFMPEGWriter.cpp b/intern/audaspace/ffmpeg/AUD_FFMPEGWriter.cpp
index 55040e4..d35b6d5 100644
--- a/intern/audaspace/ffmpeg/AUD_FFMPEGWriter.cpp
+++ b/intern/audaspace/ffmpeg/AUD_FFMPEGWriter.cpp
@@ -68,57 +68,57 @@ AUD_FFMPEGWriter::AUD_FFMPEGWriter(std::string filename, AUD_DeviceSpecs specs,
switch(codec)
{
case AUD_CODEC_AAC:
- m_outputFmt->audio_codec = CODEC_ID_AAC;
+ m_outputFmt->audio_codec = AV_CODEC_ID_AAC;
break;
case AUD_CODEC_AC3:
- m_outputFmt->audio_codec = CODEC_ID_AC3;
+ m_outputFmt->audio_codec = AV_CODEC_ID_AC3;
break;
case AUD_CODEC_FLAC:
- m_outputFmt->audio_codec = CODEC_ID_FLAC;
+ m_outputFmt->audio_codec = AV_CODEC_ID_FLAC;
break;
case AUD_CODEC_MP2:
- m_outputFmt->audio_codec = CODEC_ID_MP2;
+ m_outputFmt->audio_codec = AV_CODEC_ID_MP2;
break;
case AUD_CODEC_MP3:
- m_outputFmt->audio_codec = CODEC_ID_MP3;
+ m_outputFmt->audio_codec = AV_CODEC_ID_MP3;
break;
case AUD_CODEC_PCM:
switch(specs.format)
{
case AUD_FORMAT_U8:
- m_outputFmt->audio_codec = CODEC_ID_PCM_U8;
+ m_outputFmt->audio_codec = AV_CODEC_ID_PCM_U8;
break;
case AUD_FORMAT_S16:
- m_outputFmt->audio_codec = CODEC_ID_PCM_S16LE;
+ m_outputFmt->audio_codec = AV_CODEC_ID_PCM_S16LE;
break;
case AUD_FORMAT_S24:
- m_outputFmt->audio_codec = CODEC_ID_PCM_S24LE;
+ m_outputFmt->audio_codec = AV_CODEC_ID_PCM_S24LE;
break;
case AUD_FORMAT_S32:
- m_outputFmt->audio_codec = CODEC_ID_PCM_S32LE;
+ m_outputFmt->audio_codec = AV_CODEC_ID_PCM_S32LE;
break;
case AUD_FORMAT_FLOAT32:
- m_outputFmt->audio_codec = CODEC_ID_PCM_F32LE;
+ m_outputFmt->audio_codec = AV_CODEC_ID_PCM_F32LE;
break;
case AUD_FORMAT_FLOAT64:
- m_outputFmt->audio_codec = CODEC_ID_PCM_F64LE;
+ m_outputFmt->audio_codec = AV_CODEC_ID_PCM_F64LE;
break;
default:
- m_outputFmt->audio_codec = CODEC_ID_NONE;
+ m_outputFmt->audio_codec = AV_CODEC_ID_NONE;
break;
}
break;
case AUD_CODEC_VORBIS:
- m_outputFmt->audio_codec = CODEC_ID_VORBIS;
+ m_outputFmt->audio_codec = AV_CODEC_ID_VORBIS;
break;
default:
- m_outputFmt->audio_codec = CODEC_ID_NONE;
+ m_outputFmt->audio_codec = AV_CODEC_ID_NONE;
break;
}
try
{
- if(m_outputFmt->audio_codec == CODEC_ID_NONE)
+ if(m_outputFmt->audio_codec == AV_CODEC_ID_NONE)
AUD_THROW(AUD_ERROR_SPECS, codec_error);
m_stream = avformat_new_stream(m_formatCtx, NULL);
diff --git a/intern/ffmpeg/ffmpeg_compat.h b/intern/ffmpeg/ffmpeg_compat.h
index cca5f64..3243781 100644
--- a/intern/ffmpeg/ffmpeg_compat.h
+++ b/intern/ffmpeg/ffmpeg_compat.h
@@ -104,6 +104,37 @@ int av_sample_fmt_is_planar(enum AVSampleFormat sample_fmt)
#endif
+/* FFmpeg upstream 1.0 is the first who added AV_ prefix. */
+#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(54, 59, 100)
+# define AV_CODEC_ID_NONE CODEC_ID_NONE
+# define AV_CODEC_ID_MPEG4 CODEC_ID_MPEG4
+# define AV_CODEC_ID_MJPEG CODEC_ID_MJPEG
+# define AV_CODEC_ID_DNXHD CODEC_ID_DNXHD
+# define AV_CODEC_ID_MPEG2VIDEO CODEC_ID_MPEG2VIDEO
+# define AV_CODEC_ID_MPEG1VIDEO CODEC_ID_MPEG1VIDEO
+# define AV_CODEC_ID_DVVIDEO CODEC_ID_DVVIDEO
+# define AV_CODEC_ID_THEORA CODEC_ID_THEORA
+# define AV_CODEC_ID_PNG CODEC_ID_PNG
+# define AV_CODEC_ID_QTRLE CODEC_ID_QTRLE
+# define AV_CODEC_ID_FFV1 CODEC_ID_FFV1
+# define AV_CODEC_ID_HUFFYUV CODEC_ID_HUFFYUV
+# define AV_CODEC_ID_H264 CODEC_ID_H264
+# define AV_CODEC_ID_FLV1 CODEC_ID_FLV1
+
+# define AV_CODEC_ID_AAC CODEC_ID_AAC
+# define AV_CODEC_ID_AC3 CODEC_ID_AC3
+# define AV_CODEC_ID_MP3 CODEC_ID_MP3
+# define AV_CODEC_ID_MP2 CODEC_ID_MP2
+# define AV_CODEC_ID_FLAC CODEC_ID_FLAC
+# define AV_CODEC_ID_PCM_U8 CODEC_ID_PCM_U8
+# define AV_CODEC_ID_PCM_S16LE CODEC_ID_PCM_S16LE
+# define AV_CODEC_ID_PCM_S24LE CODEC_ID_PCM_S24LE
+# define AV_CODEC_ID_PCM_S32LE CODEC_ID_PCM_S32LE
+# define AV_CODEC_ID_PCM_F32LE CODEC_ID_PCM_F32LE
+# define AV_CODEC_ID_PCM_F64LE CODEC_ID_PCM_F64LE
+# define AV_CODEC_ID_VORBIS CODEC_ID_VORBIS
+#endif
+
FFMPEG_INLINE
int av_get_cropped_height_from_codec(AVCodecContext *pCodecCtx)
{
@@ -124,7 +155,7 @@ int av_get_cropped_height_from_codec(AVCodecContext *pCodecCtx)
if (pCodecCtx->width == 1920 &&
pCodecCtx->height == 1088 &&
pCodecCtx->pix_fmt == PIX_FMT_YUVJ420P &&
- pCodecCtx->codec_id == CODEC_ID_H264 ) {
+ pCodecCtx->codec_id == AV_CODEC_ID_H264 ) {
y = 1080;
}
#endif
diff --git a/source/blender/blenkernel/intern/writeffmpeg.c b/source/blender/blenkernel/intern/writeffmpeg.c
index d975e60..38f80e7 100644
--- a/source/blender/blenkernel/intern/writeffmpeg.c
+++ b/source/blender/blenkernel/intern/writeffmpeg.c
@@ -70,8 +70,8 @@
#include "ffmpeg_compat.h"
static int ffmpeg_type = 0;
-static int ffmpeg_codec = CODEC_ID_MPEG4;
-static int ffmpeg_audio_codec = CODEC_ID_NONE;
+static int ffmpeg_codec = AV_CODEC_ID_MPEG4;
+static int ffmpeg_audio_codec = AV_CODEC_ID_NONE;
static int ffmpeg_video_bitrate = 1150;
static int ffmpeg_audio_bitrate = 128;
static int ffmpeg_gop_size = 12;
@@ -119,7 +119,7 @@ static void delete_picture(AVFrame *f)
static int request_float_audio_buffer(int codec_id)
{
/* If any of these codecs, we prefer the float sample format (if supported) */
- return codec_id == CODEC_ID_AAC || codec_id == CODEC_ID_AC3 || codec_id == CODEC_ID_VORBIS;
+ return codec_id == AV_CODEC_ID_AAC || codec_id == AV_CODEC_ID_AC3 || codec_id == AV_CODEC_ID_VORBIS;
}
#ifdef WITH_AUDASPACE
@@ -474,7 +474,7 @@ static int ffmpeg_proprty_valid(AVCodecContext *c, const char *prop_name, IDProp
if (strcmp(prop_name, "video") == 0) {
if (strcmp(curr->name, "bf") == 0) {
/* flash codec doesn't support b frames */
- valid &= c->codec_id != CODEC_ID_FLV1;
+ valid &= c->codec_id != AV_CODEC_ID_FLV1;
}
}
@@ -580,29 +580,29 @@ static AVStream *alloc_video_stream(RenderData *rd, int codec_id, AVFormatContex
c->codec_tag = (('D' << 24) + ('I' << 16) + ('V' << 8) + 'X');
}
- if (codec_id == CODEC_ID_H264) {
+ if (codec_id == AV_CODEC_ID_H264) {
/* correct wrong default ffmpeg param which crash x264 */
c->qmin = 10;
c->qmax = 51;
}
/* Keep lossless encodes in the RGB domain. */
- if (codec_id == CODEC_ID_HUFFYUV) {
+ if (codec_id == AV_CODEC_ID_HUFFYUV) {
/* HUFFYUV was PIX_FMT_YUV422P before */
c->pix_fmt = PIX_FMT_RGB32;
}
- if (codec_id == CODEC_ID_FFV1) {
+ if (codec_id == AV_CODEC_ID_FFV1) {
c->pix_fmt = PIX_FMT_RGB32;
}
- if (codec_id == CODEC_ID_QTRLE) {
+ if (codec_id == AV_CODEC_ID_QTRLE) {
if (rd->im_format.planes == R_IMF_PLANES_RGBA) {
c->pix_fmt = PIX_FMT_ARGB;
}
}
- if (codec_id == CODEC_ID_PNG) {
+ if (codec_id == AV_CODEC_ID_PNG) {
if (rd->im_format.planes == R_IMF_PLANES_RGBA) {
c->pix_fmt = PIX_FMT_ARGB;
}
@@ -638,7 +638,7 @@ static AVStream *alloc_video_stream(RenderData *rd, int codec_id, AVFormatContex
return NULL;
}
- if (codec_id == CODEC_ID_QTRLE) {
+ if (codec_id == AV_CODEC_ID_QTRLE) {
/* normally it should be enough to have buffer with actual image size,
* but some codecs like QTRLE might store extra information in this buffer,
* so it should be a way larger */
@@ -828,7 +828,7 @@ static int start_ffmpeg_impl(struct RenderData *rd, int rectx, int recty, Report
of->oformat = fmt;
of->packet_size = rd->ffcodecdata.mux_packet_size;
- if (ffmpeg_audio_codec != CODEC_ID_NONE) {
+ if (ffmpeg_audio_codec != AV_CODEC_ID_NONE) {
ffmpeg_dict_set_int(&opts, "muxrate", rd->ffcodecdata.mux_rate);
}
else {
@@ -850,32 +850,32 @@ static int start_ffmpeg_impl(struct RenderData *rd, int rectx, int recty, Report
fmt->video_codec = ffmpeg_codec;
break;
case FFMPEG_OGG:
- fmt->video_codec = CODEC_ID_THEORA;
+ fmt->video_codec = AV_CODEC_ID_THEORA;
break;
case FFMPEG_DV:
- fmt->video_codec = CODEC_ID_DVVIDEO;
+ fmt->video_codec = AV_CODEC_ID_DVVIDEO;
break;
case FFMPEG_MPEG1:
- fmt->video_codec = CODEC_ID_MPEG1VIDEO;
+ fmt->video_codec = AV_CODEC_ID_MPEG1VIDEO;
break;
case FFMPEG_MPEG2:
- fmt->video_codec = CODEC_ID_MPEG2VIDEO;
+ fmt->video_codec = AV_CODEC_ID_MPEG2VIDEO;
break;
case FFMPEG_H264:
- fmt->video_codec = CODEC_ID_H264;
+ fmt->video_codec = AV_CODEC_ID_H264;
break;
case FFMPEG_XVID:
- fmt->video_codec = CODEC_ID_MPEG4;
+ fmt->video_codec = AV_CODEC_ID_MPEG4;
break;
case FFMPEG_FLV:
- fmt->video_codec = CODEC_ID_FLV1;
+ fmt->video_codec = AV_CODEC_ID_FLV1;
break;
case FFMPEG_MPEG4:
default:
- fmt->video_codec = CODEC_ID_MPEG4;
+ fmt->video_codec = AV_CODEC_ID_MPEG4;
break;
}
- if (fmt->video_codec == CODEC_ID_DVVIDEO) {
+ if (fmt->video_codec == AV_CODEC_ID_DVVIDEO) {
if (rectx != 720) {
BKE_report(reports, RPT_ERROR, "Render width has to be 720 pixels for DV!");
return 0;
@@ -891,15 +891,15 @@ static int start_ffmpeg_impl(struct RenderData *rd, int rectx, int recty, Report
}
if (ffmpeg_type == FFMPEG_DV) {
- fmt->audio_codec = CODEC_ID_PCM_S16LE;
- if (ffmpeg_audio_codec != CODEC_ID_NONE && rd->ffcodecdata.audio_mixrate != 48000 && rd->ffcodecdata.audio_channels != 2) {
+ fmt->audio_codec = AV_CODEC_ID_PCM_S16LE;
+ if (ffmpeg_audio_codec != AV_CODEC_ID_NONE && rd->ffcodecdata.audio_mixrate != 48000 && rd->ffcodecdata.audio_channels != 2) {
BKE_report(reports, RPT_ERROR, "FFMPEG only supports 48khz / stereo audio for DV!");
av_dict_free(&opts);
return 0;
}
}
- if (fmt->video_codec != CODEC_ID_NONE) {
+ if (fmt->video_codec != AV_CODEC_ID_NONE) {
video_stream = alloc_video_stream(rd, fmt->video_codec, of, rectx, recty, error, sizeof(error));
PRINT("alloc video stream %p\n", video_stream);
if (!video_stream) {
@@ -913,7 +913,7 @@ static int start_ffmpeg_impl(struct RenderData *rd, int rectx, int recty, Report
}
}
- if (ffmpeg_audio_codec != CODEC_ID_NONE) {
+ if (ffmpeg_audio_codec != AV_CODEC_ID_NONE) {
audio_stream = alloc_audio_stream(rd, fmt->audio_codec, of, error, sizeof(error));
if (!audio_stream) {
if (error[0])
@@ -1418,7 +1418,7 @@ static void ffmpeg_set_expert_options(RenderData *rd)
if (rd->ffcodecdata.properties)
IDP_FreeProperty(rd->ff
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-blender-cvs
mailing list