On Thu, Oct 28, 2004 at 08:57:28AM -0700, Steven M. Schultz wrote:
> > 3: Something completely different.
> > 
> > In case 3: What? :)
> 
>       There's no case 3.  Cases 1 and 2 cover all the possibilities - either
>       the data is interlaced or it is progressive, I can't imagine an third
>       state ;)

   This, actually, opens a brand new box of worms :-) 

   Of course, when you talk about original material, there's no question that
   it is either interlaced (broadcast analog video signal) or 
   progressive (celluloid scans). Unfortunately the fact that MPEG2 was
   designed primarily to make *interlaced* playback as easy as possible and
   because of the way a lot of DVDs are mastered things get ugly.

   As you know, MPEG2 allows you to use one *picture* to represent:

      1. One field with half the resolution.
      2. Complete frame.

   It's all fine and dandy, but that's exactly where the line (and
   terminology!) between progressive and interlaced gets rather 
   murky *when* you add a pull-down to the mixture. 

   Let's start from the very beginning -- you have your celluloid film,
   that runs at 24fps, you scan it and you want to encode result onto 
   the NTSC DVD where the frame rate is 30fps (or 30000/1001). Obviously
   you start with *progressive* material, after all there's nothing
   more progressive than a strip of film. However, when you start 
   putting it on DVD you have the following 3 choices:

       1. Store each physical frame in a separate picture and mark
          it as "progressive". Of course, because DVDs are all 
          about *interlaced* playback and because you use 24fps
          material with a 30fps target  you have to sprinkle 
          Top_Field_First and Repeat_First_Field all over the place.
          So that DVD player can artifially construct 10 fields
          out of the original 4 physical frames.

       2. Take each physical frame apart and make 2 fields out 
          of each physical frame (that's exactly the problem 
          original poster was faced with). Then use *separate*
          pictures to represent each frame, marking all of them
          as being "interlaced". That's an easiest case for a
          DVD player -- every *picture* is representing exactly
          one field so all it has to do is just output them.
          No brains required. Of course, since you still have
          to battle 24fps -> 30fps conversion, you'll have to
          store some identical fields in neighbouring pictures.
          The extra step for a DVD player from the #1 is gone.

       3. This one is much easier to explain using an example.
          Suppose you have 4 physical frames: F1 F2 F3 F4. You
          take them apart and create 8 fields out of them
          ('t' is for top-field and 'b' is for bottom-field):
          F1t F1b F2t F2b F3t F3b F4t F4b. 
          Now you create 5 pictures out of these 8 fields:

              P1 = F1t + F1b ( == F1 )
              P2 = F1t + F2b
              P3 = F2t + F3b
              P4 = F3t + F3b ( == F3 )
              P5 = F4t + F4b ( == F4 )

          and only than you store the resulting pictures onto
          DVD. They smell like progressive frames, they feel
          like progressive frames -- but they are not really
          progressive frames.

   Is #1 progressive -- sure. Is #2 interlaced -- well, yes
   and no. Ditto for #3.

Thanks,
Roman.

P.S. For much better explanation of how brain-dead DVD encoding
could be feel free to visit: 
   
http://www.hometheaterhifi.com/volume_7_4/dvd-benchmark-part-5-progressive-10-2000.html


-------------------------------------------------------
This Newsletter Sponsored by: Macrovision 
For reliable Linux application installations, use the industry's leading
setup authoring tool, InstallShield X. Learn more and evaluate 
today. http://clk.atdmt.com/MSI/go/ins0030000001msi/direct/01/
_______________________________________________
Mjpeg-users mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/mjpeg-users

Reply via email to