[Mjpeg-users] Dropped sound sequences
Hello List, Thanks to Steven I was able to compile the CVS version of the mjpeg tools and create my first DVD type movie. (If you want to call it that.) The video images look great and play according to the creation. But my DVD player is experiencing sound drop outs when played. The drop outs are repeatable on each playback in the same locations. The orignal sound file I know is OK and I have played back the first 30 minutes of the mpeg Layer II audio file using mpg321 and that is OK. I have not found a program that will attempt to play the mplex'ed output file directly though. So I have not been able to verify the last operation of mjpeg tools. Xine would attempt it but my system is not able to perform well enough I guess to handle the video and audio. The movie plays erratic and there is no audio at all. My system is only a P-III-1 GHz CPU. I have been able to play back the first 15 minutes though with Ogle and then it chokes and spits out a lot errors on the VOB file and terminates. Ogle does not want to play the mpeg video file at all though. Some of the messages that Ogle reports are below. The messages were from playing the VOB file directly from my hard disk. I did verify the checksum of the VOB file on the hard disk and the DVD to check if it was bad burn to start with. In fact I burned it twice, once on a DVD+RW and then on a DVD-R both with the same results in my DVD player. The final stage of mastering the DVD was created using dvdauthor. The sequence has no titles or menus or anything. Insert it and it just starts playing. It is a 1 GByte file that should play for 1.5 hours, NTSC format. The video images are just still photographs that I scanned and converted to jpeg and then sequenced. The audio was a 48KHz, 16 bit stereo that I had on my system that was digitized awhile back from a cassette tape. Can anybody recommend a program to play the multiplexed output of the audio and video? I used the -f 8 format specifications. As I understand it, this format includes the spaces for dvdauthor to work with. Any suggestions or thoughts on what might be causing the sound drop outs would be great. The final DVD is about 98% playable. At present the problem appears to be in mplex or dvdauthor operations, but I am unable discern at the present time. Output from Ogle on the trouble spots: ERROR[ogle_audio]: Unhandled stream_id: e0 ##*** skipped blocks in I-picture *** invalid macroblock type *** skipped blocks in I-picture *** skipped blocks in I-picture (vlc) invalid huffman code 0x0 in vlc_get_block_coeff() (vlc) invalid huffman code 0x0 in vlc_get_block_coeff() #*mai error *** invalid macroblock type SNDCTL_DSP_GETCHANNELMASK: Unknown error 515 ##ERROR[ogle_audio]: Unhandled stream_id: e0 *mai error *** invalid macroblock type ** cbp = 0, shall not be used with 4:2:0 chrominance *** invalid macroblock type *mai error *** invalid macroblock type ** cbp = 0, shall not be used with 4:2:0 chrominance *mai error *** invalid macroblock type *mai error *** invalid macroblock type *mai error *** invalid macroblock type *mai error *** invalid macroblock type *** invalid macroblock type *** invalid macroblock type *** invalid macroblock type ** cbp = 0, shall not be used with 4:2:0 chrominance *mai error *** invalid macroblock type ** cbp = 0, shall not be used with 4:2:0 chrominance *mai error *** invalid macroblock type WARNING[ogle_mpeg_vs]: ** temporal reference in I or P picture incorrect WARNING[ogle_mpeg_vs]: ** temporal reference skipped ##*** skipped blocks in I-picture *** skipped blocks in I-picture *** skipped blocks in I-picture *** invalid macroblock type *mai error *** invalid macroblock type ** cbp = 0, shall not be used with 4:2:0 chrominance *** invalid macroblock type *mai error *** invalid macroblock type ** cbp = 0, shall not be used with 4:2:0 chrominance *mai error *** invalid macroblock type *mai error *** invalid macroblock type *mai error *** invalid macroblock type *mai error *** invalid macroblock type *** invalid macroblock type *** invalid macroblock type *** invalid macroblock type ** cbp = 0, shall not be used with 4:2:0 chrominance *mai error *** invalid macroblock type ** cbp = 0, shall not be used with 4:2:0 chrominance *mai error *** invalid macroblock type #msg close FIX bash-2.05a# Perhaps someone might be able to identify if these errors would be mplex related or dvdauthor related. Thank you for all your help, James --- This SF.net email is sponsored by: Perforce Software. Perforce is the Fast Software Configuration Management System offering advanced branching capabilities and atomic changes on 50+ platforms. Free Eval! http://www.perforce.com/perforce/loadprog.html ___ Mjpeg-users mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/mjpeg-users
Re: [Mjpeg-users] Converting DVD from PAL to NTSC
On Tue, 2004-01-13 at 13:14, Andrew Stevens wrote: > > > The final result was a smooth flowing image (on my DVD player) with a > > > bit less quality than the original - it's a bit blotchy in certain > > > scenes. The original Dolby Digital (2 channel) sound was preserved. > > > > There the -q option might help. > > If it is just certain scenes then you need to boost peak bitrate (the scenes > are running out of bits!). That suggests to me using VBR. I don't know whether the original stream is VBR and I haven't explicitly enabled VBR for mpeg2enc. > > Just for reference, the peak bitrate on commerical DVDs is often 8000Kbps or > more! > > Andrew Thanks, Greg. -- Greg Kilfoyle <[EMAIL PROTECTED]> --- This SF.net email is sponsored by: Perforce Software. Perforce is the Fast Software Configuration Management System offering advanced branching capabilities and atomic changes on 50+ platforms. Free Eval! http://www.perforce.com/perforce/loadprog.html ___ Mjpeg-users mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/mjpeg-users
Re: [Mjpeg-users] What is causing this error
On Wed, 14 Jan 2004, Trent Piepho wrote: > > if (posix_memalign( &buf, simd_alignment, size)) > > buf = memalign(pgsize, size); > > if (buf && ((int)buf & (simd_alignment - 1))) > > { > > free(buf); > > buf = memalign(pgsize, size); > > } > Could this be done at configure time? Check the glibc version or have > autoconf run a test program to see if posix_memalign works? Not really. Oh, that might detect the completely broken posix_memalign() that 2.2.4 has but it won't detect the 2.2.5 (and possibly later) version that *sometimes* posix_memalign() works and other times it does not. The autoconf test could snag one of the times that the buffer is aligned and then assume that a correctly functioning posix_memalign() exists. Problem is that posix_memalign() on some systems returns 8 byte alignment. As it happens 16 is a multiple of 8 so there's 1 in 2 chance of getting a correct answer with a buggy version of the function. Then at run time the other case happens and the program faults. Much more flexible to do it at run time - there's no performance penalty to speak of since it's only once done at program startup. It does seem to work - it'll get wider exposure soon I hope when more folks can test it. Cheers, Steven Schultz --- This SF.net email is sponsored by: Perforce Software. Perforce is the Fast Software Configuration Management System offering advanced branching capabilities and atomic changes on 50+ platforms. Free Eval! http://www.perforce.com/perforce/loadprog.html ___ Mjpeg-users mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/mjpeg-users
Re: [Mjpeg-users] Converting DVD from PAL to NTSC
> Of couse you could use a higer (till 4) quality factor. But did the > original video had 5000kBit average bitrate or maximal bitrate ? I'm not sure how to tell - I got the 5000 from dvdinfo.exe (windows program), from memory. > You loose a bit quality because of the deinterlacing, but as long yuvfps > is only coying frames it is a reliable way to get a smoth picture. So it's quality or smoothness, but not both :( I don't quite understand why quality is lost from de-interlacing. > If you encode at 24FPS you should add the -p|--3-2-pulldown, so the > player does a 3:2 pulldown. I'll stick with 30fps - not sure what my player does with a 24fps rate, since I believe it doesn't have 3:2 pulldown capability. I'll test it out when I get a chance, meanwhile I have a fully converted DVD to watch (well actually it's for my daughter to watch since she got the DVD for her birthday 8 months ago but hasn't been able to watch it). > There the -q option might help. I'll try going down to -q 4 too. > > auf hoffentlich bald, > > Berni the Chaos of Woodquarter Thanks again. Cheers, Greg. -- Greg Kilfoyle <[EMAIL PROTECTED]> --- This SF.net email is sponsored by: Perforce Software. Perforce is the Fast Software Configuration Management System offering advanced branching capabilities and atomic changes on 50+ platforms. Free Eval! http://www.perforce.com/perforce/loadprog.html ___ Mjpeg-users mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/mjpeg-users
Re: [Mjpeg-users] What is causing this error
On Wed, 14 Jan 2004, Steven M. Schultz wrote: > Look in cpu_accel.c - you should see something like this: > > if (posix_memalign( &buf, simd_alignment, size)) > buf = memalign(pgsize, size); > if (buf && ((int)buf & (simd_alignment - 1))) > { > free(buf); > buf = memalign(pgsize, size); > } Could this be done at configure time? Check the glibc version or have autoconf run a test program to see if posix_memalign works? --- This SF.net email is sponsored by: Perforce Software. Perforce is the Fast Software Configuration Management System offering advanced branching capabilities and atomic changes on 50+ platforms. Free Eval! http://www.perforce.com/perforce/loadprog.html ___ Mjpeg-users mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/mjpeg-users
Re: [Mjpeg-users] What is causing this error
On Wed, 14 Jan 2004, Ray Cole wrote: > It's been about a month since I'd pulled it down. I don't pull from the > development CVS branch often because it almost never builds :-( Few if any of the developers have seen the bug - that makes it hard to test/fix. The next release candidate should be up Real Soon Now - but then that's been the case since Xmas time ;) > ./autogen.sh > ... > ./configure: line 1333: syntax error near unexpected token `mjpegtools,' > ./configure: line 1333: `AM_INIT_AUTOMAKE(mjpegtools, $MJPEG_VERSION)' automake/autoconf version problem. libtool-1.5, automake-1.7.x (or 1.8 which is also reported to work), and autoconf 2.53 or later (newer is better of course ;)) work fine. It seems that the SDL kit is required - not sure if it's an auto/conf|make bug or what. At any rate the fix is in, and there was one chap who did get the cvs version to build on a system with an older glibc and reported that the problem does indeed appear resolved. Cheers, Steven Schultz --- This SF.net email is sponsored by: Perforce Software. Perforce is the Fast Software Configuration Management System offering advanced branching capabilities and atomic changes on 50+ platforms. Free Eval! http://www.perforce.com/perforce/loadprog.html ___ Mjpeg-users mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/mjpeg-users
Re: [Mjpeg-users] What is causing this error
It's been about a month since I'd pulled it down. I don't pull from the development CVS branch often because it almost never builds :-( I'm sure it is because I don't have the latest of something or doing something wrong. So once I had an mpeg2enc that works I tend to stay with it. An example of the pull I did just now resulted in the following: ./autogen.sh ... ./configure: line 1333: syntax error near unexpected token `mjpegtools,' ./configure: line 1333: `AM_INIT_AUTOMAKE(mjpegtools, $MJPEG_VERSION)' -- Ray On Wed, 14 Jan 2004 17:49:58 -0800 (PST) "Steven M. Schultz" <[EMAIL PROTECTED]> wrote: > > On Wed, 14 Jan 2004, Ray Cole wrote: > > > I had this issue with the CVS version as well. I had to make a change to > > utils/cpu_accel.c to use memalign rather than posix_memalign in bufalloc(). It > > now looks like this: > > Have you done a 'cvs update' recently? There was code added to > check the alignment of the buffer that posix_memalign() returned > and if the alignment was not correct then to try allocating the > buffer with memalign(). > > Look in cpu_accel.c - you should see something like this: > > if (posix_memalign( &buf, simd_alignment, size)) > buf = memalign(pgsize, size); > if (buf && ((int)buf & (simd_alignment - 1))) > { > free(buf); > buf = memalign(pgsize, size); > } > > If you don't see that then it's time for 'cvs update'. If you do > see that and it's not working it's a bug and needs to be fixed. > > > I would assume this is caused by some glibc bug. I'm using Red Hat 8.0. I don't > > think I've ever upgraded my glib version. I appear to have versions 1.2.10-8 and > > 2.3.2-4.80. > > Yes, it is a glibc bug. glibc-2.2.5 has posix_memalign() but it > does not honor the alignment request and can return 8 instead of 16 > or 64 byte aligned buffers. glibc-2.2.4 is even worse - posix_memalign > exists but always returns an error. > > The bug's never been reported to happen though (that I know of) with > glibc-2.3.x (I've never seen it happen on Suse 8.2 or 9.0). > > If you still get the message "could not allocate %d bytes aligned ..." > then neither posix_memalign nor memalign is working correctly and > poor ol' mpeg2enc has no choice but to bail out. > > Cheers, > Steven Schultz > > > > --- > This SF.net email is sponsored by: Perforce Software. > Perforce is the Fast Software Configuration Management System offering > advanced branching capabilities and atomic changes on 50+ platforms. > Free Eval! http://www.perforce.com/perforce/loadprog.html > ___ > Mjpeg-users mailing list > [EMAIL PROTECTED] > https://lists.sourceforge.net/lists/listinfo/mjpeg-users --- This SF.net email is sponsored by: Perforce Software. Perforce is the Fast Software Configuration Management System offering advanced branching capabilities and atomic changes on 50+ platforms. Free Eval! http://www.perforce.com/perforce/loadprog.html ___ Mjpeg-users mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/mjpeg-users
Re: [Mjpeg-users] What is causing this error
On Wed, 14 Jan 2004, Ray Cole wrote: > I had this issue with the CVS version as well. I had to make a change to > utils/cpu_accel.c to use memalign rather than posix_memalign in bufalloc(). It now > looks like this: Have you done a 'cvs update' recently? There was code added to check the alignment of the buffer that posix_memalign() returned and if the alignment was not correct then to try allocating the buffer with memalign(). Look in cpu_accel.c - you should see something like this: if (posix_memalign( &buf, simd_alignment, size)) buf = memalign(pgsize, size); if (buf && ((int)buf & (simd_alignment - 1))) { free(buf); buf = memalign(pgsize, size); } If you don't see that then it's time for 'cvs update'. If you do see that and it's not working it's a bug and needs to be fixed. > I would assume this is caused by some glibc bug. I'm using Red Hat 8.0. I don't > think I've ever upgraded my glib version. I appear to have versions 1.2.10-8 and > 2.3.2-4.80. Yes, it is a glibc bug. glibc-2.2.5 has posix_memalign() but it does not honor the alignment request and can return 8 instead of 16 or 64 byte aligned buffers. glibc-2.2.4 is even worse - posix_memalign exists but always returns an error. The bug's never been reported to happen though (that I know of) with glibc-2.3.x (I've never seen it happen on Suse 8.2 or 9.0). If you still get the message "could not allocate %d bytes aligned ..." then neither posix_memalign nor memalign is working correctly and poor ol' mpeg2enc has no choice but to bail out. Cheers, Steven Schultz --- This SF.net email is sponsored by: Perforce Software. Perforce is the Fast Software Configuration Management System offering advanced branching capabilities and atomic changes on 50+ platforms. Free Eval! http://www.perforce.com/perforce/loadprog.html ___ Mjpeg-users mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/mjpeg-users
Re: [Mjpeg-users] What is causing this error
I had this issue with the CVS version as well. I had to make a change to utils/cpu_accel.c to use memalign rather than posix_memalign in bufalloc(). It now looks like this: void *bufalloc( size_t size ) { static size_t simd_alignment = 16; static int bufalloc_init = 0; void *buf; // printf("Enter bufalloc\n"); if( !bufalloc_init ) { #ifdef HAVE_X86CPU if( (cpu_accel() & (ACCEL_X86_SSE|ACCEL_X86_3DNOW)) != 0 ) { simd_alignment = 64; bufalloc_init = 1; } #endif } buf = memalign(simd_alignment, size ); if (buf == NULL) mjpeg_error_exit1("malloc failed"); // if( posix_memalign( &buf, simd_alignment, size ) !=0 ) //mjpeg_error_exit1("malloc failed"); // printf("Align %lx %lx\n", buf, simd_alignment); return buf; } I would assume this is caused by some glibc bug. I'm using Red Hat 8.0. I don't think I've ever upgraded my glib version. I appear to have versions 1.2.10-8 and 2.3.2-4.80. -- Ray On Tue, 13 Jan 2004 23:23:34 -0600 (CST) "T.E." <[EMAIL PROTECTED]> wrote: > > **ERROR: [mpeg2enc] could not allocate 133056 bytes aligned on a 64 byte > boundary > > Thanks > > Thomas > > > --- > This SF.net email is sponsored by: Perforce Software. > Perforce is the Fast Software Configuration Management System offering > advanced branching capabilities and atomic changes on 50+ platforms. > Free Eval! http://www.perforce.com/perforce/loadprog.html > ___ > Mjpeg-users mailing list > [EMAIL PROTECTED] > https://lists.sourceforge.net/lists/listinfo/mjpeg-users --- This SF.net email is sponsored by: Perforce Software. Perforce is the Fast Software Configuration Management System offering advanced branching capabilities and atomic changes on 50+ platforms. Free Eval! http://www.perforce.com/perforce/loadprog.html ___ Mjpeg-users mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/mjpeg-users
Re: [Mjpeg-users] mjpegtools compilation error / Makefile problem? (fwd)
On Wed, 14 Jan 2004, Gernot Ziegler wrote: > Hej Manfred ! > > I am currently quite busy (as usual ;) ), so I'll forward this to the list > - I can only see that you haven't run configure explicitly - and another > thing that comes to mind is that you have to do "make distclean" if you > update from CVS (but that is not relevant here). Several things caught my eye when looking at the logs. quicktime4linux should be removed, it is incompatible with libdv and even if no automake (or other auto* tools) errors were encountered the compilation would fail later on due to quicktime4linux. If quicktime support is required then libquicktime should be used instead. movtar support has been removed in later versions so there is no need to build libmovtar, suggestion is to rm -r that and quicktime4linux. I think some of the ./autogen.sh errors are due to 1.6.1's configure.in and *.am files being incompatible with later versions of autoconf/automake/libtool. mjpegtools-1.6.1 is quite old - I think better results would be obtained by using the 1.6.2 version (even better would be the CVS version). mjpegtools can be build fine on a PPC based system (I use a G4/PPC OS/X system) so I think the problems revolve around auto* versions related issues. Cheers, Steven Schultz --- This SF.net email is sponsored by: Perforce Software. Perforce is the Fast Software Configuration Management System offering advanced branching capabilities and atomic changes on 50+ platforms. Free Eval! http://www.perforce.com/perforce/loadprog.html ___ Mjpeg-users mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/mjpeg-users
Re: [Mjpeg-users] What is causing this error
On Tue, 13 Jan 2004, T.E. wrote: > > **ERROR: [mpeg2enc] could not allocate 133056 bytes aligned on a 64 byte > boundary Insufficient information to do much of anything except take wild guesses. What system are you using - if a linux system what version of glibc is installed? What version of mjpegtools is being used, was it built from sources and if so was that from cvs or a prepared tarball, and so on. Or was it installed from a premade package? Need a bit more information than the error itself - the complete output of mpeg2enc would be helpful. Cheers, Steven Schultz --- This SF.net email is sponsored by: Perforce Software. Perforce is the Fast Software Configuration Management System offering advanced branching capabilities and atomic changes on 50+ platforms. Free Eval! http://www.perforce.com/perforce/loadprog.html ___ Mjpeg-users mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/mjpeg-users
[Mjpeg-users] What is causing this error
**ERROR: [mpeg2enc] could not allocate 133056 bytes aligned on a 64 byte boundary Thanks Thomas --- This SF.net email is sponsored by: Perforce Software. Perforce is the Fast Software Configuration Management System offering advanced branching capabilities and atomic changes on 50+ platforms. Free Eval! http://www.perforce.com/perforce/loadprog.html ___ Mjpeg-users mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/mjpeg-users