Deciphering an MPEG file

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • hunterotd
    Junior Member
    Junior Member
    • Nov 2008
    • 1

    Deciphering an MPEG file

    So, I have an off-the-wire capture which I'm unable to play:

    Code:
    $ mplayer new.mp4
    MPlayer 1.0rc2-4.2.3 (C) 2000-2007 MPlayer Team
    CPU: Intel(R) Core(TM)2 Duo CPU     T5750  @ 2.00GHz (Family: 6, Model: 15, Stepping: 13)
    CPUflags:  MMX: 1 MMX2: 1 3DNow: 0 3DNow2: 0 SSE: 1 SSE2: 1
    Compiled with runtime CPU detection.
    mplayer: could not connect to socket
    mplayer: No such file or directory
    Failed to open LIRC support. You will not be able to use your remote control.
    
    Playing new.mp4.
    MPEG-PES file format detected.
    MPEG: FATAL: EOF while searching for sequence header.
    Video: Cannot read properties.
    Looking at a binary dump of the file and comparing the start of the file to http://en.wikipedia.org/wiki/Packeti...mentary_Stream and http://dvd.sourceforge.net/dvdinfo/pes-hdr.html, it looks like my file does indeed not have a PES Packet Header, but instead begins with an Optional PES Header:

    Code:
    0000000: 10010000 00100001 11100100 11101011 01011000 00010011  .!..X.
    0000006: 00011110 00000001 00111001 11100011 11100101 10111101  ..9...
    000000c: 00010000 00001000 00000000 00000000 01000111 00000011  ....G.
    0000012: 11101000 00011100 10111010 00010101 00001100 10100000  ......
    0000018: 11100001 10000111 11010001 01011110 10101101 11101010  ...^..
    000001e: 01110101 00101010 10000011 11011011 10101111 00111111  u*...?
    So, on to my questions:

    1. Am I correct in thinking that this is truly an Optional PES header, or am I just reading too much into a few bytes of data?

    2. If it is an Optional PES header, then I believe it's telling me that it's Scrambled in some way. Is that true? If so, what should I look for in order to unscramble it?

    3. Finally, I'm looking for a stream start code in the first few kilobytes, and am not finding it. I believe I'll see something like 0000 0000 0000 0000 0000 0001 1011 0011. Is that true even if it's scrambled?
Working...