Commit Graph

51070 Commits

Author SHA1 Message Date
0407a79e41 lavfi/blackframe: add support for named options 2013-03-17 00:27:08 +01:00
356922e237 doc/filters: add bit-slicing example in lutyuv docs 2013-03-17 00:26:31 +01:00
b2098d2417 lavu/eval: add bitor and bitand functions
Warning note suggested by Reimar.
2013-03-17 00:22:47 +01:00
d8dccf69ff lavfi: let gcc realign the stack on public graph driving functions
The functions which actually drive the filter graph by pushing
frames through it need to ensure an aligned stack for SIMD functions.

This fixes a crash in YADIF filter when using a mingw build in a MSVC application.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-16 23:52:35 +01:00
8d84e90c9b lavfi/delogo: 10l forgotten trailing NULL in shorthand.
Regression since de3e0ab3.
2013-03-16 23:37:58 +01:00
c9a51c29fc yadif: remove an 'm' from the LOAD macro definition
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-16 22:33:49 +01:00
1d3b14cac2 yadif: remove repeated check on width
The filter already checks that width (and height) are greater than 3.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-16 22:33:30 +01:00
7976d92dac yadif: cosmetic indentation from previous commits
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-16 22:33:06 +01:00
0a5814c9ba yadif: x86 assembly for 9 to 14-bit samples
These smaller samples do not need to be unpacked to double words
allowing the code to process more pixels every iteration (still 2 in MMX
but 6 in SSE2).  It also avoids emulating the missing double word
instructions on older instruction sets.

Like with the previous code for 16-bit samples this has been tested on
an Athlon64 and a Core2Quad.

Athlon64:
1809275 decicycles in C,    32718 runs, 50 skips
 911675 decicycles in mmx,  32727 runs, 41 skips, 2.0x faster
 495284 decicycles in sse2, 32747 runs, 21 skips, 3.7x faster

Core2Quad:
 921363 decicycles in C,     32756 runs, 12 skips
 486537 decicycles in mmx,   32764 runs,  4 skips, 1.9x faster
 293296 decicycles in sse2,  32759 runs,  9 skips, 3.1x faster
 284910 decicycles in ssse3, 32759 runs,  9 skips, 3.2x faster

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-16 22:32:54 +01:00
17e7b49501 yadif: x86 assembly for 16-bit samples
This is a fairly dumb copy of the assembly for 8-bit samples but it
works and produces identical output to the C version.  The options have
been tested on an Athlon64 and a Core2Quad.

Athlon64:
1810385 decicycles in C,    32726 runs, 42 skips
1080744 decicycles in mmx,  32744 runs, 24 skips, 1.7x faster
 818315 decicycles in sse2, 32735 runs, 33 skips, 2.2x faster

Core2Quad:
 924025 decicycles in C,     32750 runs, 18 skips
 623995 decicycles in mmx,   32767 runs,  1 skips, 1.5x faster
 406223 decicycles in sse2,  32764 runs,  4 skips, 2.3x faster
 387842 decicycles in ssse3, 32767 runs,  1 skips, 2.4x faster
 307726 decicycles in sse4,  32763 runs,  5 skips, 3.0x faster

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-16 22:32:34 +01:00
75c7e4583f Do not (re-)set libx264 parameter b_tff if interlaced encoding was not requested.
Reconfiguring can break x264 lossless encoding.

Fixes ticket #2165.
2013-03-16 20:13:44 +01:00
23f4c5acc4 document the release process 2013-03-16 18:00:54 +01:00
639a9e21a6 ffmpeg_opt: add OPT_INPUT to -fix_sub_duration and -canvas_size. 2013-03-16 17:20:19 +01:00
a77f453703 lavfi/avcodec: deprecate remainders of the avcodec glue code
Since lavfi works natively with AVFrame now, these functions are no longer
necessary and can be removed in a future bump.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-16 17:04:36 +01:00
07d4f557e5 append_packet_chunked: Remove unused initialization.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-16 17:03:41 +01:00
946cbf04ee Merge remote-tracking branch 'qatar/master'
* qatar/master:
  af_join: do not leak input frames.
  asrc_anullsrc: return EOF, not -1

Conflicts:
	libavfilter/asrc_anullsrc.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-16 16:58:41 +01:00
afb3fb3352 Merge commit 'f4281f457194a6a4489fbd7423e2ab2e13c6d4d9'
* commit 'f4281f457194a6a4489fbd7423e2ab2e13c6d4d9':
  asrc_anullsrc: do not set samplerate and channel layout explicitly

Conflicts:
	libavfilter/asrc_anullsrc.c

No change to FFmpeg due to semantic difference between the filter sources

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-16 16:56:30 +01:00
7fff5781b6 Merge commit 'e4a7b2177d14678ae240edcabaacfe2b14619b7b'
* commit 'e4a7b2177d14678ae240edcabaacfe2b14619b7b':
  vf_showinfo: remove its useless init function
  AVOptions: fix using named constants with child contexts.

Conflicts:
	libavutil/opt.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-16 16:38:11 +01:00
b64077bebe Merge commit '9676b9a2cdc4a90611188fc48d8d388e427997c5'
* commit '9676b9a2cdc4a90611188fc48d8d388e427997c5':
  AVOption: remove an unused function parameter.
  filters.texi: restore mistakenly removed section name for noformat
  avfiltergraph: use sizeof(var) instead of sizeof(type)

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-16 16:28:27 +01:00
e1b1092755 fate: test both direct and indirect paths in delogo filter. 2013-03-16 16:22:56 +01:00
9f1667ab64 fate: test both direct and indirect paths in hue filter. 2013-03-16 16:17:44 +01:00
ecade984ac Merge commit '42c7c61ab25809620b8c8809b3da73e25f5bbaaf'
* commit '42c7c61ab25809620b8c8809b3da73e25f5bbaaf':
  avfiltergraph: replace AVFilterGraph.filter_count with nb_filters

Conflicts:
	doc/APIchanges
	libavfilter/avfiltergraph.c
	libavfilter/avfiltergraph.h
	libavfilter/graphparser.c
	libavfilter/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-16 16:09:37 +01:00
8a0187e43d fate: test both direct and indirect paths in hqdn3d and gradfun. 2013-03-16 16:04:59 +01:00
3b2b636a2a lavfi: add perms and aperms filters. 2013-03-16 16:04:59 +01:00
18369967a5 Merge commit '556aab8f11b045a21182eee32413aa78d5c8539b'
* commit '556aab8f11b045a21182eee32413aa78d5c8539b':
  lavfi: use designated initializers in avfilter_class

Conflicts:
	libavfilter/avfilter.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-16 15:50:43 +01:00
e066fb54cb Merge commit 'aa3c77998404cc32233cb76e961ca27db8565459'
* commit 'aa3c77998404cc32233cb76e961ca27db8565459':
  lavf: sanity check size in av_get/append_packet().

Conflicts:
	libavformat/utils.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-16 15:38:13 +01:00
aef816f957 Merge commit 'ca6c3f2c53be70aa3c38e8f1292809db89ea1ba6'
* commit 'ca6c3f2c53be70aa3c38e8f1292809db89ea1ba6':
  lzo: fix overflow checking in copy_backptr()
  flacdec: simplify bounds checking in flac_probe()
  atrac3: avoid oversized shifting in decode_bytes()

Conflicts:
	libavformat/flacdec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-16 14:10:09 +01:00
e4e4add0e3 Add raw VC-1 muxer to match demuxer.
This is admittedly kind of pointless since usually -f image2pipe
can be used for the purpose, but this is more user-friendly.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2013-03-16 13:42:53 +01:00
5301aed9ae vc1testenc: give muxer same name as demuxer
Otherwise ffmpeg -formats claims that we only support demuxing
of that format.
To keep compatibility the struct could be duplicated instead,
but this seems almost like overkill for such a rare format.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2013-03-16 13:42:16 +01:00
c3c3bc7ff6 Make ff_win32_open more robust.
- Make MultiByteToWideChar fail when it encounters invalid encoding.
  Without this, invalid characters might just be skipped
- When MultiByteToWideChar fails, assume the file name is in CP_ACP
  and open it via normal open function, even when the file will be
  written
- When malloc fails return error instead of crashing

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2013-03-16 13:40:36 +01:00
23426987fa mpeg12: reduce hwaccel-related code duplication.
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2013-03-16 13:40:36 +01:00
4750b05d67 af_join: do not leak input frames. 2013-03-16 05:37:01 +01:00
c2b9bd97f5 asrc_anullsrc: return EOF, not -1 2013-03-16 05:36:46 +01:00
f4281f4571 asrc_anullsrc: do not set samplerate and channel layout explicitly
They are auto-negotiated.
2013-03-16 05:36:35 +01:00
e4a7b2177d vf_showinfo: remove its useless init function
Filter private data is memset to 0 so there is no point in explicitly
initing anything to 0.
2013-03-16 05:36:14 +01:00
4d67ff8e8e AVOptions: fix using named constants with child contexts.
The named constant needs to be searched for in the same object on which
the option is set, i.e. target_obj.
2013-03-16 05:35:33 +01:00
9676b9a2cd AVOption: remove an unused function parameter. 2013-03-16 05:35:20 +01:00
ef4d34aa7e filters.texi: restore mistakenly removed section name for noformat 2013-03-16 05:35:02 +01:00
dd74e3ef33 avfiltergraph: use sizeof(var) instead of sizeof(type) 2013-03-16 05:34:20 +01:00
42c7c61ab2 avfiltergraph: replace AVFilterGraph.filter_count with nb_filters
This is more consistent with the naming in the rest of Libav.
2013-03-16 05:33:23 +01:00
556aab8f11 lavfi: use designated initializers in avfilter_class 2013-03-16 05:33:06 +01:00
7d15cd4f4a changelog: add support for Monkey's Audio versions from 3.93 2013-03-15 23:41:03 -04:00
bcd3eb3e7a lavd/v4l2: silence libv4l2 logging
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-16 02:44:36 +01:00
361319d0f4 dpxenc: fix data offset
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-15 21:09:36 +01:00
b90912be68 lavd/lavfi: upgrade to AVFrame.
Fix a memory leak because the compat implementation of
AV_BUFFERSINK_FLAG_PEEK is not identical to the previous one.
2013-03-15 20:46:27 +01:00
aa3c779984 lavf: sanity check size in av_get/append_packet().
To avoid allocating ridiculous amounts of memory for corrupted files,
read the input in chunks limited to filesize or an arbitrary large
amount when that is not known (chosen to be 50M).
2013-03-15 20:05:04 +01:00
a9b424879f lavc & lavf: replace deprecated av_log* functions
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-03-15 18:10:28 +00:00
3d751b1ef6 yadif: correct strides in filter_edges_16bit
The C code treats the data as arrays of uint16_t so strides must not
be in bytes but in pixels.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-15 19:10:55 +01:00
cd5f50a255 avfilter: avoid direct access to AVFrame.channels
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-15 16:13:53 +01:00
64308941d4 mpegvideo: Fix exported qp table offest
Found-by: wm4
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-15 14:38:09 +01:00