1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2024-12-07 11:13:41 +02:00
Commit Graph

122 Commits

Author SHA1 Message Date
Calvin Walton
08909fb56b Add Win32 GDI-based screen grabbing
Based on original code by Christophe Gisquet in 2010, updated to work
with current ffmpeg APIs.

Supports grabbing a single window or an area of the screen, including
support for multiple monitors (Windows does funky stuff with negative
coordinates here).

I've moved most of the configuration to AVOptions; the input file name
is now only the string "desktop", or "title=<windowname>" to select a
single window. The AVOptions are the same as x11grab where possible.

Code has been added to support a "show_region" mode, like x11grab, which
will draw a rectangle on the screen around the area being captured.

Instead of duplicating code for paletted image handling, I make use of
the GDI API's ability to output DIB (BMP) images, which can be run
through ffmpeg's existing BMP decoder.

Signed-off-by: Calvin Walton <calvin.walton@kepstin.ca>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-04-03 00:41:45 +02:00
Thilo Borgmann
4654774aaf lavd/qtkit: Support choosing the input device by index or by name.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-04-02 22:40:32 +02:00
Thilo Borgmann
6d9bdd9d8b doc/indevs: Fix example for QTKit usage.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-03-30 21:29:25 +02:00
Vadim Kalinsky
234f0bcb0c lavd: Add QTKit input device.
Signed-off-by: Thilo Borgmann <thilo.borgmann@mail.de>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-03-30 20:45:07 +02:00
Andreas Cadhalpun
9898bd9a82 Fix spelling errors in texi files: accomodate -> accommodate allows to -> allows one to choosen -> chosen compability -> compatibility explictly -> explicitly overriden -> overridden specifed -> specified Trasmission -> Transmission
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-03-06 21:12:40 +01:00
Lukasz Marek
fb74c7e044 lavd/pulse_audio_dec: apply cosmetic changes
In particular, fix punctuation in docs and make option help messages
grammatically consistent.

Signed-off-by: Lukasz Marek <lukasz.m.luki@gmail.com>
Signed-off-by: Stefano Sabatini <stefasab@gmail.com>
2013-10-18 23:26:55 +02:00
Lou Logan
a06dcde507 doc: make x11grab examples consistent with option names
Change -r to -framerate, but either will work.
Change -s to -video_size, but either will work.

Signed-off-by: Stefano Sabatini <stefasab@gmail.com>
2013-10-14 23:08:52 +02:00
Lukasz Marek
c21be5845f doc/indevs: make pulse dev formatting consistent with other devices
Signed-off-by: Lukasz Marek <lukasz.m.luki@gmail.com>
Signed-off-by: Stefano Sabatini <stefasab@gmail.com>
2013-10-07 12:01:51 +02:00
Clément Bœsch
165bc9caa2 v4l2: make possible to disable libv4l2 at runtime.
Also disable it by default since it looks currently buggy. The
usefulness of such library is mostly limited to backward compatibility
with very old devices.
2013-05-22 19:49:29 +02:00
Derek Buitenhuis
fe64b88950 doc: Consistently use 'frame rate' everywhere
We used to use 'framerate' or 'frame rate' randomly.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2013-03-31 18:22:08 -04:00
Giorgio Vazzana
785b849f1c lavd/v4l2: honor previously selected input channel
An input channel could have been previously set with another application, like
v4l2-ctl, so if no input channel is specified use the previosly selected one.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-23 13:43:56 +01:00
Vicente Jimenez Aguilar
202b5f6deb doc: Fix some obsolete references to av* tools as ff* tools
Signed-off-by: Diego Biurrun <diego@biurrun.de>

CC: libav-stable@libav.org
2013-02-18 13:04:29 +01:00
Stefano Sabatini
6d9c21dc0e doc/indevs: add missing final dot in v4l2 option value description
Fix inconsistency.
2013-02-02 15:32:34 +01:00
Stefano Sabatini
b999774f0b doc/indevs: document v4l2 options
Reviewed-By: Giorgio Vazzana <mywing81@gmail.com>
2013-01-31 22:13:08 +01:00
Stefano Sabatini
349e7f423f doc/indevs: itemize examples for the v4l2 device 2013-01-31 22:13:08 +01:00
Stefano Sabatini
a842dc632e doc/indevs: apply misc fixes to the v4l2 documentation
Reviewed-by: Giorgio Vazzana <mywing81@gmail.com>
2013-01-31 15:29:53 +01:00
Giorgio Vazzana
ff23b76899 lavd/v4l2: add list_standards option
Since the user is expected to choose the standard by name (with -standard
option), add the possibility to list all the supported standards.

Signed-off-by: Stefano Sabatini <stefasab@gmail.com>
2013-01-31 12:38:03 +01:00
Diego Biurrun
511cf612ac miscellaneous typo fixes 2012-12-21 00:18:34 +01:00
Stefano Sabatini
85e6f6d9c1 doc/indevs: update syntax for the color filter in the lavfi device examples 2012-12-18 00:06:35 +01:00
Georg Lippitsch
15b02ddee0 Update iec61883 to handle multiple devices, and allow
selection of DV device by its GUID
2012-11-13 19:44:21 +01:00
Stefano Sabatini
8b03cd3cd7 lavd/lavfi: add graph_file option
Allow to specify a filename where to put the filtergraph description.

This is useful to override limitations or glitches of particular shell
environments, and allows a level of indirection for specifying
filtergraphs.
2012-10-23 22:08:55 +02:00
Ramiro Polla
37a0db50db lavd/dshow: support video codec and pixel format selection
Signed-off-by: Stefano Sabatini <stefasab@gmail.com>
2012-09-07 09:59:12 +02:00
Ramiro Polla
ad7fae4ee1 dshow: allow user to specify audio buffer size
Based on patch by rogerdpack <rogerpack2005@gmail.com>

Tested-by: Roger Pack <rogerdpack2@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-29 18:58:20 +02:00
Stefano Sabatini
be2b885738 doc/indevs: document missing options in x11grab section
Add documentation for options draw_mouse, framerate, and video_size.

In particular, fix trac ticket #1314.
2012-08-08 23:43:37 +02:00
Stefano Sabatini
f09a06908e doc/indevs: use separate @example blocks for separate examples
Improve rendering.
2012-08-08 23:43:37 +02:00
Stefano Sabatini
083754f2be doc/indevs: rework options description in the x11 grab section
Create a dedicated options subchapter, rather than a subchapter for each
option.

This is more consistent with the rest of the docs. Also apply misc minor
fixes for improving rendering.
2012-08-08 23:43:36 +02:00
Georg Lippitsch
60270eb482 doc/indevs/iec61883: document requirements for iec61883 device
Signed-off-by: Stefano Sabatini <stefasab@gmail.com>
2012-07-06 11:47:50 +02:00
Georg Lippitsch
325fb246f2 FireWire DV/HDV input device using libiec61883
Signed-off-by: Stefano Sabatini <stefasab@gmail.com>
2012-07-05 13:02:49 +02:00
Nicolas George
12292f35a3 v4l2: allow to convert monotonic timestamps. 2012-04-04 15:22:44 +02:00
Compn
ab31db0610 doc: clarify dshow input requirements 2012-03-26 22:18:48 -04:00
Michael Niedermayer
bf807a5e87 Merge remote-tracking branch 'qatar/master'
* qatar/master: (29 commits)
  sbrdsp.asm: convert all instructions to float/SSE ones.
  dv: cosmetics.
  dv: check buffer size before reading profile.
  Revert "AAC SBR: group some writes."
  udp: Print an error message if bind fails
  cook: extend channel uncoupling tables so the full bit range is covered.
  roqvideo: cosmetics.
  roqvideo: convert to bytestream2 API.
  dca: don't use av_clip_uintp2().
  wmall: fix build with -DDEBUG enabled.
  smc: port to bytestream2 API.
  AAC SBR: group some writes.
  dsputil: remove shift parameter from scalarproduct_int16
  SBR DSP: unroll sum_square
  rv34: remove dead code in intra availability check
  rv34: clean a bit availability checks.
  v4l2: update documentation
  tgq: convert to bytestream2 API.
  parser: remove forward declaration of MpegEncContext
  dca: prevent accessing static arrays with invalid indexes.
  ...

Conflicts:
	doc/indevs.texi
	libavcodec/Makefile
	libavcodec/dca.c
	libavcodec/dvdata.c
	libavcodec/eatgq.c
	libavcodec/mmvideo.c
	libavcodec/roqvideodec.c
	libavcodec/smc.c
	libswscale/output.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-03-08 02:51:45 +01:00
Luca Barbato
af49e1766b v4l2: update documentation
Update the examples and remove stale information.
Video4linux support had been already removed.
2012-03-07 10:03:10 -08:00
Michael Niedermayer
7f83db3124 Merge remote-tracking branch 'qatar/master'
* qatar/master: (46 commits)
  mtv: Make sure audio_subsegments is not 0
  v4l2: use V4L2_FMT_FLAG_EMULATED only if it is defined
  avconv: add symbolic names for -vsync parameters
  flvdec: Fix compiler warning for uninitialized variables
  rtsp: Fix compiler warning for uninitialized variable
  ulti: convert to new bytestream API.
  swscale: Use standard multiple inclusion guards in ppc/ header files.
  Place some START_TIMER invocations in separate blocks.
  v4l2: list available formats
  v4l2: set the proper codec_tag
  v4l2: refactor device_open
  v4l2: simplify away io_method
  v4l2: cosmetics
  v4l2: uniform and format options
  v4l2: do not force interlaced mode
  avio: exit early in fill_buffer without read_packet
  vc1dec: fix invalid memory access for small video dimensions
  rv34: fix invalid memory access for small video dimensions
  rv34: joint coefficient decoding and dequantization
  avplay: Don't call avio_set_interrupt_cb(NULL)
  ...

Conflicts:
	Changelog
	avconv.c
	doc/APIchanges
	doc/indevs.texi
	libavcodec/adxenc.c
	libavcodec/dnxhdenc.c
	libavcodec/h264.c
	libavdevice/v4l2.c
	libavformat/flvdec.c
	libavformat/mtv.c
	libswscale/utils.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-05 02:03:12 +01:00
Clément Bœsch
dc7ad85c40 doc: use @command{} for commands. 2012-01-04 13:21:08 +01:00
Luca Barbato
a6a4793d04 v4l2: list available formats
Make use of the experimental framesize enumeration ioctl if available.
2012-01-04 13:10:20 +01:00
Michael Niedermayer
c59b80c8d3 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  isom: sort and pretty-print codec_movaudio_tags[]
  isom: remove pointless comments in codec_movaudio_tags[]
  isom: remove commented-out tag for vorbis
  movenc: write 'chan' tag for AC-3 in MOV
  mov: add support for reading and writing the 'chan' tag
  audioconvert: add some additional channel and channel layout macros
  audioconvert: change 7.1 "wide" layout to use side surround channels
  movenc: simplify handling of pcm vs. adpcm vs. other compressed codecs
  doc: update documentation to use avconv
  doc: update demuxers section
  doc: extend external library coverage
  doc: split platform specific information
  doc: port the git-howto to texinfo
  doc: provide fallback css and customize @float
  doc: document fate in a texinfo
  doxy: change hue value to match our green

Conflicts:
	doc/fate.txt
	doc/ffserver.texi
	doc/general.texi
	doc/muxers.texi
	doc/protocols.texi
	doc/t2h.init
	libavformat/isom.c
	libavformat/mov.c
	libavutil/avutil.h
	tests/ref/acodec/pcm_s16be
	tests/ref/acodec/pcm_s24be
	tests/ref/acodec/pcm_s32be
	tests/ref/acodec/pcm_s8
	tests/ref/lavf/mov

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-10 02:01:03 +01:00
Luca Barbato
d5837d7fe9 doc: update documentation to use avconv 2011-12-09 18:26:31 +01:00
Michael Niedermayer
a4bf093e7b indevs.texi: fix application name to match the code
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-08 20:21:28 +01:00
root
551b9eb9ef docs: Spelling fixes to 9 texi files from /doc
credits to: Violet Lin (from Google Code-in)

Signed-off-by: burek <burek021@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-29 18:26:06 +01:00
Michael Niedermayer
5f268ca5c5 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  lavf: pass options from AVFormatContext to avio.
  avformat: Use avio_open2, pass the AVFormatContext interrupt_callback onwards
  avio: add avio_open2, taking an interrupt callback and options
  avio: add support for passing options to protocols.
  avio: add and use ffurl_protocol_next().
  avformat: Pass the interrupt callback on to chained muxers/demuxers
  avio: Add an AVIOInterruptCB parameter to ffurl_open/ffurl_alloc
  avformat: Use ff_check_interrupt
  avio: Add an internal utility function for checking the new interrupt callback
  avio: Add AVIOInterruptCB
  texi2html: remove stray \n
  doc: prettyfy the texi2html documentation
  swscale: handle unaligned buffers in yuv2plane1

Conflicts:
	libavformat/avformat.h
	libavformat/avio.c
	libavformat/mov.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-14 00:33:39 +01:00
Clément Bœsch
4fa6e9d0b4 doc: replace an "avconv" reference with "ffmpeg" in indevs. 2011-11-13 23:35:57 +01:00
Ramiro Polla
2f9b955918 dshow: support choosing between devices with same name
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-06 01:19:56 +01:00
Clément Bœsch
a010b56ebc doc: fix typo in previous commit. 2011-11-05 15:30:46 +01:00
Clément Bœsch
11f2a56585 doc: document v4l and v4l2 aliases. 2011-11-05 15:30:10 +01:00
Clément Bœsch
1054ab3595 v4l2: add libv4l2 support. 2011-11-05 15:19:36 +01:00
Michael Niedermayer
8d4e44993a Merge remote-tracking branch 'qatar/master'
* qatar/master:
  lavc: remove "legacy" mpegvideo decoder.
  iv8: assemble packets to return complete frames
  pulse: documentation
  pulse: introduce pulseaudio input
  remove the zork pcm seek test

Conflicts:
	configure
	libavdevice/Makefile
	libavdevice/alldevices.c
	libavdevice/avdevice.h
	libavdevice/pulse.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-28 03:05:16 +02:00
Luca Barbato
c4b97fbdfa pulse: documentation
Specify avoptions and how to use pactl to list devices.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2011-10-26 16:39:33 -07:00
Lou Logan
3ac1ade118 docs: remove reference to enable-libavfilter
This is no longer a valid configure option.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-24 17:18:17 +02:00
Stefano Sabatini
4893c204c8 lavdev/lavfi: add audio support 2011-09-16 21:22:05 +02:00
Ramiro Polla
c7807eeb78 doc: add documentation for dshow indev
Signed-off-by: Stefano Sabatini <stefasab@gmail.com>
2011-09-16 11:16:00 +02:00
Stefano Sabatini
4ec8685435 indevs.texi: fix typo (builf -> build) 2011-08-11 17:32:54 +02:00
Stefano Sabatini
214357341a lavdev: add libavfilter virtual input device
This input device is to be considered still experimental, only video
output is supported.
2011-08-11 17:20:17 +02:00
Anton Khirnov
266463daff Rename ffplay to avplay. 2011-08-09 19:56:21 +02:00
Michael Niedermayer
335bbe424f Merge remote-tracking branch 'qatar/master'
* qatar/master:
  lavc: Deprecate unused FF_ER_VERY_AGGRESSIVE
  x11grab: add show_region AVOption.
  x11grab: add follow_mouse AVOption.
  Do not convert RGB buffer at once when stride does not fit exact samples.

Conflicts:
	libswscale/swscale_unscaled.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-01 00:35:57 +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
Jonathan Baldwin
65eae2a7a2 lavdev: add openal input device 2011-06-27 15:26:14 +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
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
Michael Niedermayer
a6be21d3ba Revert "replace FFmpeg with Libav in doc/"
This reverts commit f8a45fa1b1.

Conflicts:

	doc/optimization.txt
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
f8a45fa1b1 replace FFmpeg with Libav in doc/
unless it stands for ffmpeg the program or is historic
2011-03-16 22:01:01 +01:00
Stefano Sabatini
1a204f0760 framebuffer device demuxer 2011-03-08 17:33:23 +01:00
Stefano Sabatini
8621a37d9f In video4linux2, in the case the timebase value in ap is 0/0, read the
timebase value already set in the driver, and set it back in the codec
stream, rather than leaving the invalid value of 0/0.

In particular, fix ffmpeg grabbing timestamps when the timebase value
is not set through the CLI.

Originally committed as revision 26224 to svn://svn.ffmpeg.org/ffmpeg/trunk
2011-01-05 14:15:11 +00:00
Ramiro Polla
fbd4a07db1 doc: fill documentation for vfwcap
Originally committed as revision 25553 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-10-23 02:12:04 +00:00
Stefano Sabatini
52c553302a Fix VfW spelling.
Originally committed as revision 24738 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-07 21:06:43 +00:00
Stefano Sabatini
63f805fc86 Remove audio_beos entries in indevs.texi and output.devs, BeOS audio
support has been dropped.

Originally committed as revision 24725 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-06 23:15:31 +00:00
Stefano Sabatini
2f6bc4e76e Apply misc fixes spotted by Diego to indevs.texi and outdevs.texi.
Originally committed as revision 24724 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-06 23:15:27 +00:00
Stefano Sabatini
c32ccf7c43 Rename the chapter Devices -> Input Devices, as the file is about
input devices.

Originally committed as revision 24723 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-06 23:15:23 +00:00
Stefano Sabatini
4419c8bf25 Add the indevs.texi and outdevs.texi files.
Originally committed as revision 24543 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-27 13:10:59 +00:00