1. 10 Jan, 2014 7 commits
  2. 04 Dec, 2013 1 commit
    • Julien Isorce's avatar
      v4l2: add support for multi-planar V4L2 API · 61ae84b5
      Julien Isorce authored
      This api is in linux kernel since version 2.6.39,
      and present in all version 3.
      The commit that adds the API in master branch of the
      linux kernel source is:
      v4l2 doc: "Some devices require data for each input
      or output video frame to be placed in discontiguous
      memory buffers"
      There are newer structures 'struct v4l2_pix_format_mplane'
      and 'struct v4l2_plane'.
      So the pixel format is not setup with the same API when using
      Also for gst-v4l2, one of the difference is that in GstV4l2Meta
      there are now one mem pointer for each maped plane.
      When not using multi-planar, this commit takes care of keeping
      the same code path than previously. So that the 2 cases are
      in two different blocks triggered from V4L2_TYPE_IS_MULTIPLANAR.
      Fixes bug https://bugzilla.gnome.org/show_bug.cgi?id=712754
  3. 25 Nov, 2013 1 commit
  4. 19 Aug, 2013 1 commit
  5. 04 Jun, 2013 1 commit
  6. 29 May, 2013 1 commit
  7. 20 May, 2013 1 commit
  8. 19 Feb, 2013 1 commit
  9. 17 Dec, 2012 1 commit
  10. 04 Nov, 2012 1 commit
  11. 13 Sep, 2012 1 commit
  12. 21 Dec, 2011 1 commit
  13. 04 Nov, 2011 1 commit
  14. 04 Aug, 2011 1 commit
    • Wim Taymans's avatar
      v4l2: activate the pool in fallback · add1cbdb
      Wim Taymans authored
      When nobody is using our pool, activate it ourselves.
      Avoid leaking the buffer array.
      Set default pool configuration with caps.
      Don't keep current_caps, core does that for us now.
  15. 27 Jul, 2011 1 commit
    • Wim Taymans's avatar
      v4l2: remove unused variables · 63fc64dd
      Wim Taymans authored
      Use the more specialized type for the bufferpool.
      Use the size from the driver as the size of the image to read.
      Don't configure the pool when created. This will be done in the setup_allocation
      method later or by upstream for sinks.
      Remove unused properties and variables. Bufferpool sizes are now configured in
      the bufferpool by the elements in the pipeline. We might want to influence the
      pool size later somehow.
  16. 26 Jul, 2011 1 commit
    • Wim Taymans's avatar
      v4l2: rename a variable · 8c424142
      Wim Taymans authored
      Rename the size variable to sizeimage and fill it with the size that has been
      given to use by the v4l2 driver instead of making something up..
  17. 19 Jul, 2011 1 commit
    • Wim Taymans's avatar
      v4l2: Fix sink bufferpool handling · 87d9a57a
      Wim Taymans authored
      Remove old method, use neww _process method for the sink.
      Inform the parent bufferpool class about the settings too. This is needed to let
      it know about the max-buffers.
      Allocate the negotiated max-buffers and initially mmap min-buffers. The idea is
      that the bufferpool will allocate more when needed.
      Improve debugging.
      Only poll in capture mode, it does not seem to work in playback mode on this
  18. 18 Jul, 2011 2 commits
    • Wim Taymans's avatar
      v4l2: More work on bufferpools · 55eb26f1
      Wim Taymans authored
      Add different transport methods to the bufferpool (MMAP and READ/WRITE)
      Do more parsing of the bufferpool config.
      Start and stop streaming based on the bufferpool state.
      Make separate methods for getting a buffer from the pool and filling it with
      data. This allows us to fill buffers from other pools too. Either use copy or
      read to fill up the target buffers.
      Add property to force a transfer mode in v4l2src.
      Increase default number of buffers to 4.
      Negotiate bufferpool and its properties in v4l2src.
    • Wim Taymans's avatar
      v4l2: add IO method enum · 39716c02
      Wim Taymans authored
  19. 15 Jul, 2011 1 commit
    • Wim Taymans's avatar
      v4l2: convert to GstBufferPool · 21f532ae
      Wim Taymans authored
      Extend from GstBufferPool.
      Handle the lifetime of the pool buffers correctly with the start/stop vmethods.
      Map acquire and release directly to QBUF and DQBUF. We still expose an explicit
      qbuf for the v4l2sink for now.
  20. 14 Jul, 2011 1 commit
  21. 13 Jul, 2011 5 commits
    • Wim Taymans's avatar
      v4l2: move capture code to device object · 7c5f5b1b
      Wim Taymans authored
      Move the details of how to capture to the device object. Remove the
      v4l2src_calls.[ch] files because they are empty now.
      Provide two simple methods to get and return a buffer to the device.
      Also do a slow copy when the buffer is not from our pool.
    • Wim Taymans's avatar
      v4l2: Let the device object manage the pool · d9e61954
      Wim Taymans authored
      Rename start and stop methods to open and close because that is what they do.
      After setting the format on the device object, setup the bufferpools. Move this
      code from the v4l2src_calls.c file, it is shared between source and sink.
      Make new device start and stop method that merges various bits of common code
      spread over several files.
    • Wim Taymans's avatar
      v4l2: don't store stride in the videoinfo · 398001f2
      Wim Taymans authored
      We want to keep the default strides in the videoinfo. Keep the stride of the
      video frames separate so that we can use both to copy a video frame and do
      correct stride conversion.
    • Wim Taymans's avatar
      v4l2: improve caps parsing · 01def08e
      Wim Taymans authored
      Use GstVideoInfo to store the parsed caps.
      Remove outsize from the caps parsing code, it's wrong because it does not use
      the stride given by the driver.
    • Wim Taymans's avatar
      v4l2: Move configuration of framerate to _set_format · 9f4cf3be
      Wim Taymans authored
      Move the configuration of the framerate to where we set the other format
      Remove hack to check if the device is active.
      Store streamparm in the device info.
      Use some macros to access the current device configuration.
      Remove some duplicate fields in src and sink and use the device configuration
  22. 12 Jul, 2011 3 commits
    • Wim Taymans's avatar
      v4l2: simplify setting the capture format · e8ae00f5
      Wim Taymans authored
      Pass the caps to the set_format function and make _set_format parse the caps.
      Also keep the parsed values in the v4l2object so that we can refer to them when
      we want.
    • Wim Taymans's avatar
      v4l2: Let the bufferpool own the V4l2Object · 0dcf0aeb
      Wim Taymans authored
      Keep track of the currently configured format and setting in the
      Pass the v4l2object to the bufferpool constructor so that the bufferpool can
      know everything about the currently configured settings. This also allows us
      to remove some awkward code.
    • Wim Taymans's avatar
      v4l: pass the bytesperline around · 59b86d25
      Wim Taymans authored
      When setting a format, return the bytesperline to the caller so that it can be
      used to allocate buffers.
  23. 24 May, 2011 1 commit
    • Rob Clark's avatar
      v4l2: add norm property · 9c958511
      Rob Clark authored
      Based on a patch by Guennadi Liakhovetski.
      v2: updates because I forgot to add GstTuner interface to v4l2sink
      v3: update to add all possible values to norm enum
  24. 02 Jan, 2011 1 commit
  25. 29 Dec, 2010 2 commits
  26. 10 Sep, 2010 1 commit