[MEncoder-users] [BUG] mencoder fails to encode VOB file
Oded Shimon
ods15 at ods15.dyndns.org
Sat Dec 31 15:56:14 CET 2005
On Sat, Dec 31, 2005 at 03:46:18PM +0100, Guillaume POIRIER wrote:
> On 12/31/05, Oded Shimon <ods15 at ods15.dyndns.org> wrote:
> > On Sat, Dec 31, 2005 at 03:30:04PM +0100, Guillaume POIRIER wrote:
> > > That's because vb_strategy is not to be used in any other pass than
> > > the first one.
> > > The man page says it already. :)
> >
> > We should really make it automatic, it's rather simple to check, don't you
> > think?
> >
> > Give a warning when it is set and we unset it though.
>
> Not a bad idea. Would you care to write that patch? I'm away from my
> dev computer right now...
Must I do everything...
Can vb_strategy be used without vpass at all? My code assumes it can.
Please fix the warning message if you'd like...
- ods15
-------------- next part --------------
Index: help/help_mp-en.h
===================================================================
RCS file: /cvsroot/mplayer/main/help/help_mp-en.h,v
retrieving revision 1.216
diff -u -r1.216 help_mp-en.h
--- help/help_mp-en.h 17 Dec 2005 13:32:54 -0000 1.216
+++ help/help_mp-en.h 31 Dec 2005 14:54:34 -0000
@@ -591,6 +591,7 @@
#define MSGTR_MissingDLLcodec "ERROR: Could not open required DirectShow codec %s.\n"
#define MSGTR_ACMiniterror "Could not load/initialize Win32/ACM AUDIO codec (missing DLL file?).\n"
#define MSGTR_MissingLAVCcodec "Cannot find codec '%s' in libavcodec...\n"
+#define MSGTR_LAVCvpassAndVb_strat "Warning: vb_strategy can only be set in 1st pass. Unsetting.\n"
#define MSGTR_MpegNoSequHdr "MPEG: FATAL: EOF while searching for sequence header.\n"
#define MSGTR_CannotReadMpegSequHdr "FATAL: Cannot read sequence header.\n"
Index: libmpcodecs/ve_lavc.c
===================================================================
RCS file: /cvsroot/mplayer/main/libmpcodecs/ve_lavc.c,v
retrieving revision 1.121
diff -u -r1.121 ve_lavc.c
--- libmpcodecs/ve_lavc.c 29 Nov 2005 04:16:46 -0000 1.121
+++ libmpcodecs/ve_lavc.c 31 Dec 2005 14:54:35 -0000
@@ -381,6 +381,10 @@
lavc_venc_context->max_b_frames= lavc_param_vmax_b_frames;
lavc_venc_context->b_quant_factor= lavc_param_vb_qfactor;
lavc_venc_context->rc_strategy= lavc_param_vrc_strategy;
+ if (lavc_param_vpass > 2 && lavc_param_vb_strategy) {
+ lavc_param_vb_strategy = 0;
+ mp_msg(MSGT_MENCODER,MSGL_WARN,MSGTR_LAVCvpassAndVb_strat);
+ }
lavc_venc_context->b_frame_strategy= lavc_param_vb_strategy;
lavc_venc_context->b_quant_offset= (int)(FF_QP2LAMBDA * lavc_param_vb_qoffset + 0.5);
lavc_venc_context->luma_elim_threshold= lavc_param_luma_elim_threshold;
More information about the MEncoder-users
mailing list