Commit Graph

152 Commits

Author SHA1 Message Date
Jun Zhao 74afa54528 ffmpeg_opt: fix max_error_rate help info display issue.
ffmpeg -h display "max_error_rate" option help information have
been cut off, the root cause is used a wrong initial order.

Signed-off-by: Jun Zhao <jun.zhao@intel.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-02-24 04:50:55 +01:00
Aman Gupta 4f40d64e00 avformat/mpegts: set AV_DISPOSITION_DEPENDENT for mix_type=0 supplementary audio
Signed-off-by: Aman Gupta <aman@tmm1.net>
2018-02-23 13:47:29 -08:00
James Almer cb97400f93 Revert "cmdutils: make use of new iteration APIs"
This reverts commit cdc78058c7.

It introduced several issues in the command line tools, and it's
implementing a new API that may still see some changes.
Revert for the time being until the state of the API is defined.

Signed-off-by: James Almer <jamrial@gmail.com>
2018-02-08 13:20:36 -03:00
Josh de Kock 26d879c1ce lavc/bsf: make BSF iteration the same as other iterators 2018-02-06 18:57:43 +00:00
Josh de Kock cdc78058c7 cmdutils: make use of new iteration APIs 2018-02-06 18:57:43 +00:00
James Almer 94eb5505ad ffprobe: remove usage of deprecation warning removal pragmas
Fixes compilation in non Windows targets.

Signed-off-by: James Almer <jamrial@gmail.com>
2018-02-02 17:51:24 -03:00
Zhong Li 19b1d905b8 ffprobe: Initialize coded_width/height
coded_width/height are unnitialized and will be overwritten by
dec_ctx->width/height in avcodec_open2()

This fixes tiket #6958.

Signed-off-by: Zhong Li <zhong.li@intel.com>
Signed-off-by: James Almer <jamrial@gmail.com>
2018-02-02 16:40:40 -03:00
Marton Balint 25a2d269bd fftools, tools, examples: migrate to AVFormatContext->url
Signed-off-by: Marton Balint <cus@passwd.hu>
2018-01-28 23:06:43 +01:00
Mark Thompson 74cf4a75f7 ffmpeg: Ignore SIGPIPE
On systems which deliver SIGPIPE (Unices), a broken pipe will currently
result in the immediate termination of the ffmpeg process (the default
disposition as required by POSIX).  This is undesirable, because while
the broken pipe is likely fatal to useful cleanup of whatever component
is writing to it, there might be other components which can do useful
cleanup - for example, a muxer on another stream may still need to write
indexes to complete a file.  Therefore, set the signal disposition for
SIGPIPE to ignore the signal - the call which caused the signal will
fail with EPIPE and the error will be propagated upwards like any other
I/O failure on a single stream.
2018-01-25 22:54:10 +00:00
Carl Eugen Hoyos 6874945fbf fftools/ffmpeg_opt: Remove a write-only variable.
Fixes a warning:
fftools/ffmpeg_opt.c:2057:21: warning: variable 'file_oformat' set but not used
2018-01-08 00:17:00 +01:00
Rostislav Pehlivanov 6b35a83214 Remove the ffserver program
Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
2018-01-06 18:31:37 +00:00
James Almer 414a49d671 ffmpeg: use thread wrappers for the thread message functionality
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: James Almer <jamrial@gmail.com>
2018-01-04 15:22:09 -03:00
wm4 e24f192a9f ffplay: drop lock manager use
Deprecated and useless.
2017-12-26 02:50:00 +01:00
Carl Eugen Hoyos ed4a0c7923 ffmpeg_opt: Constify hwaccel pointer.
Fixes a warning:
fftools/ffmpeg_opt.c:804:29: warning: assignment discards ‘const’ qualifier from pointer target type
2017-11-29 00:15:10 +01:00
Pan Bian 2ba6d7cb82 ffmpeg: Check read_ffserver_streams() return value
The function avformat_alloc_context() will return a NULL pointer on
failure. However, in function read_ffserver_streams(), its return value
is not validated and the subsequent dereference may result in a bad
memory access bug. Check its return value against NULL and avoid
potential NULL dereference.

Signed-off-by: Pan Bian <bianpan2016@163.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-11-28 01:18:22 +01:00
Mark Thompson b0cd14fb1d ffmpeg: Use codec hardware config to configure hwaccels
Removes specific support for all hwaccels supported by the generic code
(DXVA2, D3D11VA, NVDEC, VAAPI and VDPAU).
2017-11-26 21:41:19 +00:00
Mark Thompson 3650cb2dfa lavu,lavfi,ffmpeg: Remove experimental OpenCL API
This was added in early 2013 and abandoned several months later; as far as
I can tell, there are no external users.  Future OpenCL use will be via
hwcontext, which requires neither special OpenCL-only API nor global state
in libavutil.

All internal users are also deleted - this is just the unsharp filter
(replaced by unsharp_opencl, which is more flexible) and the deshake filter
(no replacement).
2017-11-22 23:20:39 +00:00
Jun Zhao a5870cb37f ffmpeg: add return value check to supress the build warning.
add return value check to supress the build warning message like
"warning: ignoring return value" when use attribute -Wunused-result.

Signed-off-by: Jun Zhao <jun.zhao@intel.com>
Reviewed-by: 刘歧 <lq@chinaffmpeg.org>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-11-21 03:13:03 +01:00
pkviet 77b6e3ee27 ffmpeg: add ui64 type to SpecifierOpt
Adds ui64 (uint64_t) as a possible type for SpecifierOpt. This enables
 use of uint64_t options with SpecifierOpt such as channel_layout
 when expressed as a 64 bit channel mask.

Signed-off-by: pkviet <pkv.stream@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-11-20 02:40:30 +01:00
Vitaly _Vi Shukela 80ef3c8360 ffmpeg: Allow "-to" on input files in addition to "-t"
For some strange reason "-t" option was only implemented
for input files while both "-t" and "-to" were available
for use for output files. This made extracting a range from
input file inconvenient.

This patch enables -to option for input so one can do

    ffmpeg -ss 1:23:20 -to 1:27:22.3 -i myinput.mkv ...

Signed-off-by: Vitaly _Vi Shukela <vi0oss@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-11-19 04:38:29 +01:00
DHE ae61bcbdf8 ffmpeg_filter: use nb_threads=1 on unused filtergraph
Signed-off-by: DHE <git@dehacked.net>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-11-19 04:38:29 +01:00
James Almer e61825d5b4 ffplay: remove usage of AVCodecContext accessors
Signed-off-by: James Almer <jamrial@gmail.com>
2017-11-15 01:14:22 -03:00
James Almer b2731bcd1d ffprobe: remove usage of AVCodecContext accessors
Signed-off-by: James Almer <jamrial@gmail.com>
2017-11-15 01:14:22 -03:00
James Almer e9025beacb ffmpeg: remove usage of AVCodecContext accessors
Signed-off-by: James Almer <jamrial@gmail.com>
2017-11-15 01:14:22 -03:00
Timo Rothenpieler 6a4d1c9063 ffmpeg: use explicitly requested hwaccel only
With there being two hwaccels that use the CUDA pix_fmt now, just
relying on the pix_fmt to identify the selected hwaccel is not enough
anymore.

So this checks if the user explicitly selected a hwaccel, and only
accepts that one.
2017-11-11 14:19:05 +01:00
James Almer 09100ccc14 Merge commit 'a58873b11198d04670b7f98f5a8a749d742db7c5'
* commit 'a58873b11198d04670b7f98f5a8a749d742db7c5':
  avconv: when using -loop option bail out if seek to start fails

Merged-by: James Almer <jamrial@gmail.com>
2017-11-10 20:24:37 -03:00
Anton Khirnov 0e00624389 h264dec: add a NVDEC hwaccel
Some parts of the code are based on a patch by
Timo Rothenpieler <timo@rothenpieler.org>

Merges Libav commit b9129ec466.

Due to the name clash with our cuvid decoder, rename it to nvdec.

This commit also changes the Libav code to dynamic loading of the
cuda/cuvid libraries.

Signed-off-by: Timo Rothenpieler <timo@rothenpieler.org>
2017-11-10 22:48:53 +01:00
Marton Balint d68a557df4 ffplay: use SDL2 audio API
It allows us to specify what kind of audio parameter changes are allowed.

Should fix ticket #6721.

Signed-off-by: Marton Balint <cus@passwd.hu>
2017-11-06 00:00:38 +01:00
Peter Große 0ae1f6ddeb ffmpeg.c: fix code style in seek_to_start
Signed-off-by: Peter Große <pegro@friiks.de>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-11-05 03:14:29 +01:00
Peter Große 3ddb887c88 ffmpeg.c: fix calculation of input file duration in seek_to_start()
Fixes looping files without audio or when using stream_copy, where
ist->nb_samples is not set since no decoding is done.

This fixes ticket #5719 and also fixes an endless loop with the sample
in ticket #6139.

Signed-off-by: Peter Große <pegro@friiks.de>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-11-05 03:14:29 +01:00
Marton Balint 415038f2bd ffplay: only use hardware accelerated SDL texture formats
Typically only a small subset of the SDL texture formats are supported directly
by the SDL renderer drivers, the rest is software emulated. It's better if
libswscale does the format conversion to a hardware-accelerated texture format
instead of SDL.

This should fix video render slowdowns with some texture formats after
3bd2228d05.

Signed-off-by: Marton Balint <cus@passwd.hu>
2017-11-04 19:27:37 +01:00
Marton Balint 84d31e2475 ffplay: create the window and the renderer before starting playback
Signed-off-by: Marton Balint <cus@passwd.hu>
2017-11-04 19:27:37 +01:00
James Almer 26868f80e0 Merge commit '908f737d6c2900b5d34319ca6ea1d1cb71221463'
* commit '908f737d6c2900b5d34319ca6ea1d1cb71221463':
  cmdutils: Mark conditionally used variable as av_unused

Merged-by: James Almer <jamrial@gmail.com>
2017-11-01 18:01:32 -03:00
Mark Thompson cf17086982 ffmpeg: Fix flush packet stream copy input timestamp handling
Since a7da134742, flush packets are passed
to process_input_packet() during stream copy.  This modifies the input
timestamp handling to ignore them - since they contain no data, timestamps
should not be affected.
2017-11-01 19:55:56 +00:00
James Almer 88c7aa13dd Merge commit '91622f6446b463abe6507ad2cd5d1fbf7e49c424'
* commit '91622f6446b463abe6507ad2cd5d1fbf7e49c424':
  avconv: Always initialize the opkt struct on streamcopy

Merged-by: James Almer <jamrial@gmail.com>
2017-10-31 13:41:37 -03:00
James Almer a7da134742 Merge commit '4d56f7ab8f627aa140c1ede1bb61305f01cefcdd'
* commit '4d56f7ab8f627aa140c1ede1bb61305f01cefcdd':
  avconv: Flush output BSFs when stream copy reaches EOF

Merged-by: James Almer <jamrial@gmail.com>
2017-10-30 23:07:15 -03:00
Michael Niedermayer f1251a6b9c ffmpeg: Fix stored encoder metadata with -bitexact
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-10-30 21:32:26 +01:00
James Almer 5cc5130c81 ffmpeg: remove usage of deprecated getter functions
Signed-off-by: James Almer <jamrial@gmail.com>
2017-10-29 14:42:48 -03:00
James Almer ddd0b19169 ffprobe: remove usage of deprecated getter functions
Signed-off-by: James Almer <jamrial@gmail.com>
2017-10-29 14:42:48 -03:00
James Almer ca2b779423 avformat: remove use of deprecated AVFMT_FLAG_KEEP_SIDE_DATA flag
It has no effect whatsoever since the major bump.
Replace the flag's documentation to reflect this as well.

Signed-off-by: James Almer <jamrial@gmail.com>
2017-10-29 00:09:52 -03:00
Carl Eugen Hoyos 693a11b8a2 lavf: Remove AVFMT_RAWPICTURE.
Deprecated since October 2015.
2017-10-26 23:43:11 +02:00
Michael Niedermayer 617f0c65e1 ffserver: Fix off by 1 error in path
Code suggested by ubitux

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-10-25 00:18:33 +02:00
James Almer 7b550c5f84 Merge commit 'b3739599bda740ac12d3dde31a331b744df99123'
* commit 'b3739599bda740ac12d3dde31a331b744df99123':
  lavc: Drop deprecated emu edge functionality

Merged-by: James Almer <jamrial@gmail.com>
2017-10-23 16:04:31 -03:00
Michael Niedermayer 2c9fa4162b ffmpeg: add -bitexact flag to simplify enabling bitexact mode in (de)muxer and (de/en)coder
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-10-23 12:41:04 +02:00
Clément Bœsch 2b32031827 lavc: drop VDA
Deprecated (aka removed) in OSX 10.11, and we have a replacement for it
(VideoToolbox).
2017-10-23 11:56:15 +02:00
James Almer d3a3ee9c7a ffserver: remove usage of deprecated rc_eq option
The private codec option will be used instead when available.
2017-10-21 18:07:54 -03:00
Marton Balint f4090940bd ffmpeg: always init output stream before reaping filters
Otherwise the frame size of the codec is not set in the buffersink.

Fixes ticket #6603 and the following simpler case:

ffmpeg -c aac -filter_complex "sine=d=0.1,asetnsamples=1025" out.aac

Signed-off-by: Marton Balint <cus@passwd.hu>
2017-10-18 21:52:47 +02:00
Jun Zhao 2e94490225 ffmpeg: remove hwaccel_lax_profile_check option
This has been unused for a long time, and the original purpose has been
replaced by the per-stream hwaccel_flags.

Signed-off-by: Jun Zhao <jun.zhao@intel.com>
Signed-off-by: Mark Thompson <sw@jkqxz.net>
2017-10-16 22:38:11 +01:00
Sasi Inguva 2b006ccf83 ffmpeg.c: Fallback to duration_dts, when duration_pts can't be determined.
This is required for FLV files, for which duration_pts comes out to be zero.

Signed-off-by: Sasi Inguva <isasi@google.com>
Reviewed-by: Thomas Mundt <tmundt75@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-10-12 01:27:52 +02:00
Marton Balint 41569bbc66 ffmpeg: always use single threaded decoding for attached pictures
Since af1761f7b5 ffmpeg waits for a frame in each
stream before writing the output header. If we are using threaded decoding for
attached pictures, we have to read till EOF to be able to finally flush the
decoder and output the decoded frame. This essentially makes ffmpeg buffer all
non-attached picture packets, which will cause a "Too many packets buffered for
output stream" eventually.

By forcing single threaded decoding, we get a frame from a single packet as
well and we can avoid the error.

Fixes part of ticket #6375:
ffmpeg -i 46564100.mp3 -acodec libmp3lame -ab 128k -ac 2 out.mp3

Reviewed-by: Hendrik Leppkes <h.leppkes@gmail.com>
Signed-off-by: Marton Balint <cus@passwd.hu>
2017-10-08 22:32:13 +02:00
James Almer 3e6829a8aa build: fix compilation of tools with OpenCL enabled
Signed-off-by: James Almer <jamrial@gmail.com>
2017-10-03 11:56:56 -03:00
James Almer fd5f4ac081 Merge commit 'c95169f0ec68bdeeabc5fde8aa4076f406242524'
* commit 'c95169f0ec68bdeeabc5fde8aa4076f406242524':
  build: Move cli tool sources to a separate subdirectory

Merged-by: James Almer <jamrial@gmail.com>
2017-10-01 18:26:36 -03:00