1. 23 Nov, 2018 1 commit
  2. 21 Nov, 2018 2 commits
    • Nicolas Dufresne's avatar
      v4l2: Properly fix Android build · 3b22a604
      Nicolas Dufresne authored
      The previous patch did not even compile on any possible platform or C
      standard. That commit also didn't have a proper commit message.
      
      Android ships Linux with a different signature for ioctl. They first
      released an ioctl with int as request type, and later "fixed" it by
      adding an override with unsign, which is still not matching Linux and
      BSD implementation which uses unsigned long int.
      3b22a604
    • Xavier Claessens's avatar
      Fix ioctl() signature on Android · 0e2d0ada
      Xavier Claessens authored
      0e2d0ada
  3. 19 Nov, 2018 2 commits
    • Xavier Claessens's avatar
      b93e3759
    • Arun Raghavan's avatar
      pulse: Expose the correct max rate that we support · a24ef929
      Arun Raghavan authored
      PulseAudio defines PA_RATE_MAX as the maximum sampling rate that it
      supports. We were previously exposing a maximum rate of INT_MAX, which
      is incorrect, but worked because nothing was really using a rate greater
      than 384000 kHz.
      
      While playing DSD data, we hit a case where there might be very high
      sample rates (>1MHz), and pulsesink fails during stream creation with
      such streams because it erroneously advertises that it supports such
      rates.
      
      Since PA_RATE_MAX is #define'd to (8*48000U), we can't just use it in
      the caps string. Instead, we fix up the rate to what we actually support
      whenever we use our macro caps.
      a24ef929
  4. 15 Nov, 2018 1 commit
  5. 13 Nov, 2018 2 commits
  6. 12 Nov, 2018 2 commits
  7. 08 Nov, 2018 1 commit
    • Nicolas Dufresne's avatar
      v4l2object: Read driver selected interlace mode · dbaca549
      Nicolas Dufresne authored
      If there was no interlace-mode field in the caps. Read back the value
      selected by the driver. This way, if the driver does not support
      progressive, then it will automatically negotiate the returned mode
      unless this mode is not supported by GStreamer.
      
      This method was already used for colorimetry. Just like colorimetry, the
      interlace mode is not longer probed by v4l2src dues to performance
      issues.
      
      Fixes #511
      dbaca549
  8. 07 Nov, 2018 3 commits
  9. 05 Nov, 2018 4 commits
  10. 01 Nov, 2018 1 commit
  11. 28 Oct, 2018 6 commits
  12. 27 Oct, 2018 3 commits
    • Alicia Boya García's avatar
      qtmux: round to nearest when computing mehd and tkhd duration · 5fcb7f71
      Alicia Boya García authored
      This fixes a bug where in some files mehd.fragment_duration is one unit
      less than the actual duration of the fragmented movie, as explained below:
      
      mehd.fragment_duration is computed by scaling the end timestamp of
      the last frame of the movie in (in nanoseconds) by the movie timescale.
      
      In some situations, the end timestamp is innacurate due to lossy conversion to
      fixed point required by GstBuffer upstream.
      
      Take for instance a movie with 3 frames at exactly 3 fps.
      
      $ gst-launch-1.0 -v videotestsrc num-buffers=3 \
        ! video/x-raw, framerate="(fraction)3/1" \
        ! x264enc \
        ! fakesink silent=false
      
      dts: 999:59:59.333333334,  pts: 1000:00:00.000000000, duration: 0:00:00.333333333
      dts: 999:59:59.666666667,  pts: 1000:00:00.666666666, duration: 0:00:00.333333334
      dts: 1000:00:00.000000000, pts: 1000:00:00.333333333, duration: 0:00:00.333333333
      
      The end timestamp is calculated by qtmux in this way:
      
      end timestamp = last frame DTS + last frame DUR - first frame DTS =
        = 1000:00:00.000000000 + 0:00:00.333333333 - 999:59:59.333333334 =
        = 0:00:00.999999999
      
      qtmux needs to round this timestamp to the declared movie timescale, which can
      ameliorate this distortion, but it's important that round-neareast is used;
      otherwise it would backfire badly.
      
      Take for example a movie with a timescale of 30 units/s.
      
      0.999999999 s * 30 units/s = 29.999999970 units
      
      A round-floor (as it was done before this patch) would set fragment_duration to
      29 units, amplifying the original distorsion from 1 nanosecond up to 33
      milliseconds less than the correct value. The greatest distortion would occur
      in the case where timescale = framerate, where an entire frame duration would
      be subtracted.
      
      Also, rounding is added to tkhd duration computation too, which
      potentially has the same problem.
      
      https://bugzilla.gnome.org/show_bug.cgi?id=793959
      5fcb7f71
    • Marc Leeman's avatar
      udpsrc: print information about bind_error socket error · 827d70da
      Marc Leeman authored
      In some cases, a bind error occurs during operation. Printing
      the information about the problem is critical for finding the
      conflict
      
      https://bugzilla.gnome.org/show_bug.cgi?id=797340
      827d70da
    • Johan Bjäreholt's avatar
  13. 24 Oct, 2018 5 commits
  14. 22 Oct, 2018 2 commits
  15. 21 Oct, 2018 1 commit
  16. 20 Oct, 2018 2 commits
  17. 19 Oct, 2018 2 commits