Commit Graph

337 Commits

Author SHA1 Message Date
Luca Barbato cd2bbad303 v4l2: set the proper codec_tag
Unbreak direct streamcopy.
2012-01-04 13:10:20 +01:00
Luca Barbato eb89b4fc09 v4l2: refactor device_open
Check capabilities directly in the function, further simplify the code.
2012-01-04 13:10:20 +01:00
Luca Barbato 246007d370 v4l2: simplify away io_method
Only mmap is supported.
2012-01-04 13:10:20 +01:00
Luca Barbato a896d7f45a v4l2: cosmetics 2012-01-04 13:10:20 +01:00
Luca Barbato 21aa6ae4fb v4l2: uniform and format options 2012-01-04 13:10:20 +01:00
Luca Barbato af7123b2ad v4l2: do not force interlaced mode
Video4linux2 supports both interlaced and non-interlaced mode, do not
ask for interlaced if not necessary.
2012-01-04 13:10:20 +01:00
Janne Grunau 1adba23cec v4l2: remove unneded linux specific asm/types.h include 2011-12-27 16:07:58 +01:00
Mans Rullgard 878dda5db1 build: move inclusion of subdir.mak to main subdir loop
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-12-13 14:26:49 +00:00
Anton Khirnov 1be323054e Add basic libavdevice documentation. 2011-12-12 19:43:37 +01:00
Diego Biurrun da9cea77e3 Fix a bunch of common typos. 2011-12-11 00:32:25 +01:00
Diego Biurrun ee41963f19 cosmetics: drop some completely pointless parentheses 2011-12-07 15:29:13 +01:00
Diego Biurrun e873c03ac7 misc Doxygen markup improvements 2011-12-05 13:06:58 +01:00
Anton Khirnov c3f9ebf743 lavf: make av_set_pts_info private.
It's supposed to be called only from (de)muxers.
2011-11-30 20:34:45 +01:00
Mans Rullgard cc276c85d1 Make channel layout masks unsigned
It makes more sense for a bit mask to use an unsigned type.
The change should be source and binary compatible on all
supported systems, hence micro version bump.

Fixes a few invalid shifts.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-11-25 13:19:54 +00:00
Luca Barbato 2625b621ce pulse: compute frame_duration once and fix it
The frame duration was calculated without taking in account the
bytes per sample.

Thanks to Lorenzo Pistone <blaffablaffa@gmail.com> for pointing
the issue and providing an initial fix.
2011-11-14 16:16:41 +01:00
Martin Storsjö 3607ed70d5 Remove leftover includes of strings.h
Signed-off-by: Martin Storsjö <martin@martin.st>
2011-11-06 11:53:05 +02:00
Reimar Döffinger bb3244dee2 Replace all usage of strcasecmp/strncasecmp
All current usages of it are incompatible with localization.
For example strcasecmp("i", "I") != 0 is possible, but would
break many of the places where it is used.

Instead use our own implementations that always treat the data
as ASCII.

Signed-off-by: Martin Storsjö <martin@martin.st>
2011-11-06 11:52:57 +02:00
Luca Barbato 0de9c41ff4 pulse: introduce pulseaudio input
It currently use the simple api and is using the latency information
provided only to offset the stream start.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2011-10-26 16:39:33 -07:00
Anton Khirnov 5dd35b43f1 Move timefilter code from lavf to lavd.
It's only used in the JACK device.

Fixes linking shared lavd with JACK enabled.
2011-10-21 20:29:05 +02:00
Anton Khirnov ab88b25f99 lavf: use avpriv_ prefix for some dv functions.
They are used in libavdevice.
2011-10-20 20:57:23 +02:00
Anton Khirnov 1fa395e471 lavf: use avpriv_ prefix for ff_new_chapter().
It's used in libavdevice.
2011-10-20 20:57:23 +02:00
Anton Khirnov 3b3bbdd3e6 lavf,lavd: replace av_new_stream->avformat_new_stream part I.
Trivial replacements with sed are done in this commit:
sed 's/av_new_stream(\([^)]*\), 0)/avformat_new_stream(\1, NULL)/'
2011-10-19 17:02:11 +02:00
Anton Khirnov 145f741e11 AVOptions: rename FF_OPT_TYPE_* => AV_OPT_TYPE_* 2011-10-12 16:51:16 +02:00
Diego Biurrun e83c2ddebf Fix 'heigth' vs. 'height' typos. 2011-10-05 11:12:01 +02:00
Diego Biurrun 30b4ee7901 Use explicit struct initializers for AVOutputFormat/AVInputFormat declarations. 2011-09-24 12:11:17 +02:00
Anton Khirnov 4d77d57d20 alsa: add missing header
Fixes compile with next lavc major.
2011-09-21 13:51:53 +02:00
Anton Khirnov e417d80d28 lavd: add libcdio-paranoia input device for audio CD grabbing 2011-09-17 06:45:26 +02:00
Anton Khirnov c14fe6bc99 lavf,lavd: remove all usage of AVFormatParameters from demuxers.
AVFormatParameters are converted into corresponding private options in
av_open_input_file/stream() compat wrappers, so accessing them from
demuxers is redundant.
2011-08-15 19:59:48 +02:00
Anton Khirnov a7c93dae55 jack: add 'channels' private option.
Get rid of AVFormatParameters usage.
2011-08-15 19:56:55 +02:00
Yu-Jie Lin 1442d29533 x11grab: add show_region AVOption.
Draw the current grabbing region for indication.

Signed-off-by: Yu-Jie Lin <livibetter@gmail.com>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-07-31 14:26:08 +02:00
Yu-Jie Lin 085791a92e x11grab: add follow_mouse AVOption.
-follow_mouse centered|PIXELS
  move grabbing region to where mouse pointer at the center; or
  only move when pointer reaches within PIXELS to the edge.

Signed-off-by: Yu-Jie Lin <livibetter@gmail.com>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-07-31 14:25:00 +02:00
Diego Biurrun ad4cd0c2a4 doxygen: use Doxygen markup for authors and web links where appropriate 2011-07-15 02:01:21 +02:00
Justin Ruggles e35c674d13 alsa: limit buffer_size to 32768 frames.
In testing, the file output plugin gave a max buffer size of about 20 million
frames, which is way more than what is really needed and causes a memory
allocation error on my system.
2011-07-09 16:01:06 -04:00
Justin Ruggles 8bfd7f6a47 alsa: fallback to buffer_size/4 for period_size.
buffer_size/4 is the value used by aplay. This fixes output to null
devices, e.g. writing ALSA output to a file.
2011-07-09 16:00:56 -04:00
Anton Khirnov ce558c8f59 x11grab: replace undocumented nomouse hackery with a private option. 2011-07-08 18:30:21 +02:00
Diego Biurrun f9853c1b9c libavdevice: Remove disabled code. 2011-07-07 22:53:51 +02:00
Diego Biurrun d3f751e603 Add some missing mathematics.h #includes for av_rescale(). 2011-07-05 20:16:38 +02:00
Mans Rullgard 57b4a3dd2b build: include sub-makefiles using full path instead of symlinks
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-06-28 18:15:19 +01:00
Diego Biurrun a6213f3dce build: Remove redundant config.mak includes from subdirectory Makefiles.
Calling Make from subdirectories is not supported and config.mak has
multiple inclusion guards anyway, so the top-level include is enough.
2011-06-25 13:02:51 +02:00
Stefano Sabatini 41b68dce4d lavdev: improve feedback in case of invalid frame rate/size
Show the invalid string in the error message.

While at it also prefer "Could not" over "Couldn't", plain forms are
preferred over contractions (simplify readability, especially for non
English-savvy people).

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-06-23 08:49:49 +02:00
Stefano Sabatini a4bda40544 vfwcap: prefer "framerate_q" over "fps" in vfw_read_header()
The variable is used for containing the parsed value of framerate,
using a lexically consistent name eases readability/understanding.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-06-23 08:49:49 +02:00
Stefano Sabatini e60068baeb v4l2: prefer "framerate_q" over "fps" in v4l2_set_parameters()
The variable is used for containing the parsed value of framerate,
using a lexically consistent name eases readability/understanding.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-06-23 08:49:49 +02:00
Stefano Sabatini a5351720cc fbdev: prefer "framerate_q" over "fps" in device context
The variable is used for containing the parsed value of framerate,
using a lexically consistent name eases readability/understanding.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-06-23 08:49:49 +02:00
Stefano Sabatini da51a7c69c bktr: prefer "framerate" over "fps" for grab_read_header()
The variable is used for containing the parsed value of s1->framerate,
using a lexically consistent name ease readability/understanding.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-06-23 08:49:48 +02:00
Nicolas George 147bcf27c4 ALSA: implement channel layout for playback.
Currently quad, 5.0, 5.1 and 7.1 are implemented.
Implementing support for other formats/layouts and capture should be
straightforward.

5.0 and 7.1 support by Carl Eugen Hoyos.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-06-23 08:49:48 +02:00
Carl Eugen Hoyos 2359aeb52d alsa: support unsigned variants of already supported signed formats. 2011-06-23 08:49:48 +02:00
Carl Eugen Hoyos 921715edff alsa: add support for more formats.
Specifically, f32, f64, s32, s24, a-law and mu-law.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-06-23 08:49:48 +02:00
Sven C. Dack 2f2c60400a x11grab: remove a memory allocation and the associated memcpy.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-06-12 12:18:05 +02:00
Reimar Döffinger c673c90515 oss,sndio: simplify by using FFMIN.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-06-09 22:53:17 +02:00
Luca Barbato 2c6fb9f032 v4l2: do not force NTSC as standard
Setting a standard is meaningful only for analog capture devices.
2011-06-05 14:20:56 -05:00
Anton Khirnov 367732832f lavf,lavc: free avoptions in a generic way.
It's simpler and less error-prone.

Fixes some memleaks along the way.
2011-06-05 15:01:36 +02:00
Anton Khirnov ff494cbdaf x11grab: add framerate private option. 2011-06-04 19:49:56 +02:00
Anton Khirnov a3b15e411d fbdev,v4l2: remove some forgotten uses of AVFormatParameters.time_base. 2011-06-04 19:48:08 +02:00
Anton Khirnov 1572484f62 bktr: don't error when AVFormatParameters.time_base isn't set.
There's a private option for it now.
2011-06-04 19:47:59 +02:00
Stefano Sabatini 94bed8e582 Replace avcodec_get_pix_fmt_name() by av_get_pix_fmt_name().
This fixes warnings about avcodec_get_pix_fmt_name() being deprecated.
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2011-06-03 13:55:55 +02:00
Anton Khirnov bd7c1d35a6 bktr: get default framerate from video standard. 2011-06-03 08:11:05 +02:00
Diego Biurrun f190f676bc Replace custom DEBUG preprocessor trickery by the standard one. 2011-06-03 00:44:06 +02:00
Diego Biurrun 2366462429 Replace #ifdef + av_log() combinations by av_dlog(). 2011-06-03 00:44:03 +02:00
Anton Khirnov fefa67d536 v4l2: remove one forgotten use of AVFormatParameters.pix_fmt. 2011-06-02 21:52:15 +02:00
Anton Khirnov 4078ed2631 vfwcap: add a framerate private option. 2011-06-02 21:52:15 +02:00
Anton Khirnov c21324eeb6 v4l2: add a framerate private option. 2011-06-02 21:52:15 +02:00
Anton Khirnov 121ef2e26d libdc1394: add a framerate private option. 2011-06-02 21:52:15 +02:00
Anton Khirnov 1556186a62 fbdev: add a framerate private option. 2011-06-02 21:52:12 +02:00
Anton Khirnov 3e3db4d93d bktr: add a framerate private option. 2011-06-02 21:50:17 +02:00
Anton Khirnov 7a70e01b26 v4l2: don't leak video standard string on error. 2011-05-29 15:10:35 +02:00
Anton Khirnov d576bbf3eb v4l2: add a pixel_format private option. 2011-05-27 23:33:51 +02:00
Anton Khirnov 2e0e1e712a libdc1394: add a pixel_format private option. 2011-05-27 23:33:51 +02:00
Anton Khirnov 724a900c45 x11grab: add video_size private option. 2011-05-27 06:52:52 +02:00
Anton Khirnov 3102fb0351 x11grab: factorize returning error codes. 2011-05-27 06:52:52 +02:00
Anton Khirnov 3e15ea2150 vfwcap: add video_size private option. 2011-05-27 06:52:51 +02:00
Anton Khirnov 8fe7b6443f v4l2: add video_size private option. 2011-05-27 06:52:51 +02:00
Anton Khirnov 82b5aa0add v4l2: factorize returning error codes.
This will be useful in the following commit.
2011-05-27 06:52:51 +02:00
Anton Khirnov fd48620e3e libdc1394: add video_size private option. 2011-05-27 06:52:51 +02:00
Anton Khirnov 284bac2e77 libdc1394: return meaninful error codes. 2011-05-27 06:52:51 +02:00
Anton Khirnov 33e0369672 bktr: add video_size private option. 2011-05-27 06:52:51 +02:00
Anton Khirnov 3577416212 bktr: factorize returning error codes.
This will be useful in the following commit.
2011-05-27 06:52:51 +02:00
Anton Khirnov 3d96c13e43 v4l: include avdevice.h
Fixes build.
2011-05-26 20:44:19 +02:00
Anton Khirnov aaea149035 lavdevice: mark v4l for removal on next major bump. 2011-05-26 19:04:02 +02:00
Anton Khirnov 2341c97e8d libdc1394: fix compilation.
Add a forgotten comma and move options/class definition outside of
HAVE_LIBDC1394_1.
2011-05-26 09:23:56 +02:00
Anton Khirnov d20576d01b lavf: deprecate AVFormatParameters.channel. 2011-05-25 15:55:47 +02:00
Anton Khirnov 79405e57dc libdc1394: add a private option for channel. 2011-05-25 15:55:47 +02:00
Anton Khirnov 986f4f4918 dv1394: add a private option for channel. 2011-05-25 15:55:47 +02:00
Anton Khirnov 3d2a418605 v4l2: reindent. 2011-05-25 15:55:47 +02:00
Anton Khirnov a02fd06ab7 v4l2: add a private option for channel. 2011-05-25 15:55:47 +02:00
Anton Khirnov fc68a8f703 lavf: deprecate AVFormatParameters.standard. 2011-05-25 15:55:47 +02:00
Anton Khirnov b3da269211 v4l2: add a private option for video standard. 2011-05-25 15:55:46 +02:00
Anton Khirnov a861ffeffa v4l: add a private option for video standard. 2011-05-25 15:55:46 +02:00
Anton Khirnov eb040dbbd3 dv1394: add a private option for video standard. 2011-05-25 15:55:46 +02:00
Anton Khirnov e199eb44fd bktr: add a private option for video standard. 2011-05-25 15:55:46 +02:00
Anton Khirnov bffd4dd1d3 lavf: deprecate AVFormatParameters.{channels,sample_rate}. 2011-05-25 15:55:46 +02:00
Anton Khirnov 2ea8faf39f ALSA: add channels and sample_rate private options. 2011-05-25 15:20:26 +02:00
Anton Khirnov 003e63b6df oss: add channels and sample_rate private options. 2011-05-25 15:20:26 +02:00
Anton Khirnov a1a15a9993 sndio: add channels and sample_rate private options. 2011-05-25 15:20:26 +02:00
Diego Biurrun 046f081b46 configure: Do not unconditionally add -D_POSIX_C_SOURCE to CPPFLAGS.
Adding _POSIX_C_SOURCE to CPPFLAGS globally produces all sorts of problems
since it causes certain system functions to be hidden on some (BSD) systems.
The solution is to only add the flag on systems that really require it, i.e.
glibc-based ones.

This change makes BSD systems compile out-of-the-box without the need for
adding specific flags manually.  It also allows dropping a number of flags
set manually on a file-per-file basis, but were only present to work around
breakage introduced by the presence of _POSIX_C_SOURCE.

Also add _XOPEN_SOURCE to CPPFLAGS for glibc systems.  We use XSI extensions
in several places already, so it is preferable to define it globally instead
of littering source files with individual #defines only needed for glibc.
2011-05-12 11:41:59 +02:00
Diego Biurrun 045dd4b928 Replace some commented-out debug printf() / av_log() messages with av_dlog(). 2011-04-29 17:27:01 +02:00
Martin Storsjö 32a128522a libavdevice: Define _XOPEN_SOURCE for usleep
This hopefully fixes build failures on Dragonfly BSD.

Signed-off-by: Martin Storsjö <martin@martin.st>
2011-04-21 14:13:09 +03:00
Anton Khirnov 139f3ac42d Bump major versions of all libraries.
They've accumulated enough new APIs and corresponding deprecated cruft.

This breaks API and ABI.
2011-04-18 20:19:47 +02:00
Brad 2eddfb2b13 sndio bug fix
Since the code already supports both little- and big-endian
audio for recording, do not fail just because the endianness is not
what we expect.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-03-29 21:19:39 -07:00
Stefano Sabatini c6f951442e framebuffer device demuxer
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-03-28 16:49:22 +02:00
Brad 15d59d2cea sndio support for playback and record
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-03-27 10:46:45 +02:00