Skip to content
Snippets Groups Projects
  1. Jul 16, 2017
  2. Jul 14, 2017
  3. Jul 13, 2017
  4. Jul 10, 2017
  5. Jul 09, 2017
  6. Jul 07, 2017
  7. Jul 06, 2017
  8. Jul 05, 2017
  9. Jul 04, 2017
  10. Jul 03, 2017
  11. Jun 30, 2017
  12. Jun 29, 2017
  13. Jun 28, 2017
  14. Jun 27, 2017
    • Hein-Pieter van Braam's avatar
      Interplay MVE: Implement frame format 0x10 · 8f96da06
      Hein-Pieter van Braam authored
      
      This implements the 0x10 frame format for Interplay MVE movies. The
      format is a variation on the 0x06 format with some changes. In addition
      to the decoding map there's also a skip map. This skip map is used to
      determine what 8x8 blocks can change in a particular frame.
      
      This format expects to be able to copy an 8x8 block from before the last
      time it was changed. This can be an arbitrary time in the past. In order
      to implement this this decoder allocates two additional AVFrames where
      actual decoding happens. At the end of a frame decoding changed blocks
      are copied to a finished frame based on the skip map.
      
      The skip map's encoding is a little convulted, I'll refer to the code
      for details.
      
      Values in the decoding map are the same as in format 0x06.
      
      Signed-off-by: default avatarHein-Pieter van Braam <hp@tmm.cx>
      8f96da06
    • Hein-Pieter van Braam's avatar
      Interplay MVE: Implement frame format 0x06 · 19f6fd19
      Hein-Pieter van Braam authored
      
      This implements the 0x06 frame format for Interplay MVE movies. The
      format is relatively simple. The video data consists of two parts:
      
      16 bits per 8x8 block movement data
      a number of 8x8 blocks of pixel data
      
      For each 8x8 block of pixel data the movement data is consulted. There
      are 3 possible meanings of the movement data:
      * zero     : copy the 8x8 block from the pixel data
      * negative : copy the 8x8 block from the previous frame from an offset
                   determined by the actual value of the entry -0xC000.
      * positive : copy the 8x8 block from the current frame from an offset
                   determined by the actual value of the entry -0x4000
      
      Decoding happens in two passes, in the fist pass only new pixeldata is
      copied, during the second pass data is copied from the previous and
      current frames.
      
      The codec expects that the current frame being decoded to still has the
      data from 2 frames ago on it when decoding starts.
      
      Signed-off-by: default avatarHein-Pieter van Braam <hp@tmm.cx>
      19f6fd19
    • Hein-Pieter van Braam's avatar
      Interplay MVE: Refactor IP packet format · 8f87bfb4
      Hein-Pieter van Braam authored
      
      Interplay MVE can contain up to three different frame formats. They
      require different streams of information to render a frame. This patch
      changes the IP packet format to prepare for the extra frame formats.
      
      Signed-off-by: default avatarHein-Pieter van Braam <hp@tmm.cx>
      8f87bfb4
    • Hein-Pieter van Braam's avatar
      Interplay MVE: Implement MVE SEND_BUFFER operation · ba2c3850
      Hein-Pieter van Braam authored
      
      Interplay MVE movies have a SEND_BUFFER operation. Only after this
      command does the current decoding buffer get displayed. This is required
      for the other frame formats. They are fixed-size and can't always encode
      a full frame worth of pixeldata.
      
      This code prevents half-finished frames from being emitted.
      
      Signed-off-by: default avatarHein-Pieter van Braam <hp@tmm.cx>
      ba2c3850
    • Andreas Håkon's avatar
      a29c7127
  15. Jun 24, 2017
  16. Jun 22, 2017
  17. Jun 19, 2017
  18. Jun 18, 2017
  19. Jun 17, 2017
Loading