Re: [Mjpeg-users] Re: Maximum video buffer size with mpeg2enc, Mac options
http://mjpeg.sourceforge.net/MacOS/ BTW, it seems that the page above is somehow misconfigured because both Internet Explorer and Safari browsers open the mpeg2enc and mplex binaries as gibberish in the browser window instead of automatically downloading them to the disk. Now the user has to control-click them to initiate the download, an action some people may not know. You cannot force the browser to open a download window !! (at least I and the authors of the SEFLHTML Guide know no way) So you have to accept what the browser thinks that is a good idea to do. If the user doesn't read the sentence before with I have written download binary stuff. I do not know how I can write it so that it can't be misunderstood. And the user should save the links. Isn't Safari based on the KDE HTML engine which is used in Konqueror ? My version of konqueror (3.1.4) handles the binary files correct and asks me if I'd like to save them or doe something else. BTW: There is no IE produced by MS for the MAC any more, so I guess that the problems with that browser solve in the next time ;) auf hoffentlich bald, Berni the Chaos of Woodquarter Email: [EMAIL PROTECTED] www: http://www.lysator.liu.se/~gz/bernhard --- This SF.net email is sponsored by: IBM Linux Tutorials. Become an expert in LINUX or just sharpen your skills. Sign up for IBM's Free Linux Tutorials. Learn everything from the bash shell to sys admin. Click now! http://ads.osdn.com/?ad_id=1278alloc_id=3371op=click ___ Mjpeg-users mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/mjpeg-users
[Mjpeg-users] Re: Maximum video buffer size with mpeg2enc, Mac options
Andrew Stevens: BTW, my interest in VBV buffer size for XSVCD started when I noticed that mpeg2enc failed with the default -V 46 with -f 5 so at first I'm pretty sure the default video buffer size for -f 5 was 230KB for quite a while now. Yes, I just recently updated mpeg2enc so I've been missing a lot of features. I started using mp2enc, mpeg2enc, mplex etc via MediaPipe's and MissingMPEG Tools' graphical user interfaces in Mac OS X. There are many other Mac GUIs for these tools but MediaPipe (currently $0) is still most flexible because the user can custom build and configure each component. Surprisingly MediaPipe is still the only Mac mpeg2enc GUI that can encode interlaced output. For some strange reason people prefer to throw off 50% of their videos and convert them to jerky progressive output on a TV! http://mediapipe.sourceforge.net/MediaPipe/ http://homepage.mac.com/rnc/MMTools.html Unfortunately it has been several months since the last MediaPipe update because the authors are finishing their studies and they are also trying to decide what business model they are going to invent for MediaPipe (or its commercialized version called MediaGram). So mpeg2enc and other components inside MediaPipe are already quite old and some recent OS updates have broken some pipes. The kvcd options prompted me to download newer prebuilt Mac OS X mpeg2enc and mplex binaries from the URL below and update MediaPipe with them via the terminal. http://mjpeg.sourceforge.net/MacOS/ BTW, it seems that the page above is somehow misconfigured because both Internet Explorer and Safari browsers open the mpeg2enc and mplex binaries as gibberish in the browser window instead of automatically downloading them to the disk. Now the user has to control-click them to initiate the download, an action some people may not know. Is someone updating those mpeg2enc and mplex Mac OS X binaries or should I bite the bullet and learn to do it myself? Prebuilt Mac OS X binaries would be nice for other novices, though. Are there many other Mac OS X users on this list? How do you use mjpegtools? Via a GUI front-end or via the terminal? What would be the best way to write a GUI for the underlying UNIX tools -- AppleScript, Cocoa?? BTW, I have compiled some (XS)VCD for the Mac and MediaPipe instructions. The MediaPipe_and_SVCD page's chapter Fine-tuning mpeg2enc is mostly compiled from info snippets in this mailing list. There are preconfigured MediaPipe templates for some common DV to (XS)VCD MPEG2 and MPEG1 encodings. There are also templates to convert MPEG back to DV. Proper aspect ratios are maintained in all these conversions, something many GUIs don't bother to do despite my nagging ;) http://www.sjoki.uta.fi/~shmhav/SVCD_on_a_Macintosh.txt http://www.sjoki.uta.fi/~shmhav/MediaPipe_and_SVCD.txt http://www.sjoki.uta.fi/~shmhav/MediaPipe_templates.sit -- Matti Haveri [EMAIL PROTECTED] http://www.sjoki.uta.fi/~shmhav/ --- This SF.net email is sponsored by: IBM Linux Tutorials. Become an expert in LINUX or just sharpen your skills. Sign up for IBM's Free Linux Tutorials. Learn everything from the bash shell to sys admin. Click now! http://ads.osdn.com/?ad_id=1278alloc_id=3371op=click ___ Mjpeg-users mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/mjpeg-users
Re: [Mjpeg-users] Re: Maximum video buffer size with mpeg2enc, Mac options
On Thu, 11 Dec 2003, Matti Haveri wrote: Surprisingly MediaPipe is still the only Mac mpeg2enc GUI that can encode interlaced output. For some strange reason people prefer to throw off 50% of their videos and convert them to jerky progressive output on a TV! Well, life does exist outside the GUI (but don't get me started on that!). GUI overdependence is not a Good Thing. OS/X comes with a lot of capability that can only be fully appreciated and utilized from Terminal. My biggest complaint is that the system is too d*md GUI - get a couple big Xterms or Terminals up (or just work via ssh) and ah, relief! automatically downloading them to the disk. Now the user has to control-click them to initiate the download, an action some people may not know. They're on a Mac and don't know all the secret handshake control+click combinations? :-) :-) That's something I haven't mastered yet but then the Terminal doesn't use many of the weird magic key sequences. Is someone updating those mpeg2enc and mplex Mac OS X binaries or should I bite the bullet and learn to do it myself? Prebuilt Mac OS X I forget when I tweeked the Makefiles to get a static linked version of the encoder and mplex - quite some time ago. The situation is quite a bit more complex now though because mpeg2enc _and_ mplex have been split into frontends and shared libraries - not sure if a simple static build is possible (it might be but that would end up defeating the purpose of the work done to create shared libraries that can be used with other programs). Ideally the rest of the mjpegtools (except for the V4L specific parts of course) would be a good thing to have - lav2yuv, yuvdenoise, yuvmedianfilter, yuvplay, lavplay, and all the rest. Now things get messy. Bundling in libdv (which I have), libSDL (for the video out, SDL is a breeze to build and it takes advantage of the Quartz graphics subsystem), possibly libglib and libgtk, libpng, and possibly others I've overlooked. Oh, probably also want y4mscaler too. Packaging bunches of stuff together into whatever format for binary installation isn't something I'm familiar with - maybe it's easier than it sounds but maybe it's harder. Creating everything as a static executables makes the files a lot bigger of course. binaries would be nice for other novices, though. And keep them being novices ;( For that they could use the included iMovie/iDVD/Quicktime applications. VCD/SVCDs aren't terribly Mac friendly anyhow unless you have MPlayer or the VideoLan Client installed. Are there many other Mac OS X users on this list? How do you use mjpegtools? Via a GUI front-end or via the terminal? What would be I don't know if I count or not ;) I've been building mjpegtools, mplayer, libdv, ffmpeg, smilutils, mpeg2dec, SDL, and a bunch of other stuff on OS/X since I got my Powerbook back in Feb/Mar of this year. Don't do a lot of encoding on it other than for testing though because a 1GHz G4 gets pretty darn slow - mpeg2enc itself can get around 7 frames/sec on preprocessed YUV4MPEG2 data. If any conversion (lav2yuv or smil2yuv) and scaling or filtering is done then that slows it down a lot (although smilutils built using ffmpeg's DV codec is Altivec enabled and is a lot faster than libdv's on a G4). Most of the encoding is done on dual Athlon-2800 or P4-2.2GHz systems. One of those nice dual 2GHz G5 tower systems is on the toy/wish list for next year though ;) I use mjpegtools (not just mpeg2enc+mplex) like this: -- #!/bin/sh smil2yuv -a foo.wav -i 2 fire-master.dv | \ y4mscaler -v 0 -O chromass=420_MPEG2 | \ bfr -b 10m | \ mpeg2enc -f 8 -E -5 -M 2 -R 0 -q 4 -K tmpgenc -4 2 -2 1 -o foo.m2v toolame -b 192 -o foo.wav foo.mpw mplex -f 8 -o foo.mpg foo.m2v foo.mp2 How else? ;) It's something that can be setup and run without having to sit in front of the machine. Can ssh into the system and do encoding (and monitoring of the progress) from anywhere. the best way to write a GUI for the underlying UNIX tools -- AppleScript, Cocoa?? Cocoa I would guess but on the other hand OS/X 10.3 does come with XFree86 4.3 included so you could do it as a X app that would also run on your *nix system (or even better run it over a network to your *nix system - something I'm not sure Apple's graphic system can do to a X server). instructions. The MediaPipe_and_SVCD page's chapter Fine-tuning mpeg2enc is mostly compiled from info snippets in this mailing list.
[Mjpeg-users] Re: Maximum video buffer size with mpeg2enc
AFAIK (X)SVCD VBV buffer (Video Buffering Verifier) default is 224kB although some apps use 230kB for historical reasons. An important thing to bear in mind is that VBV buffer *not* the same thing as the decoder video buffer (STD_buffer)!! The VBV is, basically, an irrelevant 'appendix' that lurks around inside the bowels of the MPEG-2 standard inherited from MPEG-1 and intended for us in applicatins where a pure MPEG elementary video stream is used. Its only really useful function nowadays is to be misused as a way of encoding the size of stills frames on (S)VCDs ;-) The maximum video decoder buffer size - the minumum amount of RAM the decoder needs to buffer the incoming stream without under or overflow is 230KB (checked in the Philips standards docs). However, your email reminded me that the silly code limiting the VBV value placed in the sequence headers to 224KB was still in mpeg2enc. I've now removed it in favour of a more sensible approach where VBV = STD_buffer and is always = 224KB. Thanks for the correction. So mplex has VBV buffer set correctly at 230 kB for standalone DVD players, right? I've used 224 kB in mpeg2enc and mplex so I should switch both to 230 kB although I guess I wouldn't notice any difference with the DVD player? BTW, my interest in VBV buffer size for XSVCD started when I noticed that mpeg2enc failed with the default -V 46 with -f 5 so at first used -V 100 because one GUI front-end to mpeg2enc used it. With -V 100 and low bitrates (mpeg2enc -f 5 -b 1455 -V 100) my Pioneer 444 DVD player had a few artifacts which a higher buffer size like -V 224 corrected so I settled for it because both mpeg2enc and mplex seemed to favor it. FWIW, I once experimented with a 1000 kB buffer and this got the audio seriously out of sync with video in many places and the video also stuttered on my Pioneer 444 DVD player. -- Matti Haveri [EMAIL PROTECTED] http://www.sjoki.uta.fi/~shmhav/ --- This SF.net email is sponsored by: IBM Linux Tutorials. Become an expert in LINUX or just sharpen your skills. Sign up for IBM's Free Linux Tutorials. Learn everything from the bash shell to sys admin. Click now! http://ads.osdn.com/?ad_id=1278alloc_id=3371op=click ___ Mjpeg-users mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/mjpeg-users
[Mjpeg-users] Re: Maximum video buffer size with mpeg2enc
Hi Matti, Thanks for the correction. So mplex has VBV buffer set correctly at 230 kB for standalone DVD players, right? Again: there are *two* video buffer size parameters. 1. vbv_buffer_size. A 'left over' in the sequence headers from MPEG-1 that just has to be filled in more or less any reasonable value. All encoders I know ignored it. 2. The video decoder buffer size (video STD_buffer). This matters as it controls how much memory the encoder assumes the decoder has to smoothe dataflow and so controls bit allocation. This is what you set with -V. The vbv_buffer_size code mpeg2enc sticks into the headers is (almost always) 112 (coding for 224KB). BTW, my interest in VBV buffer size for XSVCD started when I noticed that mpeg2enc failed with the default -V 46 with -f 5 so at first I'm pretty sure the default video buffer size for -f 5 was 230KB for quite a while now. FWIW, I once experimented with a 1000 kB buffer and this got the audio seriously out of sync with video in many places and the video also stuttered on my Pioneer 444 DVD player. Most players have a bit more buffering than the official 230K minimum but 1000KB would definately not be available. For software players though the sky's the limit... Andrew --- This SF.net email is sponsored by: IBM Linux Tutorials. Become an expert in LINUX or just sharpen your skills. Sign up for IBM's Free Linux Tutorials. Learn everything from the bash shell to sys admin. Click now! http://ads.osdn.com/?ad_id=1278alloc_id=3371op=click ___ Mjpeg-users mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/mjpeg-users
[Mjpeg-users] Re: Maximum video buffer size with mpeg2enc
the default for SVCD is 230KB AFAIK (X)SVCD VBV buffer (Video Buffering Verifier) default is 224kB although some apps use 230kB for historical reasons. 224 kB (1,835,008 b) seems to be the maximum video buffer for SVCD: http://perso.wanadoo.fr/lelab/video/svcd_en.htm And the minimum video buffer for SVCD seems to be 112 kB: http://www.digvid.info/tmpgenc/settings_video.php From: Andrew Stevens To: [EMAIL PROTECTED] Subject: Re: Video buffer size with mpeg2enc and mplex Date: Tue, 10 Dec 2002 22:14:05 +0100 mpeg2enc and mplex seem to use different video buffers for their standard SVCD settings. _If_ I'm reading mplex output right, then: mplex -f 4 (i.e. standard SVCD) uses 235520 B = 230 kB: INFO: [mplex] Video e0: buf= 235520 frame=00 sector= On the other hand, mpeg2enc -f 4 (i.e. standard SVCD) uses 229376 B = 224 kB because mplex gives the following output: INFO: [mplex] Vbv buffer size : 229376 bytes This 224 kB also seems to be the maximum XSVCD buffer mplex reports. Maybe the exact value for XSVCD doesn't matter much as long as it is about 224-300 kB and the XSVCD doesn't differ much from SVCD. Well spotted. The reason for the difference is to allow a bit of safety margin in mpeg2enc's bit-rate calculations. Actually, it hasn't really needed it for quite some time but I never got around to making it all consistent! -- Matti Haveri [EMAIL PROTECTED] http://www.sjoki.uta.fi/~shmhav/ --- This SF.net email is sponsored by: IBM Linux Tutorials. Become an expert in LINUX or just sharpen your skills. Sign up for IBM's Free Linux Tutorials. Learn everything from the bash shell to sys admin. Click now! http://ads.osdn.com/?ad_id=1278alloc_id=3371op=click ___ Mjpeg-users mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/mjpeg-users
Re: [Mjpeg-users] Re: Maximum video buffer size with mpeg2enc
Hi Matti, There also something else at work here too. AFAIK (X)SVCD VBV buffer (Video Buffering Verifier) default is 224kB although some apps use 230kB for historical reasons. An important thing to bear in mind is that VBV buffer *not* the same thing as the decoder video buffer (STD_buffer)!! The VBV is, basically, an irrelevant 'appendix' that lurks around inside the bowels of the MPEG-2 standard inherited from MPEG-1 and intended for us in applicatins where a pure MPEG elementary video stream is used. Its only really useful function nowadays is to be misused as a way of encoding the size of stills frames on (S)VCDs ;-) The maximum video decoder buffer size - the minumum amount of RAM the decoder needs to buffer the incoming stream without under or overflow is 230KB (checked in the Philips standards docs). http://perso.wanadoo.fr/lelab/video/svcd_en.htm This isn't really what you might call a definitive source And the minimum video buffer for SVCD seems to be 112 kB: This is definately of 'academic interest only' as as you might expect a decoder that can handle a stream needing 230KB of buffer for decoding following the VBV model can easily handle a stream needing 112KB or even 2KB. However, your email reminded me that the silly code limiting the VBV value placed in the sequence headers to 224KB was still in mpeg2enc. I've now removed it in favour of a more sensible approach where VBV = STD_buffer and is always = 224KB. cheers, Andrew --- This SF.net email is sponsored by: IBM Linux Tutorials. Become an expert in LINUX or just sharpen your skills. Sign up for IBM's Free Linux Tutorials. Learn everything from the bash shell to sys admin. Click now! http://ads.osdn.com/?ad_id=1278alloc_id=3371op=click ___ Mjpeg-users mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/mjpeg-users