spankmeister7
19th March 2003, 08:10
[Apologies for the cross-posting. This query also appears at the SF mjpeg-users mail list. I'm putting here because some the material might be answered with tools not stemming from mjpegtools.]
I've been spending some time getting to know mjpegtools and other video resources better so I can create a process for myself to import VHS tapes and encode them to mpeg2 and write them to DVD. As such,
I've been pouring over the readme's and howto's and whatnot but I have an issue I can't seem to get past.
Here's what I'm doing: I'm using lavrec to import 2 hours of video at a time from my vcr with my G400-TV. This gives me about 15 avi files ranging from 1.5-1.8 gigs each. I open the first with avidemux, append the next fourteen, and run three filters to crop, resize, and detinterlace (this is all NTSC). This gives me one big avi. When I play the avi in either MPlayer or Xine, it runs fine.
But since I need to encode this to mpeg2 (going by the mjpeg dvd how-to and other resources) I rip the audio either by using lav2wav or lavtrans, and then I rip encode the video using lav2yuv:
lav2wav hercules.avi | mp2enc -o hercules.mp2
lav2yuv hercules.avi | mpeg2enc -n n -M 2 -f 8 -s -r 16 -o hercules.m1v
And then for multiplexing them to mpeg2:
mplex -f 8 hercules.mp2 video.m1v -o hercules.mpg
When I go to play the mpg file it looks great for about 8-10 minutes, and then the video freezes and the sound becomes a screeching blast of white noise. I checked the mp2 file, and that seemed to be the
problem as it screeched also when I played it alone. I then took a different approach of going back to my 15 original avi captures and ripped the audio from them individually instead of collectively, and then appending them together in a wav editor. After re-encoding this gives me a perfect sounding mp2. Using this new mp2 file I re-encode the whole thing to mpeg2 again with lav2yuv.
This time when I play the file the video simply freezes at the exact same spot as last time but this time without the white noise screech.
At this point I think there must be something wrong with the way avidemux appends or saves the avi file. So I come back to the shell to try without visual aids. Since then I've been trying to use every tool I can find that I think I can substitute for avidemux including using lavtans as described in the mjpeg-howto under the "Unify videos" section. This starts to work until it hits 2-gig file size and then craps out. The how-to warns of this IF "there is the 2GB file-size-limit on 32Bit systems with an older glibc." I'm using RedHat 8.1 beta (phoebe) with glibc-2.3.1-46, so I'm not convinced that is my problem.
Mencoder also hits this 2-gig file barrier, but then creates additional 2-gig files until its finished encoding.
So as it stands now I'm just trying to get a single giant m1v file that doesn't freeze, or identify what is happening that makes it freeze to begin with. The only way I can seem to get a single avi file is with avidemux, which could be causing my freeze problem, and I can't get a single avi file with lavtrans without encurring the 2-gig file limit. Also, it might be worthy of noting that the freeze point always happens at the exact same frame, and this is not a transitional point between two appended files. I'm really starting to wonder if the giant avi I create with avidemux plays 2 gigs worth of data and then freezes, but the math doesn't pan out that way.
I'm also concerned that even if I do get past the file size limit that any new mpeg2 encodings will produce the same freezing problem. I'm starting to think that I'm going about this all wrong by appending it all together into huge audio and video files before splitting and encoding.
I'm confused to the point that I now seek the wisdom of my betters.
*grog* I need to sleep.
I've been spending some time getting to know mjpegtools and other video resources better so I can create a process for myself to import VHS tapes and encode them to mpeg2 and write them to DVD. As such,
I've been pouring over the readme's and howto's and whatnot but I have an issue I can't seem to get past.
Here's what I'm doing: I'm using lavrec to import 2 hours of video at a time from my vcr with my G400-TV. This gives me about 15 avi files ranging from 1.5-1.8 gigs each. I open the first with avidemux, append the next fourteen, and run three filters to crop, resize, and detinterlace (this is all NTSC). This gives me one big avi. When I play the avi in either MPlayer or Xine, it runs fine.
But since I need to encode this to mpeg2 (going by the mjpeg dvd how-to and other resources) I rip the audio either by using lav2wav or lavtrans, and then I rip encode the video using lav2yuv:
lav2wav hercules.avi | mp2enc -o hercules.mp2
lav2yuv hercules.avi | mpeg2enc -n n -M 2 -f 8 -s -r 16 -o hercules.m1v
And then for multiplexing them to mpeg2:
mplex -f 8 hercules.mp2 video.m1v -o hercules.mpg
When I go to play the mpg file it looks great for about 8-10 minutes, and then the video freezes and the sound becomes a screeching blast of white noise. I checked the mp2 file, and that seemed to be the
problem as it screeched also when I played it alone. I then took a different approach of going back to my 15 original avi captures and ripped the audio from them individually instead of collectively, and then appending them together in a wav editor. After re-encoding this gives me a perfect sounding mp2. Using this new mp2 file I re-encode the whole thing to mpeg2 again with lav2yuv.
This time when I play the file the video simply freezes at the exact same spot as last time but this time without the white noise screech.
At this point I think there must be something wrong with the way avidemux appends or saves the avi file. So I come back to the shell to try without visual aids. Since then I've been trying to use every tool I can find that I think I can substitute for avidemux including using lavtans as described in the mjpeg-howto under the "Unify videos" section. This starts to work until it hits 2-gig file size and then craps out. The how-to warns of this IF "there is the 2GB file-size-limit on 32Bit systems with an older glibc." I'm using RedHat 8.1 beta (phoebe) with glibc-2.3.1-46, so I'm not convinced that is my problem.
Mencoder also hits this 2-gig file barrier, but then creates additional 2-gig files until its finished encoding.
So as it stands now I'm just trying to get a single giant m1v file that doesn't freeze, or identify what is happening that makes it freeze to begin with. The only way I can seem to get a single avi file is with avidemux, which could be causing my freeze problem, and I can't get a single avi file with lavtrans without encurring the 2-gig file limit. Also, it might be worthy of noting that the freeze point always happens at the exact same frame, and this is not a transitional point between two appended files. I'm really starting to wonder if the giant avi I create with avidemux plays 2 gigs worth of data and then freezes, but the math doesn't pan out that way.
I'm also concerned that even if I do get past the file size limit that any new mpeg2 encodings will produce the same freezing problem. I'm starting to think that I'm going about this all wrong by appending it all together into huge audio and video files before splitting and encoding.
I'm confused to the point that I now seek the wisdom of my betters.
*grog* I need to sleep.