[mythtv-users] 1920x1080 transcode adds "grey bar"

Randall Hopper viznut at charter.net
Tue Nov 6 01:10:09 UTC 2007


Jonathan Rogers:
 |Randall Hopper wrote:
 |>      When Myth transcodes 1920x1080i programs to MPEG-4, it incorrectly
 |> adds a "grey bar" at the bottom of the transcoded video.
 |
 |That is the issue and it's not just a limitation of MPEG-4, but MPEG-2
 |also. The 1080i MPEG-2 video is actually 1920x1088, but players such as
 |MythTV and mplayer know that eight lines should be cropped to get
 |1920x1080. 

Is 1080 or 1088 stored for the video height in the MPEG file header?  I'd
suspect it's the former (how do I check?).  Surely every decoder in the
world isn't hard-coded to crop a magic number of "1088" lines down to 1080.

I'd imagine this is just like DXT compression where compressed texel blocks
are all multiples of 4.  However, you "can" have images that aren't
multiples of 4 in resolution -- the decoder just decodes to a multiple of
four and throws away the extra rows/columns along the edges after it's done
decoding based on the stored image resolution.

 |So, either no lines are being added or mythtranscode is cropping eight
 |lines and then adding eight new grey ones to make an MPEG-4 compatible
 |frame. ...
 |
 |I'm not certain what the best way to handle the video would be. 

I'd be happy if it mythtranscode just encoded black lines instead of grey
ones (if it had to encode them at all).  

Displaying 16:9 transcoded video on a 4:3 TV results in a nasty gray line
running through the middle of the display.  But black I could live with --
totally ignorable.

 |As you've noted, the MPEG-4 video can't have 1080 lines any more than the
 |source MPEG-2 video can. I would guess that mythtranscode cannot or does
 |not put any metadata in the output MPEG-4 video stream to indicate that
 |eight lines should be cropped, so you see the eight grey lines that were
 |always there, but were properly cropped when playing back the original
 |recorded stream.

I'm actually not seeing 8 lines.  I'm seeing 3.  1920x1088 transcoded down
to 720x480 shrinks the 8 bogus lines to 3. 

This suggests mythtranscode isn't tossing the 8 extra lines away before
transcoding down to 720x480.

Thanks,

Randall


More information about the mythtv-users mailing list