dvr-ms header states NTSC resolution although its stream is PAL

Discussion in 'Windows Media Center' started by Davor, Jan 5, 2009.

  1. Davor

    Davor Guest

    So here is the post I mentioned to make in this thread.

    Summary: When capturing from TV to dvr-ms-file via Win XP MCE, the header of
    the dvr-ms file signifies that the stream’s resolution is 720x480, while the
    real stream resolution is 720x576, MCE configured for PAL country and
    Hauppauge 150 MCE a PAL version. This can have complications for playback.

    For example, when playing back in WMP (directly or through avisynth) with
    ffdshow as MPEG2 decoder, the lowest part of the picture (I assume some
    576-480 = 96 lines) is missing. When I consult the ffdshow info and/or
    avisynth’s info()-function it says the resolution is 720x480. When I switch
    back to my old nvidia decoder, the picture is displayed correctly in WMP and
    in file-preferences the correct 720x576 resolution was displayed. This led me
    to investigate the real resolution of the stream. After consulting various
    websites and making sure my Hauppauge MCE150 was configured correctly (i.e.
    to capture in PAL format), I went on to investigate the file itself. Gspot
    said it was an asf container, so I downloaded asfviewer
    (http://www.microsoft.com/windows/windowsmedia/forpros/format/ASFViewer.aspx)
    and opened the dvr-ms file. Under Header object “Stream Properties†one finds
    the following data:

    Stream Properties Object [1] (297 bytes)
    Property Value
    File Position 9005 ( 0x232D )
    Object ID B7DC0791-A9B7-11CF-8EE6-00C00C205365
    Object Size 297 ( 0x129 )

    Stream Number 1
    Version 1
    Offset 0
    Encrypted False
    Security ID 18873916 ( 0x11FFE3C )
    Stream Type Specific
    Stream Type Video Media
    Window Width 720
    Window Height 480
    Flags 2
    Bitmap Info Header
    biSize 208
    Width 720
    Height 480
    Planes 1
    Bits 0
    Compression TEXT: DVR
    0000: 44 56 52 20 DVR
    Image Size 0
    X Pels / Meter 0
    Y Pels / Meter 0
    Colors Used 0
    Colors Important 0
    Extra Data Size 168
    Extra Data 0000: 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00

    0010: 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00
    0020: 00 00 00 00 00 00 00 00-63 17 05 00 00 00 00 00 c
    0030: 00 00 00 00 00 00 00 00-04 00 00 00 03 00 00 00
    0040: 00 00 00 00 00 00 00 00-28 00 00 00 D0 02 00 00 (
    0050: E0 01 00 00 01 00 00 00-4D 50 45 47 00 00 00 00 MPEG
    0060: 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00
    0070: 00 00 00 00 00 00 00 00-02 00 00 00 02 00 00 00
    0080: 00 00 00 00 00 00 00 00-D0 C4 C4 C4 49 00 2B 4E I +N
    0090: 98 FB 95 37 F6 CE 51 6D-D1 C4 C4 C4 49 00 2B 4E 7 Qm I +N
    00A0: 98 FB 95 37 F6 CE 51 6D 7 Qm

    This led me to try to change the headerdata (all instances of 480 to 576)
    and see whether this is causing the playback problems. After I changed the 3
    values (those emphasized), the ffdshow codec stated displaying the dvr-ms
    file correctly (with lower part of the picture displayed and acknowledging it
    as a 720x576 stream) Further testing showed that changing only the binary
    data under “extra dataâ€-property from “E0 01†to “40 02†was enough to make
    it work as it should.
    When I tried to play back the file in MCE, there was no change, except the
    picture was stuttering. (As if the “fps†didn’t match with the refresh rate.)
    I have no explanation for the stuttering.

    I need this to work with ffdshow because nvidia decoder doesn’t work with
    avisynth, and I need to use avisynth for a script I am writing to automatize
    transcoding dvr-ms to h264.

    So, the question is: am I the only one or is everyone having this issue AND
    IF SO, how can one force MCE to write down the header of dvr-ms-files
    correctly? Help would be appreciated.
     
    Davor, Jan 5, 2009
    #1
    1. Advertisements

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments (here). After that, you can post your question and our members will help you out.