Commit Graph

429 Commits

Author SHA1 Message Date
Diego Biurrun
d3f751e603 Add some missing mathematics.h #includes for av_rescale(). 2011-07-05 20:16:38 +02:00
Michael Niedermayer
976a8b2179 Merge remote-tracking branch 'qatar/master'
* qatar/master: (40 commits)
  H.264: template left MB handling
  H.264: faster fill_decode_caches
  H.264: faster write_back_*
  H.264: faster fill_filter_caches
  H.264: make filter_mb_fast support the case of unavailable top mb
  Do not include log.h in avutil.h
  Do not include pixfmt.h in avutil.h
  Do not include rational.h in avutil.h
  Do not include mathematics.h in avutil.h
  Do not include intfloat_readwrite.h in avutil.h
  Remove return statements following infinite loops without break
  RTSP: Doxygen comment cleanup
  doxygen: Escape '\' in Doxygen documentation.
  md5: cosmetics
  md5: use AV_WL32 to write result
  md5: add fate test
  md5: include correct headers
  md5: fix test program
  doxygen: Drop array size declarations from Doxygen parameter names.
  doxygen: Fix parameter names to match the function prototypes.
  ...

Conflicts:
	libavcodec/x86/dsputil_mmx.c
	libavformat/flvenc.c
	libavformat/oggenc.c
	libavformat/wtv.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-07-04 00:45:21 +02:00
Nicolas George
5d35b279e2 ALSA demuxer: use av_gettime and a timefilter.
The PTS for captured audio was measured using snd_pcm_htimestamp.

snd_pcm_htimestamp hangs when the input is a dsnoop plugin.

Furthermore, at some point, snd_pcm_htimestamp started returning monotonic
timestamps rather than wall clock timestamps, in most but not all
situations.
Monotonic timestamps are fine, but ffmpeg uses wall clock timestamps
everywhere else, and we have no API to inform the user which kind of
timestamps it is.

A separate snd_pcm_htimestamp is only slightly less accurate than
snd_pcm_htimestamp: the standard deviation for the difference between two
consecutive timestamps is (on my hardware):
- ~13 µs with snd_pcm_htimestamp;
- ~35 µs with av_gettime;
-  ~5 µs with av_gettime and a timefilter.
2011-07-02 10:43:38 +02:00
Nicolas George
392acaedcb ALSA: fix use of period_size.
period_size is in frames, while the demuxer assumed it was in bytes,
resulting in short reads.
2011-07-01 18:18:53 +02:00
Jonathan Baldwin
cb7e3202ec openal: prefer ISC license
Signed-off-by: Stefano Sabatini <stefano.sabatini-lala@poste.it>
2011-07-01 10:51:46 +02:00
Nicolas George
84c2d8af13 ALSA: implement get_output_timestamp. 2011-07-01 09:49:32 +02:00
Nicolas George
d1b029dec9 ALSA encoder: correctly set time_base. 2011-07-01 09:44:54 +02:00
Michael Niedermayer
bb9d5171a7 Merge remote-tracking branch 'qatar/master'
* qatar/master: (21 commits)
  swscale: Add Doxygen for hyscale_fast/hScale.
  fate: enable lavfi-pixmt tests on big endian systems
  PPC: swscale: disable altivec functions for unsupported formats
  fate: merge identical pixdesc_be/le tests
  swscale: Add Doxygen for yuv2planar*/yuv2packed* functions.
  build: call texi2pod.pl with full path instead of symlink
  build: include sub-makefiles using full path instead of symlinks
  swscale: update big endian reference values after dff5a835.
  wavpack: skip blocks with no samples
  cosmetics: remove outdated comment that is no longer true
  build: replace some addprefix/addsuffix with substitution refs
  avutil: Remove unused arbitrary precision integer code.
  configure: Drop check for availability of ten assembler operands.
  aacenc: Save channel configuration for later use.
  aacenc: Fix codebook trellising for zeroed bands.
  swscale: change prototypes of scaled YUV output functions.
  swscale: re-add support for non-native endianness.
  swscale: disentangle yuv2rgbX_c_full() into small functions.
  swscale: split yuv2packed[12X]_c() remainders into small functions.
  swscale: split yuv2packedX_altivec in smaller functions.
  ...

Conflicts:
	Makefile
	configure
	libavcodec/x86/dsputil_mmx.c
	libavfilter/Makefile
	libavformat/Makefile
	libavutil/integer.c
	libavutil/integer.h
	libswscale/swscale.c
	libswscale/swscale_internal.h
	libswscale/x86/swscale_template.c
	tests/ref/lavfi/pixdesc_le
	tests/ref/lavfi/pixfmts_scale

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-06-29 05:23:12 +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
Jonathan Baldwin
65eae2a7a2 lavdev: add openal input device 2011-06-27 15:26:14 +02:00
Reimar Döffinger
1109680434 Revert "build: Remove redundant config.mak includes from subdirectory Makefiles."
This reverts commit a6213f3dce.
2011-06-26 09:49:36 +02:00
Michael Niedermayer
4ccb7911ba Merge remote-tracking branch 'qatar/master'
* qatar/master:
  ARM: silence some annoying armcc warnings
  ffplay: Remove unused-but-set channels variable from update_sample_display().
  build: Add DEP_LIBS dependency directly to the shared library build rule.
  build: Remove multiple inclusion guards from config.mak.
  build: Remove redundant config.mak includes from subdirectory Makefiles.
  aacenc: Mark psy_3gpp_window() as av_unused.

Conflicts:
	configure

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-06-26 02:31:32 +02: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
Michael Niedermayer
686959e87e Merge remote-tracking branch 'qatar/master'
* qatar/master:
  doxygen: Consistently use '@' instead of '\' for Doxygen markup.
  Use av_printf_format to check the usage of printf style functions
  Add av_printf_format, for marking printf style format strings and their parameters
  ARM: enable thumb for Cortex-M* CPUs
  nsvdec: Propagate error values instead of returning 0 in nsv_read_header().
  build: remove SRC_PATH_BARE variable
  build: move basic rules and variables to main Makefile
  build: move special targets to end of main Makefile
  lavdev: improve feedback in case of invalid frame rate/size
  vfwcap: prefer "framerate_q" over "fps" in vfw_read_header()
  v4l2: prefer "framerate_q" over "fps" in v4l2_set_parameters()
  fbdev: prefer "framerate_q" over "fps" in device context
  bktr: prefer "framerate" over "fps" for grab_read_header()
  ALSA: implement channel layout for playback.
  alsa: support unsigned variants of already supported signed formats.
  alsa: add support for more formats.
  ARM: allow building in Thumb2 mode

Conflicts:
	common.mak
	doc/APIchanges
	libavcodec/vdpau.h
	libavdevice/alsa-audio-common.c
	libavdevice/fbdev.c
	libavdevice/libdc1394.c
	libavutil/avutil.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-06-24 03:07:04 +02:00
Anton Khirnov
ffc6c8a430 Support u8, s8, alaw and mulaw channel reordering in alsa. 2011-06-23 16:50:28 +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
Stefano Sabatini
3251af9037 v4l2: set default standard to NULL
It was errouneously changed to "NTSC" by the recent merge commit.
2011-06-07 13:37:55 +02:00
Michael Niedermayer
f9569249c2 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  Remove some unused scripts from tools/.
  Add x86 assembly for some 10-bit H.264 intra predict functions.
  v4l2: do not force NTSC as standard
  Skip tableprint.h during 'make checkheaders'.
  Remove unnecessary LIBAVFORMAT_BUILD #ifdef.
  Drop explicit filenames from @file Doxygen tags.
  Skip generated table headers during 'make checkheaders'.
  lavf,lavc: free avoptions in a generic way.
  AVOptions: add av_opt_free convenience function.
  tableprint: Restore mistakenly deleted common.h #include for FF_ARRAY_ELEMS.
  tiff: print log in case of unknown / unsupported tag.
  tiff: fix linesize for mono-white/black formats.
  Fix build of eval-test program
  configure: Document --enable-vaapi
  ac3enc: extract all exponents for the frame at once

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-06-06 03:33:58 +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
Stefano Sabatini
e844abc498 sdl: align option fields after last commit 2011-06-05 13:55:02 +02:00
Stefano Sabatini
0d0fdb0ad5 sdl: use the filename for defining the window title, if not specified
This allows a more efficient use of the commandline.
2011-06-05 13:17:38 +02:00
Michael Niedermayer
46eb300d01 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  ARM: remove MULL inline asm
  mathops: use MUL64 macro where it forms part of other ops
  tty: factorise returning error codes.
  rawdec: add framerate private option.
  x11grab: add framerate private option.
  fbdev,v4l2: remove some forgotten uses of AVFormatParameters.time_base.
  bktr: don't error when AVFormatParameters.time_base isn't set.
  cmdutils: add missing const qualifier
  Skip headers not designed to work standalone during 'make checkheaders'.
  Add missing #includes to make headers self-contained.
  musepack: remove unnecessary #include from mpcdata.h
  musepack: remove extraneous mpcdata.h inclusions
  Fix error check in av_file_map()

Conflicts:
	cmdutils.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-06-05 03:00:31 +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
Michael Niedermayer
87f40364d1 Merge remote-tracking branch 'qatar/master'
* qatar/master: (21 commits)
  build: simplify commands for clean target
  swscale: split swscale.c in unscaled and generic conversion routines.
  swscale: cosmetics.
  swscale: integrate (literally) swscale_template.c in swscale.c.
  swscale: split out x86/swscale_template.c from swscale.c.
  swscale: enable hScale_altivec_real.
  swscale: split out ppc _template.c files from main swscale.c.
  swscale: remove indirections in ppc/swscale_template.c.
  swscale: split out unscaled altivec YUV converters in their own file.
  mpegvideoenc: fix multislice fate tests with threading disabled.
  mpegts: Wrap #ifdef DEBUG and av_hex_dump_log() combination in a macro.
  build: Simplify texi2html invocation through the --output option.
  Mark some variables with av_unused
  Replace avcodec_get_pix_fmt_name() by av_get_pix_fmt_name().
  svq3: Check negative mb_type to fix potential crash.
  svq3: Move svq3-specific fields to their own context.
  rawdec: initialize return value to 0.
  Remove unused get_psnr() prototype
  rawdec: don't leak option strings.
  bktr: get default framerate from video standard.
  ...

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-06-04 06:35:17 +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
Michael Niedermayer
99eb31e263 Merge remote-tracking branch 'qatar/master'
* qatar/master: (25 commits)
  Replace custom DEBUG preprocessor trickery by the standard one.
  vorbis: Remove non-compiling debug statement.
  vorbis: Remove pointless DEBUG #ifdef around debug output macros.
  cook: Remove non-compiling debug output.
  Remove pointless #ifdefs around function declarations in a header.
  Replace #ifdef + av_log() combinations by av_dlog().
  Replace custom debug output functions by av_dlog().
  cook: Remove unused debug functions.
  Remove stray extra arguments from av_dlog() invocations.
  targa: fix big-endian build
  v4l2: remove one forgotten use of AVFormatParameters.pix_fmt.
  vfwcap: add a framerate private option.
  v4l2: add a framerate private option.
  libdc1394: add a framerate private option.
  fbdev: add a framerate private option.
  bktr: add a framerate private option.
  oma: check avio_read() return value
  nutdec: remove unused variable
  Remove unused variables
  swscale: allocate larger buffer to handle altivec overreads.
  ...

Conflicts:
	ffmpeg.c
	libavcodec/dca.c
	libavcodec/dirac.c
	libavcodec/error_resilience.c
	libavcodec/h264.c
	libavcodec/mpeg12.c
	libavcodec/mpeg4videodec.c
	libavcodec/mpegvideo.c
	libavcodec/mpegvideo_enc.c
	libavcodec/pthread.c
	libavcodec/rv10.c
	libavcodec/s302m.c
	libavcodec/shorten.c
	libavcodec/truemotion2.c
	libavcodec/utils.c
	libavdevice/dv1394.c
	libavdevice/fbdev.c
	libavdevice/libdc1394.c
	libavdevice/v4l2.c
	libavformat/4xm.c
	libavformat/apetag.c
	libavformat/asfdec.c
	libavformat/avidec.c
	libavformat/mmf.c
	libavformat/mpeg.c
	libavformat/mpegenc.c
	libavformat/mpegts.c
	libavformat/oggdec.c
	libavformat/oggparseogm.c
	libavformat/rl2.c
	libavformat/rmdec.c
	libavformat/rpl.c
	libavformat/rtpdec_latm.c
	libavformat/sauce.c
	libavformat/sol.c
	libswscale/utils.c
	tests/ref/vsynth1/error
	tests/ref/vsynth2/error

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-06-03 05:19:30 +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
Stefano Sabatini
7533a727f9 v4l2: rewrite code iterating the supported standards
Simplify/clarify the code logic and error reporting.
2011-05-30 09:08:42 +02:00
Stefano Sabatini
2d48515eb7 v4l2: perform minor style fixes 2011-05-30 09:08:42 +02:00
Stefano Sabatini
7b017086d4 v4l2: replace memset() with explicit struct initialization 2011-05-30 09:08:42 +02:00
Michael Niedermayer
5a35cef4b1 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  ARM: enable UAL syntax in asm.S
  v4l2: don't leak video standard string on error.
  swscale: Remove disabled code.
  avfilter: Surround function only used in debug mode by appropriate #ifdef.
  vf_crop: Replace #ifdef DEBUG + av_log() by av_dlog().
  build: remove BUILD_ROOT variable
  vp8: use av_clip_uintp2() where possible

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-30 01:29:11 +02:00
Anton Khirnov
7a70e01b26 v4l2: don't leak video standard string on error. 2011-05-29 15:10:35 +02:00
Michael Niedermayer
b8a43bc1b5 Merge remote-tracking branch 'qatar/master' into master
* qatar/master: (27 commits)
  ac3enc: fix LOCAL_ALIGNED usage in count_mantissa_bits()
  ac3dsp: do not use the ff_* prefix when referencing ff_ac3_bap_bits.
  ac3dsp: fix loop condition in ac3_update_bap_counts_c()
  ARM: unbreak build
  ac3enc: modify mantissa bit counting to keep bap counts for all values of bap instead of just 0 to 4.
  ac3enc: split mantissa bit counting into a separate function.
  ac3enc: store per-block/channel bap pointers by reference block in a 2D array rather than in the AC3Block struct.
  get_bits: add av_unused tag to cache variable
  sws: replace all long with int.
  ARM: aacdec: fix constraints on inline asm
  ARM: remove unnecessary volatile from inline asm
  ARM: add "cc" clobbers to inline asm where needed
  ARM: improve FASTDIV asm
  ac3enc: use LOCAL_ALIGNED macro
  APIchanges: fill in git hash for av_get_pix_fmt_name (0420bd7).
  lavu: add av_get_pix_fmt_name() convenience function
  cmdutils: remove OPT_FUNC2
  swscale: fix crash in bilinear scaling.
  vpxenc: add VP8E_SET_STATIC_THRESHOLD mapping
  webm: support stereo videos in matroska/webm muxer
  ...

Conflicts:
	Changelog
	cmdutils.c
	cmdutils.h
	doc/APIchanges
	doc/muxers.texi
	ffmpeg.c
	ffplay.c
	libavcodec/ac3enc.c
	libavcodec/ac3enc_float.c
	libavcodec/avcodec.h
	libavcodec/get_bits.h
	libavcodec/libvpxenc.c
	libavcodec/version.h
	libavdevice/libdc1394.c
	libavformat/matroskaenc.c
	libavutil/avutil.h
	libswscale/rgb2rgb.c
	libswscale/swscale.c
	libswscale/swscale_template.c
	libswscale/x86/swscale_template.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-29 03:34:35 +02:00
Stefano Sabatini
895e4de8d5 v4l2: create file @doxy from text in the copyright header 2011-05-28 21:18:09 +02:00
Stefano Sabatini
72c60f3ecd v4l2: remove pointless empty lines 2011-05-28 21:18:09 +02:00
Stefano Sabatini
af344a69f3 v4l2: set default standard to NULL
Avoid a failure with the default value of "NTSC". Not all drivers
support a standard.
2011-05-28 21:18:01 +02:00
Stefano Sabatini
f8f3f6c40b v4l2: use OFFSET macro when setting options
Improve readability.
2011-05-28 21:16:47 +02:00
Stefano Sabatini
b2a6f25c67 lavdev: add SDL output device 2011-05-28 19:17:14 +02:00
Michael Niedermayer
8381ab1437 Merge remote-tracking branch 'qatar/master'
* qatar/master: (29 commits)
  ARM: disable ff_vector_fmul_vfp on VFPv3 systems
  ARM: check for VFPv3
  swscale: Remove unused variables in x86 code.
  doc: Drop DJGPP section, Libav now compiles out-of-the-box on FreeDOS.
  x86: Add appropriate ifdefs around certain AVX functions.
  cmdutils: use sws_freeContext() instead of av_freep().
  swscale: delay allocation of formatConvBuffer().
  swscale: fix build with --disable-swscale-alpha.
  movenc: Deprecate the global RTP hinting flag, use a private AVOption instead
  movenc: Add an AVClass for setting muxer specific options
  swscale: fix non-bitexact yuv2yuv[X2]() MMX/MMX2 functions.
  configure: report yasm/nasm presence properly
  tcp: make connect() timeout properly
  rawdec: factor video demuxer definitions into a macro.
  rtspdec: add initial_pause private option.
  lavf: deprecate AVFormatParameters.width/height.
  tty: add video_size private option.
  rawdec: add video_size private option.
  x11grab: add video_size private option.
  x11grab: factorize returning error codes.
  ...

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-27 23:48:22 +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
Martin Lambers
b8773e44d5 libdc1394: choose best video mode and rate based on camera capabilities. 2011-05-27 16:55:07 +02:00
Martin Lambers
ea7e318fb2 Remove support for libdc1394 < 2.0.
Versions >= 2.0 have been around for a very long time now.
2011-05-27 16:55:07 +02:00
Stefano Sabatini
6b899e16de lavdev: prefer the inclusion of avdevice.h over that of libavformat/avformat.h 2011-05-27 12:15:09 +02:00
Stefano Sabatini
e48993e3cf lavdev: include libavformat/avformat.h in avdevice.h
The header is always required for files which directly deal with
devices, since libavdevice uses the AVFormat* structures defined in
avformat.h.

Avoid the need to explicitely add libavformat/avformat.h.
2011-05-27 11:57:33 +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
Michael Niedermayer
027264cb82 Merge remote-tracking branch 'qatar/master'
* qatar/master: (31 commits)
  ARM: add ARMv6 optimised av_clip_uintp2
  ARM: remove volatile from asm statements in libavutil/intmath
  ARM: fix av_clipl_int32_arm()
  v4l: include avdevice.h
  ffserver: move close_connection() call to avoid a temporary string and copy.
  lavf: initialize demuxer private options.
  AVOptions: set string default values.
  lavdevice: mark v4l for removal on next major bump.
  swscale: fix compile on ppc.
  swscale: fix compile on x86-32.
  build: Remove generated .version file on distclean.
  configure: Add -D_GNU_SOURCE to CPPFLAGS on OS/2.
  doc: Drop hint at --enable-memalign-hack for MinGW, it is now autodetected.
  ffplay: Remove disabled code.
  Mark parameterless function declarations as 'void'.
  swscale: use av_clip_uint8() in yuv2yuv1_c().
  swscale: remove VOF/VOFW.
  swscale: split chroma buffers into separate U/V planes.
  swscale: replace formatConvBuffer[VOF] by allocated array.
  rgb2rgb: remove duplicate mmx/mmx2/3dnow/sse2 functions.
  ...

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-27 02:53:21 +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
Michael Niedermayer
39e4206dc6 Merge remote-tracking branch 'qatar/master'
* qatar/master: (32 commits)
  doc: create separate section for audio encoders
  swscale: Remove orphaned, commented-out function declaration.
  swscale: Eliminate rgb24toyv12_c() duplication.
  Remove h263_msmpeg4 from MpegEncContext.
  APIchanges: Fill in git hash for fps_probe_size (30315a8)
  avformat: Add fpsprobesize as an AVOption.
  avoptions: Return explicitly NAN or {0,0} if the option isn't found
  rtmp: Reindent
  rtmp: Don't try to do av_malloc(0)
  tty: replace AVFormatParameters.sample_rate abuse with a private option.
  Fix end time of last chapter in compute_chapters_end
  ffmpeg: get rid of useless AVInputStream.nb_streams.
  ffmpeg: simplify managing input files and streams
  ffmpeg: purge redundant AVInputStream.index.
  lavf: deprecate AVFormatParameters.channel.
  libdc1394: add a private option for channel.
  dv1394: add a private option for channel.
  v4l2: reindent.
  v4l2: add a private option for channel.
  lavf: deprecate AVFormatParameters.standard.
  ...

Conflicts:
	doc/APIchanges
	doc/encoders.texi
	ffmpeg.c
	libavdevice/alsa-audio.h
	libavformat/version.h
	libavutil/opt.c
	libswscale/rgb2rgb.h
	libswscale/rgb2rgb_template.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-26 03:28:22 +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
Ramiro Polla
a13fec8a9c DirectShow capture: Fix build
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-21 21:53:15 +02:00
Ramiro Polla
95eb2e3a38 DirectShow capture support
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-21 17:23:14 +02:00
Michael Niedermayer
72153419b5 Merge remote branch 'qatar/master'
* qatar/master: (33 commits)
  rtpdec_qdm2: Don't try to parse data packet if no configuration is received
  ac3enc: put the counting of stereo rematrixing bits in the same place to make the code easier to understand.
  ac3enc: clean up count_frame_bits() and count_frame_bits_fixed()
  mpegvideo: make FF_DEBUG_DCT_COEFF output coeffs via av_log() instead of just via AVFrame.
  srtdec: make sure we don't write past the end of buffer
  wmaenc: improve channel count and bitrate error handling in encode_init()
  matroskaenc: make sure we don't produce invalid file with no codec ID
  matroskadec: check that pointers were initialized before accessing them
  lavf: fix function name in compute_pkt_fields2 av_dlog message
  lavf: fix av_find_best_stream when providing a wanted stream.
  lavf: fix av_find_best_stream when decoder_ret is given and using a related stream.
  ffmpeg: factorize quality calculation
  tiff: add support for SamplesPerPixel tag in tiff_decode_tag()
  tiff: Prefer enum TiffCompr over int for TiffContext.compr.
  mov: Support edit list atom version 1.
  configure: Enable libpostproc automatically if GPL code is enabled.
  Cosmetics: fix prototypes in oggdec
  oggdec: fix memleak with continuous streams.
  matroskaenc: add missing new line in av_log() call
  dnxhdenc: add AVClass in private context.
  ...

swscale changes largely rewritten by me or replaced by baptsites due to lots of bugs in ronalds code.
Above code is also just in case its not obvios to a large extended duplicates that where cherry picked
from ffmpeg.

Conflicts:
	configure
	ffmpeg.c
	libavformat/matroskaenc.c
	libavutil/pixfmt.h
	libswscale/ppc/swscale_template.c
	libswscale/swscale.c
	libswscale/swscale_template.c
	libswscale/utils.c
	libswscale/x86/swscale_template.c
	tests/fate/h264.mak
	tests/ref/lavfi/pixdesc_le
	tests/ref/lavfi/pixfmts_copy_le
	tests/ref/lavfi/pixfmts_null_le
	tests/ref/lavfi/pixfmts_scale_le
	tests/ref/lavfi/pixfmts_vflip_le

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-13 04:40:40 +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
Reimar Döffinger
148ffcd2ce Make DV (sub) demuxer set proper pkt->pos values.
This makes the avi demuxer create packets with proper pos values
with the file from ticket #140.
2011-05-02 18:38:01 +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
Michael Niedermayer
8772156be0 Merge remote branch 'qatar/master'
* qatar/master:
  APIChanges: document git revision for CODEC_CAP_SLICE_THREADS addition.
  Introduce slice threads flag.
  FATE: allow forcing thread-type when doing threaded fate runs.
  Use av_log_ask_for_sample() where appropriate.
  error: sort, pack, and align error code and string definitions
  The stabilization period after version bumps should be one month, not one week.
  applehttp: Expose the stream bitrate via metadata
  doc: Add some initial docs on the applehttp demuxer
  Provide a fallback version of the libm function trunc
  libavdevice: Define _XOPEN_SOURCE for usleep
  lavc: provide deprecated avcodec_thread_init until next major version
  lavc: provide the opt.h header until the next bump
  error: change AVERROR_EOF value
  error: remove AVERROR_NUMEXPECTED
  error: add error code AVERROR_OPTION_NOT_FOUND, and use it in opt.c

Conflicts:
	libavcodec/h264.c
	libavutil/error.c
	libavutil/error.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-22 03:54:30 +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
Michael Niedermayer
efb5fa79f5 Merge remote branch 'qatar/master'
* qatar/master: (37 commits)
  In avcodec_open(), set return code to an error value only when an error occurs instead of unconditionally at the start of the function.
  lavc: remove reference to opt.h from Makefile.
  prefer avio_check() over url_exist()
  avio: remove AVIO_* access symbols in favor of new AVIO_FLAG_* symbols
  lavu: remove misc disabled cruft
  lavu: remove FF_API_OLD_IMAGE_NAMES cruft
NOT PULLED  lavu: remove FF_API_OLD_EVAL_NAMES cruft
  lavc: remove misc disabled cruft.
  lavc: remove the FF_API_INOFFICIAL cruft.
  lavc: remove the FF_API_SET_STRING_OLD cruft.
  lavc: remove the FF_API_USE_LPC cruft.
  lavc: remove the FF_API_SUBTITLE_OLD cruft.
  lavc: remove the FF_API_VIDEO_OLD cruft.
  lavc: remove the FF_API_AUDIO_OLD cruft.
  lavc: remove the FF_API_OPT_SHOW cruft.
  lavc: remove the FF_API_MM_FLAGS cruft.
  lavf: remove misc disabled cruft.
  lavf: remove FF_API_INDEX_BUILT cruft
  lavf: remove FF_API_URL_CLASS cruft.
  lavf: remove FF_API_SYMVER cruft
  ...

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-20 04:48:23 +02: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
Carl Eugen Hoyos
f4bc923ec1 Allow to print wider unsupported channel layouts. 2011-04-15 11:50:28 +02:00
Carl Eugen Hoyos
b8a4444266 AV_CH_LAYOUT_2_2 does not need channel reordering for alsa output. 2011-04-14 04:16:53 +02:00
Carl Eugen Hoyos
19de9d5646 Cosmetics: Fix indentation and move one line. 2011-04-14 03:33:10 +02:00
Carl Eugen Hoyos
460acdf059 Support alsa channel reordering for float. 2011-04-14 03:33:10 +02:00
Carl Eugen Hoyos
e2049edb4e Add forgotten line to silence a warning for int32.
AV_CH_LAYOUT_QUAD is the only (multi-) channel layout that has the
same channel ordering for FFmpeg and alsa.
2011-04-14 03:33:10 +02:00
Carl Eugen Hoyos
47c0c8ca9d Also support alsa channel reordering for u16 and u32 formats. 2011-04-14 03:33:10 +02:00
Carl Eugen Hoyos
1171d45f6c Rename the s16 and s32 alsa reorder functions as int16 and int32.
The functions will also be used for unsigned formats.
2011-04-14 03:33:10 +02:00
Carl Eugen Hoyos
0ae2a0366f Support unsigned variants of already supported signed formats in alsa. 2011-04-14 03:33:10 +02:00
Carl Eugen Hoyos
075a55603f Support a-law and mu-law output in alsa. 2011-04-14 03:33:10 +02:00
Sven C. Dack
44a8b0ddd9 Cosmetics: Rename variable param as the more appropriate dpyname. 2011-04-12 09:33:19 +02:00
Sven C. Dack
9af2097120 Cosmetics: Fix white-space in av_log() message. 2011-04-12 09:27:23 +02:00
Carl Eugen Hoyos
ff2614ee4c Fix output of AV_CH_LAYOUT_5POINT0 via alsa by reordering channels. 2011-04-12 09:17:26 +02:00
Carl Eugen Hoyos
71306c5d21 Support CODEC_ID_PCM_F64* output via alsa (stereo only). 2011-04-12 09:11:56 +02:00
Carl Eugen Hoyos
5778466e92 Support CODEC_ID_PCM_S24* output via alsa (stereo only). 2011-04-12 08:56:29 +02:00
Michael Niedermayer
2e92a34cde Revert "fbdev: simplify logic in fbdev_read_packet()"
This change is buggy.

This reverts commit d46c9f83cf.
2011-04-11 00:37:52 +02:00
Stefano Sabatini
d46c9f83cf fbdev: simplify logic in fbdev_read_packet()
Signed-off-by: Stefano Sabatini <stefano.sabatini-lala@poste.it>
2011-04-11 00:14:20 +02:00
Carl Eugen Hoyos
c55efca05b x11: fix memleak
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-04-10 03:49:24 +02:00
Carl Eugen Hoyos
2ed05f657f Add support for pcm_f32* to alsa. 2011-04-05 16:12:41 +02:00
Carl Eugen Hoyos
4d1d6f7a3c Support s32 output via alsa audio device. 2011-04-05 11:03:19 +02:00
Carl Eugen Hoyos
efec2d7b35 Template alsa reordering functions. 2011-04-05 11:03:19 +02:00
Nicolas George
1e96d4c71e ALSA: fix a stupid bad use of av_freep.
It caused a segfault when channel reordering was in use and the last chunk
of data was not silent.
Spotted and diagnosed by Carl Eugen Hoyos.
2011-03-31 18:49:07 +02:00
Sven C. Dack
39530272c5 Remove a memory allocation and the associated memcpy. 2011-03-30 17:02:29 +02:00
Carl Eugen Hoyos
3efaa24f85 Also use alsa_reorder_s16_out_51() for AV_CH_LAYOUT_5POINT1. 2011-03-30 12:36:52 +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
Reimar Döffinger
1862778732 sndio: allow any endianness when recording
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.
It is possible that 8-bit recording would not have worked at all on
some systems without that change.
2011-03-29 20:21:47 +02:00
Reimar Döffinger
e76c0c6a00 Simplify: Use FFMIN. 2011-03-29 20:18:45 +02:00
Michael Niedermayer
59bf303d68 Merge remote-tracking branch 'newdev/master'
* newdev/master:
  ac3enc: avoid memcpy() of exponents and baps in EXP_REUSE case by using exponent reference blocks.
  Chronomaster DFA decoder
DUPLICATE:  framebuffer device demuxer
NOT MERGED: cosmetics: fix dashed line length after 070c5d0
  http: header field names are case insensitive

Conflicts:
	LICENSE
	README
	doc/indevs.texi
	libavdevice/fbdev.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-03-29 02:46:11 +02:00
Stefano Sabatini
e93d97156d sndio: prefer "FFmpeg" over "Libav" in the license header 2011-03-28 22:50:09 +02:00
Stefano Sabatini
c6f951442e framebuffer device demuxer
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-03-28 16:49:22 +02:00
Michael Niedermayer
25d8099beb Merge remote-tracking branch 'newdev/master'
* newdev/master:
  ac3enc: Add codec-specific options for writing AC-3 metadata.
NOT MERGED:  Remove arrozcru URL from documentation
  sndio support for playback and record

Conflicts:
	doc/faq.texi
	doc/general.texi

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-03-28 01:50:36 +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
Nicolas George
813dbb4442 ALSA: implement channel layout for playback.
Currently, only S16 quad, 5.1 and 7.1 are implemented.
Implementing support for other formats/layouts and capture should be
straightforward.

7.1 support by Carl Eugen Hoyos.
2011-03-26 16:50:09 +01:00
Mans Rullgard
2912e87a6c Replace FFmpeg with Libav in licence headers
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-03-19 13:33:20 +00:00
Michael Niedermayer
e528cdac8a Revert "replace FFMPEG with LIBAV in FFMPEG_CONFIGURATION"
This reverts commit 29ba091136.
2011-03-17 17:26:45 +01:00
Michael Niedermayer
0cb88628fb Revert "use LIBAV_LICENSE and LIBAV_VERSION instead of FFMPEG_*"
This reverts commit a03be6e1ba.
2011-03-17 17:26:45 +01:00
Michael Niedermayer
0fecf2642b Merge remote-tracking branch 'newdev/master'
Conflicts:
	Changelog
	doc/APIchanges
	doc/optimization.txt
	libavformat/avio.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-03-17 17:22:52 +01:00
Janne Grunau
a03be6e1ba use LIBAV_LICENSE and LIBAV_VERSION instead of FFMPEG_* 2011-03-16 21:54:39 +01:00
Janne Grunau
29ba091136 replace FFMPEG with LIBAV in FFMPEG_CONFIGURATION
also update the multiple inclusion guards in config.h|mak
2011-03-16 21:54:39 +01:00
Stefano Sabatini
478607668c fbdev: fix check on nanosleep return vale
In fbdev_read_packet(): nanosleep returns -1 in case of errors,
the EINTR check has to be done on errno.

Spotted by Nicolas.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-03-13 01:41:46 +01:00
Stefano Sabatini
1a204f0760 framebuffer device demuxer 2011-03-08 17:33:23 +01:00
Reinhard Tartler
7ffe76e540 Merge libavcore into libavutil
Done to keep ABI compatible. Otherwise this is just silly
2011-02-16 23:00:30 +01:00
Reinhard Tartler
737eb5976f Merge libavcore into libavutil
It is pretty hopeless that other considerable projects will adopt
libavutil alone in other projects. Projects that need small footprint
are better off with more specialized libraries such as gnulib or rather
just copy the necessary parts that they need. With this in mind, nobody
is helped by having libavutil and libavcore split. In order to ease
maintenance inside and around FFmpeg and to reduce confusion where to
put common code, avcore's functionality is merged (back) to avutil.

Signed-off-by: Reinhard Tartler <siretart@tauware.de>
2011-02-15 16:18:21 +01:00
Diego Elio Pettenò
66355be3c3 Prefix all _demuxer, _muxer, _protocol from libavformat and libavdevice.
This also lists the objects from those two libraries as internal (by adding
the ff_ prefix) so that they can then be hidden via linker scripts.
(cherry picked from commit c6610a216e)
2011-01-28 03:15:34 +01:00
Diego Elio Pettenò
c6610a216e Prefix all _demuxer, _muxer, _protocol from libavformat and libavdevice.
This also lists the objects from those two libraries as internal (by adding
the ff_ prefix) so that they can then be hidden via linker scripts.
2011-01-26 22:10:09 +00:00
Janne Grunau
2c3589bfda consolidate .gitignore patters into a single file
Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
2011-01-18 21:32:05 +01:00
Janne Grunau
348b8218f7 convert svn:ignore properties to .gitignore files
Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
2011-01-17 15:50:14 +01:00
Stefano Sabatini
5d3d238f82 Factorize common code in v4l2_set_parameters().
Originally committed as revision 26225 to svn://svn.ffmpeg.org/ffmpeg/trunk
2011-01-05 14:15:13 +00:00