summaryrefslogtreecommitdiff
path: root/libavdevice/v4l2.c
Commit message (Collapse)AuthorAge
* Correct two build/built typosTimothy Gu2016-01-11
| | | | | Found-by: Leo Izen <leo.izen@gmail.com> as thebombzen on IRC Signed-off-by: Timothy Gu <timothygu99@gmail.com>
* Merge commit 'ce70f28a1732c74a9cd7fec2d56178750bd6e457'Hendrik Leppkes2015-10-27
|\ | | | | | | | | | | | | * commit 'ce70f28a1732c74a9cd7fec2d56178750bd6e457': avpacket: Replace av_free_packet with av_packet_unref Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
| * avpacket: Replace av_free_packet with av_packet_unrefLuca Barbato2015-10-26
| | | | | | | | | | | | | | `av_packet_unref` matches the AVFrame ref-counted API and can be used as a drop in replacement. Deprecate `av_free_packet`.
* | Merge commit 'f890677d05bc4e8b494a73373ab4cc19791bf884'Hendrik Leppkes2015-10-22
|\| | | | | | | | | | | | | * commit 'f890677d05bc4e8b494a73373ab4cc19791bf884': Replace any remaining avpicture function with imgutils Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
| * Replace any remaining avpicture function with imgutilsVittorio Giovara2015-10-21
| | | | | | | | | | | | avpicture_get_size() -> av_image_get_buffer_size() Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* | avdevice/v4l2: use AV_OPT_TYPE_BOOL for use_libv4l2 optionClément Bœsch2015-09-12
| |
* | Merge commit '01bcc2d5c23fa757d163530abb396fd02f1be7c8'Hendrik Leppkes2015-09-05
|\| | | | | | | | | | | | | * commit '01bcc2d5c23fa757d163530abb396fd02f1be7c8': lavc: Drop deprecated destruct_packet related functions Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
| * lavc: Drop deprecated destruct_packet related functionsVittorio Giovara2015-08-28
| | | | | | | | Deprecated in 10/2012.
* | lavd/v4l2: Use AVSTREAM_PARSE_FULL_ONCE when reading a h264 stream.Carl Eugen Hoyos2015-08-04
| | | | | | | | | | Reported, debugged and tested by trac user noah. Fixes ticket #4644.
* | Merge commit '40cf1bbacc6220a0aa6bed5c331871d43f9ce370'Michael Niedermayer2015-07-21
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit '40cf1bbacc6220a0aa6bed5c331871d43f9ce370': Deprecate avctx.coded_frame Conflicts: ffmpeg.c libavcodec/a64multienc.c libavcodec/asvenc.c libavcodec/cljrenc.c libavcodec/dpxenc.c libavcodec/gif.c libavcodec/mpegvideo_enc.c libavcodec/nvenc.c libavcodec/proresenc_kostya.c libavcodec/pthread_frame.c libavcodec/rawenc.c libavcodec/sunrastenc.c libavcodec/tiffenc.c libavcodec/version.h libavcodec/xbmenc.c libavcodec/xwdenc.c libavdevice/v4l2.c Merged-by: Michael Niedermayer <michael@niedermayer.cc>
| * Deprecate avctx.coded_frameVittorio Giovara2015-07-20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The rationale is that coded_frame was only used to communicate key_frame, pict_type and quality to the caller, as well as a few other random fields, in a non predictable, let alone consistent way. There was agreement that there was no use case for coded_frame, as it is a full-sized AVFrame container used for just 2-3 int-sized properties, which shouldn't even belong into the AVCodecContext in the first place. The appropriate AVPacket flag can be used instead of key_frame, while quality is exported with the new AVPacketSideData quality factor. There is no replacement for the other fields as they were unreliable, mishandled or just not used at all. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
| * v4l2: Add support for h264Luca Barbato2015-03-02
| |
* | avdevice/v4l2: Fix vertical alignment in list_formats() outputMichael Niedermayer2015-05-16
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avdevice/v4l2: Try to fix build on netbsd/openbsdMichael Niedermayer2015-05-09
| | | | | | | | | | Found-by: James Almer <jamrial@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | lavd/v4l2: produce a 0 byte packet when a dequeued buffer is flagged with ↵Giorgio Vazzana2015-05-08
| | | | | | | | | | | | | | | | V4L2_BUF_FLAG_ERROR Fixes ticket #4030. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | lavd/v4l2: fix typoGiorgio Vazzana2015-05-08
| | | | | | | | | | | | This was introduced in cde6e328de214ffe8387641cdc1e433a2c2150f3 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | lavd/v4l2: print buffer flags in case of errorGiorgio Vazzana2015-04-24
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | fix spelling errorsAndreas Cadhalpun2015-03-06
| | | | | | | | | | | | | | | | | | | | | | opttimizations -> optimizations grabing -> grabbing many resource -> many resources isnt -> isn't silcense -> silence Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge commit '619d5e7db88941cadb8136f805564e885c6c6434'Michael Niedermayer2015-03-02
|\| | | | | | | | | | | | | | | | | | | * commit '619d5e7db88941cadb8136f805564e885c6c6434': v4l2: Use the codec descriptor facility Conflicts: libavdevice/v4l2.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * v4l2: Use the codec descriptor facilityLuca Barbato2015-03-02
| | | | | | | | | | The encoder or decoder might be disabled but the format would be supported for at least remuxing.
| * v4l2: Unify one instance of reading/storing errnoMartin Storsjö2014-11-11
| | | | | | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* | lavd/v4l2: implement list device callbackLukasz Marek2015-01-11
| | | | | | | | Signed-off-by: Lukasz Marek <lukasz.m.luki2@gmail.com>
* | avdevice/v4l2: use av_freep() to avoid leaving stale pointers in memoryMichael Niedermayer2014-12-12
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge commit '09f25533a564eab743f258d168697a11122914c4'Michael Niedermayer2014-11-10
|\| | | | | | | | | | | | | | | | | | | | | * commit '09f25533a564eab743f258d168697a11122914c4': v4l2: Preserve errno values Conflicts: libavdevice/v4l2.c See: 60950adc18fe145a235211e75da68ab07123fcaa Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * v4l2: Preserve errno valuesLuca Barbato2014-11-09
| | | | | | | | av_log usually resets it.
* | Merge commit 'a1a259881fa7b23e2ffc0c2a43d4923fe42d0478'Michael Niedermayer2014-11-10
|\| | | | | | | | | | | | | | | | | | | | | * commit 'a1a259881fa7b23e2ffc0c2a43d4923fe42d0478': v4l2: Use av_strerror Conflicts: libavdevice/v4l2.c See: 60950adc18fe145a235211e75da68ab07123fcaa Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * v4l2: Use av_strerrorTristan Matthews2014-11-09
| | | | | | | | Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* | Revert "v4l2: setting device parameters early"Michael Niedermayer2014-11-08
| | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit b1ad9312331759679a9c956233716a67ae681d89. Fixes Ticket #3517 Conflicts: libavdevice/v4l2.c Requested-by: Giorgio Vazzana <mywing81@gmail.com> Merged-by: Michael Niedermayer <michaelni@gmx.at>
* | lavd/v4l2: use pixel format variable names consistentlyGiorgio Vazzana2014-11-06
| | | | | | | | | | | | | | | | | | We now use 'pixelformat' for V4L2_PIX_FMT_* (as they do in v4l2 documentation) and 'pix_fmt' for AVPixelFormat. No functional change in the code. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | lavd/v4l2: don't use avpriv_ prefix for internal functionsJames Almer2014-10-29
| | | | | | | | | | | | | | | | | | | | No need to keep the old symbols around until a major bump since lavd functions with the avpriv_ prefix were never exposed. Signed-off-by: James Almer <jamrial@gmail.com> Reviewed-by: Derek Buitenhuis <derek.buitenhuis@gmail.com> Reviewed-by: Stefano Sabatini <stefasab@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Use v4l2 input format automatically if filename starts with "/dev/video"Andrey Utkin2014-10-29
| | | | | | | | Signed-off-by: Carl Eugen Hoyos <cehoyos@ag.or.at>
* | lavd/v4l2: introduce enqueue_buffer()Giorgio Vazzana2014-09-06
| | | | | | | | | | | | | | | | Additionally, make sure a buffer gets enqueued again (even in error paths) after it has been succesfully dequeued. Tested-by: Dmitry Volyntsev <xeioexception@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | lavd/v4l2: simplify list_formats()Giorgio Vazzana2014-09-05
| | | | | | | | | | | | We can avoid passing file descriptor fd explicitely. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | lavd/v4l2: simplify list_framesizes()Giorgio Vazzana2014-09-05
| | | | | | | | | | | | We can avoid passing file descriptor fd explicitely. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | lavd/v4l2: remove unneeded variable in device_init()Giorgio Vazzana2014-09-05
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | lavd/v4l2: simplify first_field()Giorgio Vazzana2014-09-05
| | | | | | | | | | | | | | There is no need to pass fd as a second parameter. Additionally remove unneeded curly braces. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | lavd/v4l2: Replace s1 with ctx for consistency.Giorgio Vazzana2014-09-05
| | | | | | | | | | | | No functional change in the code. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | libavdevice/v4l2: fix descriptors leak on error pathsDmitry Volyntsev2014-09-04
| | | | | | | | | | | | | | Signed-off-by: Dmitry Volytnsev <xeioexception@gmail.com> Reviewed-by: Benoit Fouet <benoit.fouet@free.fr> Reviewed-by: Giorgio Vazzana <mywing81@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avdevice/v4l2: try to fix build for openbsdMichael Niedermayer2014-08-18
| | | | | | | | | | Found-by: carl Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | lavd/v4l2: do not fail when VIDIOC_ENUMSTD returns ENODATAAndre Wolokita2014-08-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As of September 14 2012, v4l_enumstd() will return ENODATA when a device's std field is set to 0. That is, the device does not have a standard format. In order to properly handle this case, v4l2_set_parameters should catch the ENODATA code and break instead of failing. Below is the v4l2-core commit describing this change. >>commit a5338190efc7cfa8c99a6856342a77d21c9a05cf >>Author: Hans Verkuil <hans.verkuil@cisco.com> >>Date: Fri Sep 14 06:45:43 2012 -0300 >> >> [media] v4l2-core: tvnorms may be 0 for a given input, handle that case >> >> Currently the core code looks at tvnorms to see whether ENUMSTD >> or G_PARM should be enabled. This is not a good check for drivers >> that support the STD API on one input and the DV Timings API on another. >> In that case tvnorms may be 0. >> Instead check whether s_std is present (for ENUMSTD) or whether g_std or >> current_norm is present for g_parm. >> Also, in the enumstd core function return ENODATA if tvnorms is 0, >> because in that case the current input does not support the STD API >> and ENUMSTD should return ENODATA for that. >> >> Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com> >> Reviewed-by: Sakari Ailus <sakari.ailus@iki.fi> >> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* | Merge commit 'f929ab0569ff31ed5a59b0b0adb7ce09df3fca39'Michael Niedermayer2014-08-15
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit 'f929ab0569ff31ed5a59b0b0adb7ce09df3fca39': cosmetics: Write NULL pointer equality checks more compactly Conflicts: cmdutils.c ffmpeg_opt.c ffplay.c libavcodec/dvbsub.c libavcodec/dvdsubdec.c libavcodec/dvdsubenc.c libavcodec/dxa.c libavcodec/libxvid_rc.c libavcodec/mpegvideo.c libavcodec/mpegvideo_enc.c libavcodec/rv10.c libavcodec/tiffenc.c libavcodec/utils.c libavcodec/vc1dec.c libavcodec/zmbv.c libavdevice/v4l2.c libavformat/matroskadec.c libavformat/movenc.c libavformat/sdp.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * cosmetics: Write NULL pointer equality checks more compactlyGabriel Dume2014-08-15
| | | | | | | | Signed-off-by: Diego Biurrun <diego@biurrun.de>
| * libavdevice: use avpriv_open()Rémi Denis-Courmont2013-08-07
| | | | | | | | Signed-off-by: Anton Khirnov <anton@khirnov.net>
* | avdevice/v4l2: Use av_malloc_array()Michael Niedermayer2014-05-22
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | lavd: Use av_gettime_relative()Olivier Langlois2014-05-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Whenever av_gettime() is used to measure relative period of time, av_gettime_relative() is prefered as it guarantee monotonic time on supported platforms. Since v4l2 is compiled only on Linux where av_gettime_relative() is monotonic, a small wrapper function av_gettime_monotonic() is used (should be inlined the compiler) to put emphasis on that fact. Signed-off-by: Olivier Langlois <olivier@trillion01.com> Reviewed-by: Nicolas George <george@nsup.org> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Fix convertion typosMichael Niedermayer2014-04-29
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | lavd: add categories to device implementationsLukasz Marek2014-03-03
| | | | | | | | Signed-off-by: Lukasz Marek <lukasz.m.luki@gmail.com>
* | avdevice/v4l2: only use average frame rate if setMichael Niedermayer2014-02-02
| | | | | | | | | | | | It might be unset on some platforms with some drivers and some input Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avdevice/v4l2: only use frame period from v4l2 if validMichael Niedermayer2014-02-02
| | | | | | | | | | | | | | There is evidence that some drivers do not set a valid value See: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=718805 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | v4l2: setting device parameters earlyFederico Simoncelli2014-01-05
| | | | | | | | | | | | | | | | | | | | | | | | Setting the v4l2 device parameters may influence video properties such as width, height and pixel format. This patch moves v4l2_set_parameters to be executed before fetching the video properties, avoiding errors such as (pal vs ntsc): The v4l2 frame is 829440 bytes, but 691200 bytes are expected Signed-off-by: Federico Simoncelli <fsimonce@redhat.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>