1. 08 Apr, 2017 1 commit
  2. 16 Mar, 2017 1 commit
  3. 08 Mar, 2017 1 commit
  4. 03 Mar, 2017 1 commit
    • Anton Khirnov's avatar
      ffmpeg: init filtergraphs only after we have a frame on each input · af1761f7
      Anton Khirnov authored
      This makes sure the actual stream parameters are used, which is
      important mainly for hardware decoding+filtering cases, which would
      previously require various weird workarounds to handle the fact that a
      fake software graph has to be constructed, but never used.
      This should also improve behaviour in rare cases where
      avformat_find_stream_info() does not provide accurate information.
      
      This merges Libav commit a3a0230a. It was previously skipped.
      
      The code in flush_encoders() which sets up a "fake" format wasn't in
      Libav. I'm not sure if it's a good idea, but it tends to give
      behavior closer to the old one in certain corner cases.
      
      The vp8-size-change gives different result, because now the size of
      the first frame is used. libavformat reported the size of the largest
      frame for some reason.
      
      The exr tests now use the sample aspect ratio of the first frame. For
      some reason libavformat determines 0/1 as aspect ratio, while the
      decoder returns the correct one.
      
      The ffm and mxf tests change the field_order values. I'm assuming
      another libavformat/decoding mismatch.
      Signed-off-by: 's avatarwm4 <nfxjfg@googlemail.com>
      af1761f7
  5. 11 Feb, 2017 1 commit
  6. 10 Feb, 2017 1 commit
  7. 02 Dec, 2016 3 commits
  8. 18 Nov, 2016 2 commits
  9. 01 Nov, 2016 1 commit
  10. 28 Oct, 2016 1 commit
  11. 26 Oct, 2016 1 commit
  12. 15 Oct, 2016 1 commit
  13. 11 Oct, 2016 1 commit
  14. 06 Oct, 2016 7 commits
  15. 21 Sep, 2016 1 commit
    • Clément Bœsch's avatar
      ffmpeg: switch to codecpar · 955b818c
      Clément Bœsch authored
      This commit is largely based on commit 15e84ed3 from Anton Khirnov
      <anton@khirnov.net> which was previously skipped in bbf5ef9d.
      
      There are still a bunch of things raising codecpar related warnings that
      need fixing, such as:
      - the use of codec->debug in the interactive debug mode
      - read_ffserver_streams(): it's probably broken now but there is no test
      - lowres stuff
      - codec copy apparently required by bitstream filters
      
      The matroska references are updated because they now properly forward
      the field_order (previously unknown, now progressive).
      
      Thanks to James Almer for fixing a bunch of FATE issues in this commit.
      Signed-off-by: 's avatarClément Bœsch <clement@stupeflix.com>
      Signed-off-by: 's avatarJames Almer <jamrial@gmail.com>
      955b818c
  16. 23 Aug, 2016 1 commit
  17. 04 Aug, 2016 1 commit
  18. 03 Jun, 2016 1 commit
  19. 17 May, 2016 1 commit
  20. 14 Apr, 2016 1 commit
    • Michael Niedermayer's avatar
      avcodec: Add bits_per_raw_sample to AVCodecParameters · 21acc4db
      Michael Niedermayer authored
      The bits_per_raw_sample represents the number of bits of precision per sample.
      
      The field is added at the logical place, not at the end as the code was just
      recently added
      
      This fixes the regression about losing the audio sample precision information
      
      The change in the fate test checksum un-does the change from the merge
      
      Previous version reviewed by: wm4 <nfxjfg@googlemail.com>
      Previous version reviewed by: Dominik 'Rathann' Mierzejewski <dominik@greysector.net>
      Signed-off-by: 's avatarMichael Niedermayer <michael@niedermayer.cc>
      21acc4db
  21. 03 Apr, 2016 1 commit
  22. 28 Feb, 2016 1 commit
  23. 23 Feb, 2016 2 commits
    • Anton Khirnov's avatar
      lavf: replace AVStream.codec with AVStream.codecpar · 9200514a
      Anton Khirnov authored
      Currently, AVStream contains an embedded AVCodecContext instance, which
      is used by demuxers to export stream parameters to the caller and by
      muxers to receive stream parameters from the caller. It is also used
      internally as the codec context that is passed to parsers.
      
      In addition, it is also widely used by the callers as the decoding (when
      demuxer) or encoding (when muxing) context, though this has been
      officially discouraged since Libav 11.
      
      There are multiple important problems with this approach:
          - the fields in AVCodecContext are in general one of
              * stream parameters
              * codec options
              * codec state
            However, it's not clear which ones are which. It is consequently
            unclear which fields are a demuxer allowed to set or a muxer allowed to
            read. This leads to erratic behaviour depending on whether decoding or
            encoding is being performed or not (and whether it uses the AVStream
            embedded codec context).
          - various synchronization issues arising from the fact that the same
            context is used by several different APIs (muxers/demuxers,
            parsers, bitstream filters and encoders/decoders) simultaneously, with
            there being no clear rules for who can modify what and the different
            processes being typically delayed with respect to each other.
          - avformat_find_stream_info() making it necessary to support opening
            and closing a single codec context multiple times, thus
            complicating the semantics of freeing various allocated objects in the
            codec context.
      
      Those problems are resolved by replacing the AVStream embedded codec
      context with a newly added AVCodecParameters instance, which stores only
      the stream parameters exported by the demuxers or read by the muxers.
      9200514a
    • Marton Balint's avatar
  24. 10 Feb, 2016 1 commit
  25. 01 Feb, 2016 1 commit
  26. 31 Jan, 2016 1 commit
  27. 24 Nov, 2015 1 commit
  28. 10 Nov, 2015 2 commits
  29. 05 Aug, 2015 1 commit