]> git.sesse.net Git - vlc/commitdiff
Fix building AAC profile selection for outdated ffmpeg versions.
authorJean-Paul Saman <jpsaman@videolan.org>
Tue, 11 Mar 2008 10:44:35 +0000 (11:44 +0100)
committerJean-Paul Saman <jpsaman@videolan.org>
Tue, 11 Mar 2008 10:44:35 +0000 (11:44 +0100)
modules/codec/ffmpeg/encoder.c
modules/codec/ffmpeg/ffmpeg.c
modules/codec/ffmpeg/ffmpeg.h

index 1c0adc466eada4d1163457ca227e64a7cfda1fe9..c8021db238ecadb67f8807b631d3896198a2491b 100644 (file)
@@ -141,8 +141,9 @@ struct encoder_sys_t
     int        i_quality; /* for VBR */
     float      f_lumi_masking, f_dark_masking, f_p_masking, f_border_masking;
     int        i_luma_elim, i_chroma_elim;
+#if LIBAVCODEC_VERSION_INT >= ((51<<16)+(40<<8)+4)
     int        i_aac_profile; /* AAC profile to use.*/
-
+#endif
     /* Used to work around stupid timestamping behaviour in libavcodec */
     uint64_t i_framenum;
     mtime_t  pi_delay_pts[MAX_FRAME_DELAY];
@@ -154,7 +155,11 @@ static const char *ppsz_enc_options[] = {
     "interlace", "i-quant-factor", "noise-reduction", "mpeg4-matrix",
     "trellis", "qscale", "strict", "lumi-masking", "dark-masking",
     "p-masking", "border-masking", "luma-elim-threshold",
-    "chroma-elim-threshold", "aac-profile", NULL
+    "chroma-elim-threshold", 
+#if LIBAVCODEC_VERSION_INT >= ((51<<16)+(40<<8)+4)
+     "aac-profile", 
+#endif
+     NULL
 };
 
 static const uint16_t mpa_bitrate_tab[2][15] =
@@ -371,6 +376,7 @@ int E_(OpenEncoder)( vlc_object_t *p_this )
     var_Get( p_enc, ENC_CFG_PREFIX "chroma-elim-threshold", &val );
     p_sys->i_chroma_elim = val.i_int;
 
+#if LIBAVCODEC_VERSION_INT >= ((51<<16)+(40<<8)+4)
     var_Get( p_enc, ENC_CFG_PREFIX "aac-profile", &val );
     p_sys->i_aac_profile = FF_PROFILE_UNKNOWN;
     if( val.psz_string && *val.psz_string )
@@ -392,6 +398,7 @@ int E_(OpenEncoder)( vlc_object_t *p_this )
         }
     }
     if( val.psz_string ) free( val.psz_string );
+#endif
 
     if( p_enc->fmt_in.i_cat == VIDEO_ES )
     {
@@ -558,10 +565,12 @@ int E_(OpenEncoder)( vlc_object_t *p_this )
         p_context->sample_rate = p_enc->fmt_in.audio.i_rate;
         p_context->channels    = p_enc->fmt_in.audio.i_channels;
 
+#if LIBAVCODEC_VERSION_INT >= ((51<<16)+(40<<8)+4)
         /* Ignore FF_PROFILE_UNKNOWN */
         if( ( p_sys->i_aac_profile >= FF_PROFILE_AAC_MAIN ) && 
             ( p_enc->fmt_out.i_codec == VLC_FOURCC('m','p','4','a') ) )
             p_context->profile = p_sys->i_aac_profile;
+#endif
     }
 
     /* Misc parameters */
index ee9a7ea535edcf77e7af9e228950ce625273b421..5d00ec185435462dae86f36929d5e361483fd787 100644 (file)
@@ -198,9 +198,11 @@ vlc_module_begin();
     add_integer( ENC_CFG_PREFIX "chroma-elim-threshold", 0, NULL,
                  ENC_CHROMA_ELIM_TEXT, ENC_CHROMA_ELIM_LONGTEXT, VLC_TRUE );
 
+#if LIBAVCODEC_VERSION_INT >= ((51<<16)+(40<<8)+4)
     /* Audio AAC encoder profile */
     add_string( ENC_CFG_PREFIX "aac-profile", "main", NULL,
                 ENC_PROFILE_TEXT, ENC_PROFILE_LONGTEXT, VLC_TRUE );
+#endif
 
 #if defined(HAVE_LIBAVFORMAT_AVFORMAT_H) || defined(HAVE_FFMPEG_AVFORMAT_H) || defined(HAVE_LIBAVFORMAT_TREE)
 
index 05257ede25f2f41ad4430c19b4b48f3cd63215eb..936f78a41b519e3c220c81a9d2a632ffc546b00d 100644 (file)
@@ -306,10 +306,12 @@ N_("<filterName>[:<option>[:<option>...]][[,|/][-]<filterName>[:<option>...]]...
   "the PSNR isn't much changed (default: 0.0). The H264 specification " \
   "recommends 7." )
 
+#if LIBAVCODEC_VERSION_INT >= ((51<<16)+(40<<8)+4)
 #define ENC_PROFILE_TEXT N_( "Specify AAC audio profile to use" )
 #define ENC_PROFILE_LONGTEXT N_( "Specify the AAC audio profile to use " \
    "for encoding the audio bitstream. It takes the following options: " \
    "main, low, ssr (not supported) and ltp (default: main)" )
+#endif
 
 #define SCALEMODE_TEXT N_("Scaling mode")
 #define SCALEMODE_LONGTEXT N_("Scaling mode to use.")