summaryrefslogtreecommitdiff
path: root/mpeg4ip-x264.patch
diff options
context:
space:
mode:
Diffstat (limited to 'mpeg4ip-x264.patch')
-rw-r--r--mpeg4ip-x264.patch67
1 files changed, 67 insertions, 0 deletions
diff --git a/mpeg4ip-x264.patch b/mpeg4ip-x264.patch
new file mode 100644
index 0000000..ff74651
--- /dev/null
+++ b/mpeg4ip-x264.patch
@@ -0,0 +1,67 @@
+--- mpeg4ip-1.5.0.1/server/mp4live/video_x264.cpp 2006-05-11 22:23:19.000000000 +0200
++++ /home/alexis/mpeg4ip/mpeg4ip/server/mp4live/video_x264.cpp 2006-09-29 21:55:42.000000000 +0200
+@@ -32,7 +32,9 @@
+
+ static config_index_t CFG_X264_FORCE_BASELINE;
+ static config_index_t CFG_X264_USE_CABAC;
++#ifndef HAVE_X264_PARAM_T_RC_I_RC_METHOD
+ static config_index_t CFG_X264_USE_CBR;
++#endif
+ static config_index_t CFG_X264_BIT_RATE_TOLERANCE;
+ static config_index_t CFG_X264_USE_VBV;
+ static config_index_t CFG_X264_VBV_BITRATE_MULT;
+@@ -44,7 +46,9 @@
+ static SConfigVariable X264EncoderVariables[] = {
+ CONFIG_BOOL(CFG_X264_FORCE_BASELINE, "x264ForceBaseline", false),
+ CONFIG_BOOL(CFG_X264_USE_CABAC, "x264UseCabac", true),
++#ifndef HAVE_X264_PARAM_T_RC_I_RC_METHOD
+ CONFIG_BOOL(CFG_X264_USE_CBR, "x264UseCbr", true),
++#endif
+ CONFIG_FLOAT(CFG_X264_BIT_RATE_TOLERANCE, "x264BitRateTolerance", 1.0),
+ CONFIG_BOOL(CFG_X264_USE_VBV, "x264UseVbv", false),
+ CONFIG_FLOAT(CFG_X264_VBV_BITRATE_MULT, "x264VbvBitRateMult", 1.0),
+@@ -56,7 +60,9 @@
+
+ GUI_BOOL(gui_baseline, CFG_X264_FORCE_BASELINE, "Force Baseline (overrides below)");
+ GUI_BOOL(gui_cabac, CFG_X264_USE_CABAC, "Use Cabac");
++#ifndef HAVE_X264_PARAM_T_RC_I_RC_METHOD
+ GUI_BOOL(gui_cbr, CFG_X264_USE_CBR, "Use CBR");
++#endif
+ GUI_BOOL(gui_bframe, CFG_VIDEO_USE_B_FRAMES, "Use B Frames");
+ GUI_INT_RANGE(gui_bframenum, CFG_VIDEO_NUM_OF_B_FRAMES, "Number of B frames", 1, 4);
+
+@@ -75,7 +81,9 @@
+ DECLARE_TABLE(x264_gui_options) = {
+ TABLE_GUI(gui_baseline),
+ TABLE_GUI(gui_cabac),
++#ifndef HAVE_X264_PARAM_T_RC_I_RC_METHOD
+ TABLE_GUI(gui_cbr),
++#endif
+ TABLE_GUI(gui_bframe),
+ TABLE_GUI(gui_bframenum),
+ TABLE_GUI(gui_brate),
+@@ -168,7 +176,11 @@
+ m_param.i_bframe = 0;
+ //debug_message("h264 b frames %d", m_param.i_bframe);
+ m_param.rc.i_bitrate = Profile()->GetIntegerValue(CFG_VIDEO_BIT_RATE);
++#ifndef HAVE_X264_PARAM_T_RC_I_RC_METHOD
+ m_param.rc.b_cbr = Profile()->GetBoolValue(CFG_X264_USE_CBR) ? 1 : 0;
++#else
++ m_param.rc.i_rc_method = X264_RC_ABR;
++#endif
+ m_param.rc.f_rate_tolerance = Profile()->GetFloatValue(CFG_X264_BIT_RATE_TOLERANCE);
+ if (Profile()->GetBoolValue(CFG_X264_USE_VBV)) {
+ if (Profile()->GetBoolValue(CFG_X264_FORCE_BASELINE)) {
+--- mpeg4ip-1.5.0.1/server/mp4live/video_x264.h.old 2006-11-11 20:56:48.000000000 +0100
++++ mpeg4ip-1.5.0.1/server/mp4live/video_x264.h 2006-11-11 20:57:49.000000000 +0100
+@@ -33,6 +33,10 @@
+ }
+ #endif
+
++#if X264_BUILD > 47
++#define HAVE_X264_PARAM_T_RC_I_RC_METHOD
++#endif
++
+ class CX264VideoEncoder : public CVideoEncoder {
+ public:
+ CX264VideoEncoder(CVideoProfile *vp,