1. 17 Jul, 2018 7 commits
    • Yushin Cho's avatar
      [OBU] Adding frame header obu · 9619d202
      Yushin Cho authored
      9619d202
    • Yushin Cho's avatar
      [OBU] Start adding write_frame_header_obu() function · b1a41cfe
      Yushin Cho authored
      Both OBU_FRAME or OBU_FRAME_HEADER obu types call this function.
      b1a41cfe
    • Yushin Cho's avatar
      [OBU] Post write the length of payload for Sequence OBU · 1cef1f19
      Yushin Cho authored
      Write the length of OBU payload between a OBU header and a OBU payload,
      which introduces two byte buffers and BitWriters at the same time.
      
      TODO:
      - Do similar thing for Frame OBU
      - Can better factor out the code which does post-writing of
        the length of OBU payload data.
      - Multi buffer approach, that is rust dependent, can be improved.
      1cef1f19
    • Yushin Cho's avatar
      [OBU] Calculate the sequence OBU payload size and its uleb size · 939ab9e7
      Yushin Cho authored
      The uleb size is the size of length field in bytes.
      https://aomediacodec.github.io/av1-spec/#leb128
      
      TODO:
      - Include uncounted sequence syntax data to seqence payload size.
      - Implement uleb128()
      939ab9e7
    • Yushin Cho's avatar
      [OBU] Assert fail in obu header if obu_extension is not zero · b03f699a
      Yushin Cho authored
      Also, add trailing bits for sequence OBU.
      b03f699a
    • Yushin Cho's avatar
      [OBU] Write a temporal delimiter for each frame, if needed · e0ad04c9
      Yushin Cho authored
      For each frame, write a OBU_TEMPORAL_DELIMITER,
      even before OBU_SEQUENCE_HEADER or OBU_FRAME_HEADER.
      e0ad04c9
    • Yushin Cho's avatar
      [OBU] Start enabing OBU · ce364d12
      Yushin Cho authored
      Enable OBU Headers, also use the most recent code of libaom,
      so that rav1e generated bitstream can be decodable by current version of
      aomdec.
      
      - Add OBU_Type enum
      - write_obu_header() funcion
      - Copy reference av1_pack_bitstream() C code fro libaom, where sequence
        and frame level OBUs are written.
      
      [OBU] Add Sequence Header and revise its functions
      
      [OBU] More on sequence header functions and types
      
      - Revise the type of Sequence struct members.
      - Add write_sequence_header2(), which is modified version of
        write_sequence_header() for OBU.
      - Add new color_config(), i.e. updated color info.
      
      TODO:
      - The structure of OBU is three parts:
      1) OBU header
      2) Size of OBU (written in leb128() format of AV1)
      3) OBU (with specific obu_type signlaed in OBU header)
      
      So, need to figure out how to post-write the size of obu (i.e, payload size) after
      writing obu. In libaom, this is implemented by calling obu_memmove() on byte buffer,
      which moves the obu data by payload size in bytes to create a gap between obu header
      and obu then write a obu size.
      ce364d12
  2. 16 Jul, 2018 18 commits
  3. 15 Jul, 2018 2 commits
  4. 14 Jul, 2018 1 commit
  5. 13 Jul, 2018 5 commits
  6. 05 Jul, 2018 4 commits
  7. 30 Jun, 2018 1 commit
  8. 29 Jun, 2018 1 commit
  9. 27 Jun, 2018 1 commit