1. 16 Oct, 2015 7 commits
  2. 15 Oct, 2015 5 commits
  3. 14 Oct, 2015 8 commits
  4. 13 Oct, 2015 3 commits
  5. 12 Oct, 2015 1 commit
  6. 11 Oct, 2015 1 commit
    • Sean McGovern's avatar
      build: add Solaris symbol versioning · c1aac39e
      Sean McGovern authored
      The versioning facility in the Solaris linker differs from Linux in 3 ways:
      
      1. It does not support globs in linker scripts for
      symbol versioning -- this is a GNU extension.
      
      2. The linker argument is '-M', instead of '--version-script'.
      
      3. It is picky about line endings.
      Each symbol or directive must be on a line of it's own.
      
      Let's use make_sunver.pl from GCC to generate a version script that works
      correctly with the Solaris linker. It's function is to correctly expand the
      globs in the original generated version script.
      Signed-off-by: 's avatarLuca Barbato <lu_zero@gentoo.org>
      c1aac39e
  7. 10 Oct, 2015 3 commits
  8. 09 Oct, 2015 1 commit
  9. 08 Oct, 2015 2 commits
  10. 07 Oct, 2015 6 commits
  11. 04 Oct, 2015 3 commits
    • wm4's avatar
      mmaldec: be more tolerant against MMAL not returning decoded output · 39f01e34
      wm4 authored
      In some situations, MMAL won't return a decoded frame for certain input
      frames. This can happen if a frame fails to decode, or if a packet does
      not actually contain a complete frame. In these situations, we would
      deadlock (or actually timeout) waiting for an expected output frame,
      which is not ideal. On the other hand, there are situations where we
      definitely have to block to avoid deadlocks. (This mess is a
      consequence of trying to map MMAL's asynchronous and flexible
      dataflow to libavcodec, which is more static and rigid.)
      
      Solve this by doing a blocking wait only if the amount of buffered data
      is too big. The whole purpose of the blocking wait is to avoid excessive
      buffering of input data, so we can skip it if it appears to be low. The
      consequence is that libavcodec can gracefully return no frame to the
      API user.
      
      We want to track the number of full packets to make our heuristic work.
      But MMAL buffers are fixed-size, requiring splitting large packets. This
      is why the previous commit is needed. We use the ..._FRAME_END flag to
      remember packet boundaries, but MMAL does not preserve these buffer
      flags when returning buffers to the user.
      Signed-off-by: 's avatarLuca Barbato <lu_zero@gentoo.org>
      39f01e34
    • wm4's avatar
      mmaldec: refactor to have more context per MMAL input buffer · 65db4899
      wm4 authored
      The next commit needs 1 bit of additional information per MMAL buffer
      sent to the MMAL input port. This information will be needed when the
      buffer is recycled (i.e. returned by the input port's callback).
      Normally, we could use MMAL_BUFFER_HEADER_FLAG_USER0, but that is
      unexpectedly not preserved.
      
      Do this by storing a pointer to FFBufferEntry in the MMAL buffer's
      user data, instead of an AVBufferRef. This also changes the lifetime
      of FFBufferEntry.
      Signed-off-by: 's avatarLuca Barbato <lu_zero@gentoo.org>
      65db4899
    • Derek Buitenhuis's avatar