1. 24 Apr, 2015 8 commits
    • Rémi Denis-Courmont's avatar
      decoder: remove vout_FixLeaks() · e56293ea
      Rémi Denis-Courmont authored
      This function was intended to work around a certain class of bugs
      inside video decoders whereby the a reference picture was never
      dereferenced, i.e. missing decoder_UnlinkPicture() call.
      
      There are however some situations where this hack would release a
      still referenced picture:
      
      - If the video output or decoder has a high latency or if a video
        filter holds pictures (deinterlace), there may be zero free pictures
        even though the total number of pictures is sufficient overall.
        In that case, waiting for a picture buffer to be released normally
        is the right and safe approach.
      
      - If the byte stream is invalid or corrupt such that the number of
        required pictures (DPB size) is underestimated, dropping frames is
        acceptable. Frames would be corrupt anyway due to missing references.
        (This case could be better worked around by allocating extra
         pictures on-the-fly, though this would require memory copying in the
         video output.)
      
      - Even if the decoder indeed leaks pictures, the oldest referenced
        picture is not necessarily among those leaked.
      
      If the picture was not truly leaked, vout_FixLeaks() would cause an
      extraneous picture release. This should lead to an assertion failure in
      picture_Release(). Without assertions, it would lead to undefined
      behaviour, especially invalid pointer use in case of hardware surfaces.
      
      In any case, picture leaks are still recovered when resetting the video
      output with vout_Reset(), after the decoder is destroyed. That might
      turn out to be a problem too though.
      e56293ea
    • Rémi Denis-Courmont's avatar
      vda: fix build · fe07f7db
      Rémi Denis-Courmont authored
      fe07f7db
    • Rémi Denis-Courmont's avatar
      url: fix leak · a1264cb7
      Rémi Denis-Courmont authored
      a1264cb7
    • Rémi Denis-Courmont's avatar
      input: unused variable · 908430dd
      Rémi Denis-Courmont authored
      908430dd
    • Rafaël Carré's avatar
      npapi: fix vlcpp fetch · 1f51cbc7
      Rafaël Carré authored
      VLC itself has no submodules
      1f51cbc7
    • Thomas Guillem's avatar
      mediacodec: factor DecodeVideo · 2ab78c74
      Thomas Guillem authored
      More comments, try to make it clearer, release p_block and p_pic in only one
      place. It also fixes a p_block leak if we were not able to create a p_pic.
      2ab78c74
    • Thomas Guillem's avatar
      0621dfe3
    • Thomas Guillem's avatar
      2a09b420
  2. 23 Apr, 2015 19 commits
  3. 22 Apr, 2015 13 commits