Commit Graph

1819 Commits

Author SHA1 Message Date
Nicolas George
6f5e7e8690 ffmpeg: use the more powerful version of abuffersink. 2012-06-30 14:03:54 +02:00
Nicolas George
20a8dca57f ffmpeg: fix parsing of -force_key_frames option.
Identical to commit 4f6a1c9 by Reimar Döffinger,
that was lost after the merge of 19ad567.
2012-06-30 13:49:43 +02:00
Clément Bœsch
f926d91611 ffmpeg: fix a memleak in subtitles decoding. 2012-06-29 19:13:24 +02:00
Nicolas George
8069db8633 ffmpeg: warn that -t does not work with -filter_complex. 2012-06-28 21:40:50 +02:00
Nicolas George
2c793b8501 ffmpeg: warn when -t is used for inputs.
Using -t on an input already have surprising results.
Furthermore, using it on an input or an output makes
a real difference if there are speed-altering filters.

Implementing -t for inputs will probably result in some
behavour changes.
2012-06-28 21:40:43 +02:00
Michael Niedermayer
e377208d43 ffmpeg: dont copy creation_time as the destination file is not created at that time
Fixes Ticket1439

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-28 17:09:36 +02:00
Michael Niedermayer
b536e2facf Merge remote-tracking branch 'qatar/master'
* qatar/master:
  avconv: add an assert to silence an uninitialized variable warning.
  avconv: shut up an uninitialized variable warning.
  avfiltergraph: shut up uninitialized variable warning.
  af_join: initialize a variable to shut up gcc warning.
  amix: fix format specifier for AVFilterLink.sample_rate.
  lavfi: make filters less verbose.
  mpc8: read APE tags.
  lavr: x86: fix ff_conv_fltp_to_flt_6ch function prototypes
  libm: provide fallback definition for cbrtf() using powf()
  network: Don't redefine error codes if they already exist in errno.h
  configure: Check for sys/time.h
  network: Include unistd.h from network.h
  avconv: don't include vsrc_buffer.h, which doesn't exist anymore
  lavfi: reorder AVFilterLink fields.
  lavfi: reorder AVFilterContext fields.
  lavfi: reorder AVFilter fields.
  lavfi: reorder AVFilterBufferRef fields.
  lavfi: reorder AVFilterBuffer fields.

Conflicts:
	configure
	libavcodec/v210dec.h
	libavfilter/asrc_anullsrc.c
	libavfilter/avfilter.h
	libavfilter/buffersrc.c
	libavfilter/src_movie.c
	libavfilter/vf_aspect.c
	libavfilter/vf_crop.c
	libavfilter/vf_drawbox.c
	libavfilter/vf_fade.c
	libavfilter/vf_overlay.c
	libavfilter/vf_pad.c
	libavfilter/vf_scale.c
	libavfilter/vsrc_color.c
	libavformat/network.h
	libavutil/libm.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-27 01:58:09 +02:00
Michael Niedermayer
052f4f859c Merge commit 'a5e8c41c28f907d98d2a739db08f7aef4cbfcf3a'
* commit 'a5e8c41c28f907d98d2a739db08f7aef4cbfcf3a':
  lavfi: remove 'opaque' parameter from AVFilter.init()
  mov: do not try to read total disc/track number if data atom is too short.
  avconv: fix -force_key_frames
  dxva2_h264: fix signaling of mbaff frames
  x86: fft: elf64: fix PIC build

Conflicts:
	ffmpeg.c
	libavcodec/v210dec.h
	libavfilter/asrc_anullsrc.c
	libavfilter/buffersrc.c
	libavfilter/src_movie.c
	libavfilter/vf_drawtext.c
	libavfilter/vf_fade.c
	libavfilter/vf_overlay.c
	libavfilter/vsrc_color.c
	libavfilter/vsrc_testsrc.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-26 23:57:07 +02:00
Stefano Sabatini
43583fb85c lavfi/avcodec: deprecate avfilter_fill_frame_from_*_buffer_ref API
Deprecate functions:
avfilter_fill_frame_from_buffer_ref
avfilter_fill_frame_from_audio_buffer_ref
avfilter_fill_frame_from_video_buffer_ref

and schedule to drop them at the next API major bump.

The function avfilter_copy_buf_props() should be used instead.
2012-06-25 13:42:47 +02:00
Michael Niedermayer
244682dd08 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  log: Only include unistd.h if configure found it
  ape: create audio stream before reading tags.
  mov: make a length variable larger.
  image2: Add "start_number" private option to the demuxer
  image2: Add "start_number" private option to the muxer
  avconv: remove a forgotten debugging printf.
  avconv: use more descriptive names for hardcoded filters.
  avconv: remove redundant handling of async.
  doc/filters: fix typo.
  h264: use asm cabac reader under a generic condition

Conflicts:
	ffmpeg.c
	libavformat/img2dec.c
	libavformat/img2enc.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-24 21:34:54 +02:00
Michael Niedermayer
fbf03ee391 ffmpeg: fix indent of 1 line
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-24 14:16:45 +02:00
Michael Niedermayer
da728d5d2e ffmpeg: fix FF_API_OLD_VSINK_API=0 case
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-24 02:05:57 +02:00
Michael Niedermayer
caf7381d50 ffmpeg: fix mixup of old and new sinks
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-24 02:05:56 +02:00
Michael Niedermayer
e847f41285 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  libspeexenc: add supported sample rates and channel layouts.
  Replace usleep() calls with av_usleep()
  lavu: add av_usleep() function
  utvideo: mark interlaced frames as such
  utvideo: Fix interlaced prediction for RGB utvideo.
  cosmetics: do not use full path for local headers
  lavu/file: include unistd.h only when available
  configure: check for unistd.h
  log: include unistd.h only when needed
  lavf: include libavutil/time.h instead of redeclaring av_gettime()

Conflicts:
	configure
	doc/APIchanges
	ffmpeg.c
	ffplay.c
	libavcodec/utvideo.c
	libavutil/avutil.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-22 22:34:02 +02:00
Clément Bœsch
492cc9bcc4 ffmpeg: remove unused buffer_size in InputFile. 2012-06-22 22:13:22 +02:00
Michael Niedermayer
2fa5d8f234 ffmpeg: print swr options in --help too
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-22 03:43:29 +02:00
Michael Niedermayer
4da42ebe44 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  MS Screen 1 decoder
  aacdec: Fix popping channel layouts.
  av_gettime: support Win32 without gettimeofday()
  Use av_gettime() in various places
  Move av_gettime() to libavutil
  dct-test: use emms_c() from libavutil instead of duplicating it
  mov: fix operator precedence bug
  mathematics.h: remove a couple of math defines
  Remove unnecessary inclusions of [sys/]time.h
  lavf: remove unnecessary inclusions of unistd.h
  bfin: libswscale: add const where appropriate to fix warnings
  bfin: libswscale: remove unnecessary #includes
  udp: Properly check for invalid sockets
  tcp: Check the return value from getsockopt
  network: Use av_strerror for getting error messages
  udp: Properly print error from getnameinfo
  mmst: Use AVUNERROR() to convert error codes to the right range for strerror
  network: Pass pointers of the right type to get/setsockopt/ioctlsocket on windows
  rtmp: Reduce the number of idle posts sent by sleeping 50ms

Conflicts:
	Changelog
	configure
	libavcodec/aacdec.c
	libavcodec/allcodecs.c
	libavcodec/avcodec.h
	libavcodec/dct-test.c
	libavcodec/version.h
	libavformat/riff.c
	libavformat/udp.c
	libavutil/Makefile
	libswscale/bfin/yuv2rgb_bfin.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-20 20:47:46 +02:00
Nicolas George
8c3514647e ffmpeg.c: count subtitles in total size.
This avoids the "Output file is empty" warning
with subtitles-only files.
2012-06-18 09:40:01 +02:00
Michael Niedermayer
15f8941108 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  Avoid C99 variable declarations within for statements.
  rtmp: Read and handle incoming packets while writing data
  doc: document THREAD_TYPE fate variable
  rtpdec: Don't require frames to start with a Mode A packet
  avconv: don't try to free threads that were not initialized.

Conflicts:
	doc/fate.texi
	ffplay.c
	libavdevice/dv1394.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-15 00:14:21 +02:00
Michael Niedermayer
c7b9eab2be Merge remote-tracking branch 'qatar/master'
* qatar/master:
  rtmp: Add a new option 'rtmp_buffer', for setting the client buffer time
  rtmp: Set the client buffer time to 3s instead of 0.26s
  rtmp: Handle server bandwidth packets
  rtmp: Display a verbose message when an unknown packet type is received
  lavfi/audio: use av_samples_copy() instead of custom code.
  configure: add all filters hardcoded into avconv to avconv_deps
  avfiltergraph: remove a redundant call to avfilter_get_by_name().
  lavfi: allow building without swscale.
  build: Do not delete tests/vsynth2 directory, which is no longer created.
  lavfi: replace AVFilterContext.input/output_count with nb_inputs/outputs
  lavfi: make AVFilterPad opaque after two major bumps.
  lavfi: add avfilter_pad_get_type() and avfilter_pad_get_name().
  lavfi: make avfilter_get_video_buffer() private on next bump.
  jack: update to new latency range API as the old one has been deprecated
  rtmp: Tokenize the AMF connection parameters manually instead of using strtok_r
  ppc: Rename H.264 optimization template file for consistency.
  lavfi: add channelsplit audio filter.
  golomb: check remaining bits during unary decoding in get_ur_golomb_jpegls()
  sws: fix planar RGB input conversions for 9/10/16 bpp.

Conflicts:
	Changelog
	configure
	doc/APIchanges
	ffmpeg.c
	libavcodec/golomb.h
	libavcodec/v210dec.h
	libavfilter/Makefile
	libavfilter/allfilters.c
	libavfilter/asrc_anullsrc.c
	libavfilter/audio.c
	libavfilter/avfilter.c
	libavfilter/avfilter.h
	libavfilter/avfiltergraph.c
	libavfilter/buffersrc.c
	libavfilter/formats.c
	libavfilter/version.h
	libavfilter/vf_frei0r.c
	libavfilter/vf_pad.c
	libavfilter/vf_scale.c
	libavfilter/video.h
	libavfilter/vsrc_color.c
	libavformat/rtmpproto.c
	libswscale/input.c
	tests/Makefile

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-13 22:43:57 +02:00
Michael Niedermayer
dc1c79be1b Merge remote-tracking branch 'qatar/master'
* qatar/master:
  avfilter: Log an error if avfilter fails to configure a link.
  avconv: support only native pthreads.
  rtmp: Fix a possible access to invalid memory location when the playpath is too short.

Conflicts:
	ffmpeg.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-12 20:44:57 +02:00
Michael Niedermayer
9ec5e956a2 ffmpeg: disable threading on mingw, it doesnt work due to dependance on internal code.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-11 23:31:28 +02:00
Michael Niedermayer
0478d5f9fe ffmpeg: allow overriding framerate for stream copy
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-11 03:00:28 +02:00
Michael Niedermayer
3630a07513 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  libmp3lame: add missing layout terminator
  avconv: multithreaded demuxing.
  Bump lavu minor and add an APIChanges entry for audioconvert functions.
  audioconvert: add a function for extracting the channel with the given index
  audioconvert: add a function for getting the name of a single channel.
  audioconvert: add a function for getting channel's index in layout
  audioconvert: use av_popcount64 in av_get_channel_layout_nb_channels
  vf_libopencv: add missing headers.
  iac: add missing dependency

Conflicts:
	configure
	doc/APIchanges
	ffmpeg.c
	libavcodec/libmp3lame.c
	libavutil/avutil.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-10 21:34:15 +02:00
Michael Niedermayer
eae983f4ff ffmpeg: fix fate breakage introduced by key=value buffersrc args.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-09 14:02:27 +02:00
Nicolas George
6fef82f22d ffmpeg: with filter_complex, avoid random in<->out mapping.
With complex filters, an output can come from any input,
or several inputs, including inputs of a different type.
Copying the codec parameters from the first input with
the same type does not make any sense.

This does not change anything for simple 1->1 filters,
as source_index is set in that case.
2012-06-09 08:42:50 +02:00
Nicolas George
fbaa8fe6c6 ffmpeg: init icodec.
With complex filter graphs, it can end up accessed
without having been set.
2012-06-09 08:42:50 +02:00
Nicolas George
8362d734a3 ffmpeg: use the frame rate computed by lavfi.
This frame rate is more reliable than the one copied
from the input stream, so it is used in priority.
2012-06-09 08:42:50 +02:00
Nicolas George
5f281e94ba ffmpeg: add frame rate to the buffersrc arguments.
The arguments now use the key=value syntax.
2012-06-09 08:42:50 +02:00
Mike Scheutzow
1be7bfdd2b ffmpeg.c: fix erroneous "Output file is empty" message.
This message is printed whenever the RAWVIDEO codec is used, whether the
output file contains any frames or not. Test command:
./ffmpeg -i infile.y4m outfile.y4m

Signed-off-by: Mike Scheutzow <mjs973@optonline.net>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-08 18:22:40 +02:00
Nicolas George
25e87fc5f6 ffmpeg: move keyboard interaction in a function.
It makes the transcode loop easier to read (30% less code)
and the differences with avconv easier to spot.
2012-06-07 17:13:02 +02:00
Philip Langdale
92c065f93f ffmpeg: Set duration on encoded subtitle packets.
Currently, we don't set the duration on the packet of a newly
encoded subtitle. This information may be required by the
muxer.

Signed-off-by: Philip Langdale <philipl@overt.org>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-06 18:49:10 +02:00
Reimar Döffinger
93147daf59 ffmpeg: avoid a confusing and easy to break if().
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-06 17:13:28 +02:00
Michael Niedermayer
c8a11014b6 ffmpeg: use isatty() before messing with the terminal state
This fixes terminal messup in case of crashes (like in make fate)

Reviewed-by: François Revol <revol@free.fr>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-06 03:54:02 +02:00
Michael Niedermayer
ad60b3b181 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  vorbis: Validate that the floor 1 X values contain no duplicates.
  avprobe: Identify codec probe failures rather than calling them unsupported codecs.
  avformat: Probe codecs at score 0 on buffer exhaustion conditions.
  avformat: Factorize codec probing.
  Indeo Audio decoder
  imc: make IMDCT support stereo output
  imc: move channel-specific data into separate context
  lavfi: remove request/poll and drawing functions from public API on next bump
  lavfi: make avfilter_insert_pad and pals private on next bump.
  lavfi: make formats API private on next bump.
  avplay: use buffersrc instead of custom input filter.
  avtools: move buffer management code from avconv to cmdutils.
  avconv: don't use InputStream in the buffer management code.
  avconv: fix exiting when max frames is reached.
  mpc8: fix maximum bands handling
  aacdec: Turn PS off when switching to stereo and turn it to implicit when switching to mono.

Conflicts:
	Changelog
	cmdutils.h
	ffmpeg.c
	ffplay.c
	ffprobe.c
	libavcodec/avcodec.h
	libavcodec/mpc8.c
	libavcodec/v210dec.h
	libavcodec/version.h
	libavcodec/vorbisdec.c
	libavfilter/avfilter.c
	libavfilter/avfilter.h
	libavfilter/buffersrc.c
	libavfilter/formats.c
	libavfilter/src_movie.c
	libavfilter/vf_aspect.c
	libavfilter/vf_blackframe.c
	libavfilter/vf_boxblur.c
	libavfilter/vf_crop.c
	libavfilter/vf_cropdetect.c
	libavfilter/vf_delogo.c
	libavfilter/vf_drawbox.c
	libavfilter/vf_drawtext.c
	libavfilter/vf_fade.c
	libavfilter/vf_fifo.c
	libavfilter/vf_format.c
	libavfilter/vf_frei0r.c
	libavfilter/vf_gradfun.c
	libavfilter/vf_hflip.c
	libavfilter/vf_hqdn3d.c
	libavfilter/vf_libopencv.c
	libavfilter/vf_lut.c
	libavfilter/vf_overlay.c
	libavfilter/vf_pad.c
	libavfilter/vf_scale.c
	libavfilter/vf_select.c
	libavfilter/vf_showinfo.c
	libavfilter/vf_transpose.c
	libavfilter/vf_unsharp.c
	libavfilter/vf_yadif.c
	libavfilter/vsrc_color.c
	libavfilter/vsrc_testsrc.c
	libavformat/utils.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-06 01:08:33 +02:00
Michael Niedermayer
944d049eaa Merge remote-tracking branch 'qatar/master'
* qatar/master:
  movenc: Write chan atom for all audio tracks in mov mode movies.
  mpegtsenc: use avio_open_dyn_buf(), zero pointers after freeing
  doc/avconv: add some details about the transcoding process.
  avidec: make scale and rate unsigned.
  avconv: check output stream recording time before each frame returned from filters
  avconv: split selecting input file out of transcode().
  avconv: split checking for active outputs out of transcode().
  avfiltergraph: make some functions static.

Conflicts:
	ffmpeg.c
	libavfilter/avfiltergraph.c
	libavfilter/internal.h
	libavformat/mpegtsenc.c
	tests/ref/fate/acodec-alac
	tests/ref/fate/acodec-pcm-s16be
	tests/ref/fate/acodec-pcm-s24be
	tests/ref/fate/acodec-pcm-s32be
	tests/ref/fate/acodec-pcm-s8
	tests/ref/lavf/mov

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-04 22:59:32 +02:00
Clément Bœsch
df03ae8dd8 ffmpeg: remove two unused variables. 2012-06-04 22:32:26 +02:00
Michael Niedermayer
02ff89a1cd ffmpeg: disable audio volume insertion on the output side.
This fixes -vol leading to 2 inserted volume filters

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-04 15:49:03 +02:00
Clément Bœsch
c790ae0265 ffmpeg: add missing return carriage in error message. 2012-06-04 09:10:07 +02:00
Clément Bœsch
6b35f1a2a6 timecode: move timecode muxer options to metadata.
Some demuxers set a timecode in the format or streams metadata. The
muxers now make use of this metadata instead of a duplicated private
option.

This makes possible transparent copy of the timecode when transmuxing
and transcoding.

-timecode option for MPEG1/2 codec is also renamed to -gop_timecode. The
global ffmpeg -timecode option will set it anyway so no option change
visible for the user.
2012-06-04 07:41:22 +02:00
Stefano Sabatini
f1add01d98 ffmpeg: be more verbose when printing an error in transcode()
Helps debuggability.
2012-06-04 00:55:08 +02:00
Stefano Sabatini
6a9854e8f4 ffmpeg: specify more meaningful names for the lavfi buffer sources 2012-06-04 00:55:02 +02:00
Nicolas George
8b0e173529 ffmpeg: use filter time base as codec time base. 2012-06-03 23:43:57 +02:00
Nicolas George
48b5bcb3dd ffmpeg: avoid NULL dereference with filters.
icodec can be NULL if there is no input stream
clearly associated with the output stream.
2012-06-03 23:43:57 +02:00
Michael Niedermayer
d43812e235 ffmpeg: move pan filter insertion up.
This fixes one (disabled) fate test.

Thanks-to: ubitux to pointing at the odd filter order and stereo/mono messup
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-01 18:43:13 +02:00
Michael Niedermayer
23b365f1c4 ffmpeg: fix memleak
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-01 12:31:13 +02:00
Michael Niedermayer
60de761657 ffmpeg: allow overriding input top field first
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-31 12:42:02 +02:00
Michael Niedermayer
96fe99cb11 ffmpeg: disable autoinsertion for -async on the output side of the filtergraph.
This fixes the issue that since the last merge -async caused 2 aresample
filters to be inserted
users that generate funny timestamps in a filtergraph should probably
manually insert a aresample filter where they need it.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-30 15:55:31 +02:00
Michael Niedermayer
16e25ef34b Merge remote-tracking branch 'qatar/master'
* qatar/master:
  avconv: extend -r to work on any input stream.
  doc/avconv: expand documentation for the -s option.
  avconv: don't print filters inserted by avconv in stream mappings.
  avconv: merge configuration code for complex and simple filters
  avconv: split configuring input filters out of configure_complex_filter

Conflicts:
	configure
	doc/ffmpeg.texi
	ffmpeg.c
	tests/ref/fate/idroq-video-encode

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-30 04:38:32 +02:00
Clément Bœsch
d187e7616e ffmpeg: use %f instead of %lf in volume args format printf.
%f refers to a double argument already.
2012-05-28 22:17:05 +02:00
Michael Niedermayer
53ce990513 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  opt: Add av_opt_set_bin()
  avconv: Display the error returned by avformat_write_header
  rtpenc_chain: Return an error code instead of just a plain pointer
  rtpenc_chain: Free the URLContext on failure
  rtpenc: Expose the ssrc as an avoption
  avprobe: display the codec profile in show_stream()
  avprobe: fix function prototype
  cosmetics: Fix indentation
  avprobe: changelog entry
  avprobe: update documentation
  avprobe: provide JSON output
  avprobe: output proper INI format
  avprobe: improve formatting
  rtmp: fix url parsing
  fate: document TARGET_EXEC and its usage

Conflicts:
	doc/APIchanges
	doc/fate.texi
	doc/ffprobe.texi
	ffprobe.c
	libavformat/version.h
	libavutil/avutil.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-26 22:37:37 +02:00
Clément Bœsch
d8e075b1a0 ffmpeg: use AUTO_INSERT_FILTER() for -async option. 2012-05-24 23:33:21 +02:00
Michael Niedermayer
d0ad91c258 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  os_support: Define SHUT_RD, SHUT_WR and SHUT_RDWR on OS/2
  http: Add support for reading http POST reply headers
  http: Add http_shutdown() for ending writing of posts
  tcp: Allow signalling end of reading/writing
  avio: Add a function for signalling end of reading/writing
  lavfi: fix comment, audio is supported now.
  lavfi: fix incorrect comment.
  lavfi: remove avfilter_null_* from public API on next bump.
  lavfi: remove avfilter_default_* from public API on next bump.
  lavfi: deprecate default config_props() callback and refactor avfilter_config_links()
  avfiltergraph: smarter sample format selection.
  avconv: rename transcode_audio/video to decode_audio/video.
  asyncts: reset delta to 0 when it's not used.
  x86: lavc: use %if HAVE_AVX guards around AVX functions in yasm code.
  dwt: return errors from ff_slice_buffer_init()

Conflicts:
	ffmpeg.c
	libavfilter/avfilter.c
	libavfilter/avfilter.h
	libavfilter/formats.c
	libavfilter/version.h
	libavfilter/vf_blackframe.c
	libavfilter/vf_drawtext.c
	libavfilter/vf_fade.c
	libavfilter/vf_format.c
	libavfilter/vf_showinfo.c
	libavfilter/video.c
	libavfilter/video.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-23 21:48:31 +02:00
Matthieu Bouron
432fe9a38a ffmpeg: fix a crash with complex filters when pix_fmt is not specified
ffmpeg -i in.mxf -filter_complex "[0:0]fieldorder=tff" out.wav will
fail with an error message instead of crashing.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-20 19:36:00 +02:00
Michael Niedermayer
318e395764 ffmpeg: drop get_sync_ipts() and drop related special case for video
Idea found in a commit from Anton Khirnov
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-20 19:36:00 +02:00
Michael Niedermayer
cf9812d22b ffmpeg: move setting big_picture.pts up
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-20 16:29:07 +02:00
Michael Niedermayer
bf3dce6b59 ffmpeg: change AVFMT_RAWPICTURE pts to reduce diff to qatar
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-20 12:29:33 +02:00
Michael Niedermayer
13c254a216 ffmpeg: random cosmectics to reduce diff to qatar
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-20 12:24:49 +02:00
Michael Niedermayer
9ce3d03fc2 ffmpeg: cosmetics to reduce difference to qatar by 101 lines
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-20 12:12:13 +02:00
Michael Niedermayer
3ba90d9e97 ffmpeg: cosmetics to reduce difference to qatar by about 90 lines
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-20 12:12:13 +02:00
Michael Niedermayer
c53326afad ffmpeg: move ost->frame_rate setting code before the filtergraph stuff
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-20 11:55:25 +02:00
Michael Niedermayer
953df5d962 ffmpeg: drop pkt_pts
Reduces diff to qatar by 9 lines
Should not change anything

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-20 11:40:05 +02:00
Michael Niedermayer
ef7ac8e8ec ffmpeg: set the video filters timebase to the demuxers.
Inspired-by a change from Anton Khirnov
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-20 11:40:05 +02:00
Michael Niedermayer
3cf5591344 ffmpeg: reintroducing check_recording_time()
This reduces the difference to qatar by 27 lines
No functional change, the code should be unused

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-20 11:35:08 +02:00
Michael Niedermayer
8364cb9719 ffmpeg: fix uninitialized variable warning
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-20 11:35:08 +02:00
Michael Niedermayer
040a796dab Merge commit '755cd4197d53946208e042f095b930dca18d9430'
* commit '755cd4197d53946208e042f095b930dca18d9430':
  mov: enable parsing for VC-1.
  lavfi: Add fps filter.
  lavfi: initialize pts to AV_NOPTS_VALUE when creating new buffer refs.
  avconv: add support for audio in complex filtergraphs.

Conflicts:
	ffmpeg.c
	libavfilter/version.h
	libavformat/mov.c
	tests/ref/fate/vc1-ism

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-19 20:31:24 +02:00
Michael Niedermayer
9d30a96aa1 ffmpeg: inject a aresample filter for -async
Based on similar code from anton

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-19 19:23:38 +02:00
Clément Bœsch
eb945ab484 ffmpeg: misc cosmetics.
Reduce diff against avconv, and change some doxycomments into normal
comments (no point in doxifying ffmpeg internal fields).
2012-05-19 12:05:05 +02:00
Nicolas George
00be2f5726 ffmpeg: adapt to the buffersrc API changes. 2012-05-19 10:59:52 +02:00
Michael Niedermayer
31dfe20dd2 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  doc: Replace some @file tags by more suitable markup.
  fate: Set FUZZ factor of vorbis-13 test to 2.
  fate: Set FUZZ factor of (e)ac3-encode test to 3.
  fate: remove unused code from regressions-funcs.sh
  rtmp: Don't assume path points to a string of nonzero length
  avconv: fix behavior with -ss as an output option.

Conflicts:
	doc/platform.texi
	doc/protocols.texi
	ffmpeg.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-19 00:52:25 +02:00
Michael Niedermayer
48a40e09c4 ffmpeg: fix warning & bug for keep_pix_fmt
Found-by: ubitux
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-19 00:23:56 +02:00
Clément Bœsch
7f8bd16103 ffmpeg: remove unused variable i. 2012-05-18 23:40:59 +02:00
Clément Bœsch
9e2cee5770 ffmpeg: do not deprecate -vol and -map_channel.
These helpers are handy, just notice the user it is done using lavfi.
2012-05-18 23:40:03 +02:00
Clément Bœsch
fa29ca5f55 ffmpeg: resurrect -map_channel. 2012-05-18 23:40:03 +02:00
Clément Bœsch
a99a3b1bb3 ffmpeg: automatically insert volume filter when -vol is used.
Deprecate -vol.

Inspired by asyncts auto-insert patch from Anton Khirnov.
2012-05-17 17:37:18 +02:00
Michael Niedermayer
22a3a5ee0c ffmpeg: use av_buffersrc_add_frame() for audio too
fixes a memleak

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-17 17:19:35 +02:00
Michael Niedermayer
dc2e051c4f Merge branch 'audio-filters' of https://github.com/ubitux/FFmpeg
* 'audio-filters' of https://github.com/ubitux/FFmpeg:
  lavfi/pan: add supported sample rates to avoid a crash.
  ffmpeg: do not warn when expecting EOF from lavfi.

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-17 16:55:01 +02:00
Clément Bœsch
1bca73cf18 ffmpeg: do not warn when expecting EOF from lavfi. 2012-05-17 16:28:19 +02:00
Michael Niedermayer
7d12109542 ffmpeg: fix ;;
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-17 16:12:26 +02:00
Michael Niedermayer
3c0013213e ffmpeg: move audio timestamp roundup code.
This fixes a regression which lead to non monotone timestamps
at the end of a file.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-17 04:07:16 +02:00
Anton Khirnov
fc49f22c3b ffmpeg: add support for audio filters.
Some of the FATE changes are due to off-by-one different rounding being used
(lrintf vs av_rescale_q).
Some fate changes are due to 1 audio frame less being encoded (the new variant seems
matching what qatar does and according to ffprobe its closer to the requested duration)
the mapchan feature sadly is lost in this commit because it depends on resampling
being done in ffmpeg.c which is now moved completely into the av filter layer
-async is broken after this commit, this will be fixed in subsequent commits
the new filter reconfiguration system is flawed and will drop a frame on each
parameter change which is why the nelly moser checksums need updating.

Conflicts:

	ffmpeg.c
	tests/ref/fate/smjpeg
2012-05-17 03:29:21 +02:00
Michael Niedermayer
6579bc439b ffmpeg: allow switching to qatars buffersrc API
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-17 00:10:47 +02:00
Matthieu Bouron
4c73b3b1e0 ffmpeg: affect computed filtered frame pts after filling frame from buffer
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-14 23:40:46 +02:00
Nicolas George
9cf5bcded0 ffmpeg: accept + prefix to -pix_fmt option to disable automatic conversions. 2012-05-14 21:29:58 +02:00
Michael Niedermayer
6d49e819be ffmpeg: revert 492cc1
This restores correct block_align values in case of stream copy.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-14 15:15:11 +02:00
Michael Niedermayer
70e9308dec ffmpeg: preserve bits_per_coded sample on stream copy.
Fixes Ticket1124

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-12 21:23:18 +02:00
Michael Niedermayer
9eb99ab25b Merge remote-tracking branch 'qatar/master'
* qatar/master:
  fate: employ better names and add a convenient shorthand for vp6 tests
  arm/neon: dsputil: use correct size specifiers on vld1/vst1
  arm: dsputil: prettify some conditional instructions in put_pixels macros
  vqavideo: change x/y loop counters to the usual pattern
  avconv: use lrint() for rounding double timestamps

Conflicts:
	tests/ref/fate/vc1-ism

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-11 20:57:39 +02:00
Michael Niedermayer
8616c44606 ffmpeg: fix deinterlace
Fixes ticket1295

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-11 02:45:34 +02:00
Michael Niedermayer
b7fe9c7a08 ffmpeg: fix pointer type (const) warning
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-10 20:03:29 +02:00
Michael Niedermayer
0ee32b9028 ffmpeg: remove unused variables
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-10 20:03:13 +02:00
Michael Niedermayer
36ab79488e ffmpeg: fix uninitialized variable warning
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-10 20:02:49 +02:00
Michael Niedermayer
61930bd0d7 Merge remote-tracking branch 'qatar/master'
* qatar/master: (27 commits)
  libxvid: Give more suitable names to libxvid-related files.
  libxvid: Separate libxvid encoder from libxvid rate control code.
  jpeglsdec: Remove write-only variable in ff_jpegls_decode_lse().
  fate: cosmetics: lowercase some comments
  fate: Give more consistent names to some RealVideo/RealAudio tests.
  lavfi: add avfilter_get_audio_buffer_ref_from_arrays().
  lavfi: add extended_data to AVFilterBuffer.
  lavc: check that extended_data is properly set in avcodec_encode_audio2().
  lavc: pad last audio frame with silence when needed.
  samplefmt: add a function for filling a buffer with silence.
  samplefmt: add a function for copying audio samples.
  lavr: do not try to copy to uninitialized output audio data.
  lavr: make avresample_read() with NULL output discard samples.
  fate: split idroq audio and video into separate tests
  fate: improve dependencies
  fate: add convenient shorthands for ea-vp6, libavcodec, libavutil tests
  fate: split some combined tests into separate audio and video tests
  fate: fix dependencies for probe tests
  mips: intreadwrite: fix inline asm for gcc 4.8
  mips: intreadwrite: remove unnecessary inline asm
  ...

Conflicts:
	cmdutils.h
	configure
	doc/APIchanges
	doc/filters.texi
	ffmpeg.c
	ffplay.c
	libavcodec/internal.h
	libavcodec/jpeglsdec.c
	libavcodec/libschroedingerdec.c
	libavcodec/libxvid.c
	libavcodec/libxvid_rc.c
	libavcodec/utils.c
	libavcodec/version.h
	libavfilter/avfilter.c
	libavfilter/avfilter.h
	libavfilter/buffersink.h
	tests/Makefile
	tests/fate/aac.mak
	tests/fate/audio.mak
	tests/fate/demux.mak
	tests/fate/ea.mak
	tests/fate/image.mak
	tests/fate/libavutil.mak
	tests/fate/lossless-audio.mak
	tests/fate/lossless-video.mak
	tests/fate/microsoft.mak
	tests/fate/qt.mak
	tests/fate/real.mak
	tests/fate/screen.mak
	tests/fate/video.mak
	tests/fate/voice.mak
	tests/fate/vqf.mak
	tests/ref/fate/ea-mad
	tests/ref/fate/ea-tqi

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-10 02:25:41 +02:00
Michael Niedermayer
a54867121d ffmpeg: fix frame duration used for video sync.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-09 18:24:15 +02:00
Michael Niedermayer
c6aa2c4b12 ffmpeg: print next_dts too on debug_ts
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-07 18:56:06 +02:00
Michael Niedermayer
715c8a5a50 Merge remote-tracking branch 'qatar/master'
* qatar/master: (28 commits)
  dfa: use more meaningful return codes
  eatgv: check vector_bits
  eatgv: check motion vectors
  Mark a number of variables only used in av_dlog() calls as av_unused.
  dvdec: drop const qualifier from variable to eliminate a warning
  avcodec: Improve comment for thread_safe_callbacks to avoid misinterpretation.
  tests/utils: don't ignore the return value of fwrite()
  lavfi/formats: use sizeof(var) instead of sizeof(type).
  lavfi: remove avfilter_default_config_input_link() declaration
  lavfi: always enable the scale filter and depend on sws.
  vf_split: support user-specifiable number of outputs.
  avconv: remove stray useless comment.
  mpegmux: add stuffing to avoid incomplete PCM frames
  rtsp: avoid const warnings from strtol() call
  avserver: check return value of ftruncate()
  lagarith: make offset array type unsigned
  dfa: add some checks to ensure that decoder won't write past frame end
  aacps: NEON optimisations
  aacps: align some arrays
  aacps: move some loops to function pointers
  ...

Conflicts:
	configure
	doc/filters.texi
	libavcodec/dfa.c
	libavcodec/eatgv.c
	libavfilter/Makefile
	libavfilter/allfilters.c
	libavfilter/avfilter.h
	libavfilter/formats.c
	libavfilter/vf_split.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-06 21:53:19 +02:00
Nicolas George
870ca6a238 ffmpeg: do not include vsrc_buffer.h. 2012-05-06 16:14:34 +02:00
Nicolas George
ba7395aace ffmpeg: replace av_vsrc_buffer_add_frame by av_buffersrc_add_frame. 2012-05-06 16:14:34 +02:00
Nicolas George
6ec1e0fed9 ffmpeg: replace av_buffersrc_buffer with av_buffersrc_add_ref. 2012-05-06 16:14:34 +02:00
Clément Bœsch
9e6a1c8981 ffmpeg: fix indent in term_init(). 2012-05-04 19:22:28 +02:00
Clément Bœsch
49df97b282 ffmpeg: stronger ffpresets parsing.
This fixes at least issues with empty lines, and also allows CRLF lines
(in case a user makes its own preset on a MS plateform).
2012-05-04 18:47:50 +02:00