Andreas Cadhalpun
590743101d
postproc: fix unaligned access
...
QP_store is only 8-bit-aligned, so accessing it as uint32_t causes
SIGBUS crashes on sparc.
The AV_RN32/AV_WN32 macros only do unaligned access in the
HAVE_FAST_UNALIGNED case.
Reviewed-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
10 years ago
Carl Eugen Hoyos
3323c5f353
Remove a few occurences of "long long" from the libraries.
10 years ago
Michael Niedermayer
6f51674c91
postproc: Avoid floats in maxClipped computation
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years ago
Michael Niedermayer
ebe919cce2
postproc/postprocess_template: Compute packedYScale and QPCorrecture without floats
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years ago
Michael Niedermayer
07cb6bf985
postproc/postprocess: Use size_t to hold strlen()s value
...
This should make no difference but its more correct
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years ago
Tucker DiNapoli
cbe27006ce
postproc: Made QP, nonBQP, and pQPb arrays
...
Also pulled QP initialization out of inner loop, which removed some redundent code.
Added some dummy fields to PPContext to allow current code to work while
changing the rest of the postprocessing code to support the arrays.
I also increased alignment requirements for some fields in the PPContext struct to
support future avx2 code.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years ago
Tucker DiNapoli
6264b6227c
postproc: Replaced inline asm for prefetching with prefetch functions
...
Prefetching functions are defined in postprocess_template using the
RENAME macro so that prefetching is used when available. For x86
targets inline asm is used and the functions are non-empty only for
cpus where prefetching is available. For non x86 targets the gcc bultin
prefetch is used if it is available, otherwise no prefetching is done.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years ago
Tucker DiNapoli
303c3dada2
postproc: Removed unecessary if/else branch when getting QP.
...
There's still an if, as QP needs to be modified if isColor=0, but it
still removes a unecessary branch.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years ago
Michael Niedermayer
83020f8978
postproc/postprocess_template: split 2nd blockgroup loop out
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years ago
Michael Niedermayer
d9e3fe8c22
postproc/postprocess_template: split first part of block loop
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years ago
Michael Niedermayer
2a9b9579ab
postproc/postprocess_template: Move QP initialization down
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years ago
Michael Niedermayer
330113b032
postproc/postprocess_template: Remove dead code and comments
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years ago
Michael Niedermayer
fc90d1502a
bpostproc/postprocess_template: drop avoidable #ifdef
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years ago
Michael Niedermayer
93f4538363
postproc/postprocess_template: split loop in 2 (block groups of 4, blocks)
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years ago
Michael Niedermayer
78cd9c5671
postproc: mark alloc/free context functions as av_cold
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years ago
Michael Niedermayer
f9d24ee1dc
postproc/postprocess: Check for av_malloc() failure
...
Fixes CID1271052
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years ago
Michael Niedermayer
ac424b23e4
postproc/postprocess: Check for av_mallocz() failure
...
Fixes CID1271050
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years ago
Michael Niedermayer
45e0aa46ca
postproc/postprocess: use av_mallocz()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years ago
Michael Niedermayer
649c158e8c
Add FFMPEG_VERSION into the binary libs
...
This simplifies identifying from which revision a binary of a lib came from
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years ago
Michael Niedermayer
0b7e5d0d75
postproc: fix qp count
...
Found-by: ubitux
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years ago
Michael Niedermayer
7a11333387
libpostproc: support grayscale
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years ago
Michael Niedermayer
941aaa39e8
postproc/postprocess: fix quant store for fq mode
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years ago
Michael Niedermayer
1d3c87d6cd
postprocess: add YUV 4:4:0 support
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years ago
Michael Niedermayer
ac682955e9
postproc: add basic deblock filter visualization support
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years ago
Michael Niedermayer
3c4fc6a782
postproc/postprocess_template: mark unchanged function arguments const
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years ago
Michael Niedermayer
bd68909753
postprocess: prefetch* dont change anything, thus their arguments should be const
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years ago
Michael Niedermayer
5ccd08d26d
postproc/postprocess: Avoid some ifs in do_a_deblock_C()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years ago
Michael Niedermayer
7f8d28f686
postproc: Replace CLIP by av_clip_uint8
...
drop "#define CLIP av_clip_uint8"
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years ago
Michael Niedermayer
5a9ca68e15
postproc/postprocess: remove redundant casts
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years ago
Michael Niedermayer
859d7d4640
postproc/postprocess: Use FF_ARRAY_ELEMS() in pp_free_context() instead of hard-coding their size
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years ago
Michael Niedermayer
d9b141c05f
postproc/postprocess: Remove unused argument from reallocAlign()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years ago
Michael Niedermayer
9e8be46252
postproc/postprocess: use av_strtok()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years ago
Michael Niedermayer
921caf6203
postprocess: make some variables in pp_get_mode_by_name_and_quality() const
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years ago
Michael Niedermayer
44dabf1f42
postproc: simplify forwarding return codes
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years ago
Michael Niedermayer
9f9ebe631d
libpostproc/postprocess: avoid some if()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years ago
Michael Niedermayer
bb8b752553
postproc: use FFMIN/FFMAX where appropriate
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years ago
Reimar Döffinger
d9e2aceb7f
Add missing "const" all over the place.
...
Only "./configure --enable-gpl" on x86 was tested.
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
10 years ago
Michael Niedermayer
81a663f49e
Drop remaining unneeded != NULL
...
Reviewed-by: Clément Bœsch <u@pkh.me>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years ago
Michael Niedermayer
97f8c7a03e
bump libpostproc and libswresample
...
this is needed / avoids some headaches as one of their dependancies
(libavutil) was bumped
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
10 years ago
Carl Eugen Hoyos
a19bcf4ee8
Fix libpostproc compilation with !HAVE_6REGS.
11 years ago
Matt Oliver
8236747511
Automatically change MANGLE() into named inline asm operands when direct symbol reference in inline asm are not supported.
...
This is part of the patch-set for intel C inline asm on windows support
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
f6173fed60
postproc: fix null pointer dereference with invalid option strings
...
Fixes CID1135760
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
James Almer
56572787ae
Add Windows resource file support for shared libraries
...
Originally written by James Almer <jamrial@gmail.com>
With the following contributions by Timothy Gu <timothygu99@gmail.com>
* Use descriptions of libraries from the pkg-config file generation function
* Use "FFmpeg Project" as CompanyName (suggested by Alexander Strasser)
* Use "FFmpeg" for ProductName as MSDN says "name of the product with which the
file is distributed" [1].
* Use FFmpeg's version (N-xxxxx-gxxxxxxx) for ProductVersion per MSDN [1].
* Only build the .rc files when --enable-small is not enabled.
[1] http://msdn.microsoft.com/en-us/library/windows/desktop/aa381058.aspx
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
78d2d1e027
postprocess_template: put rsp on the clobber list to prevent gcc from using it in "q"
...
Fixes Ticket2675
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Michael Niedermayer
1d3476f258
postproc/postprocess_template: remove empty comments
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Clément Bœsch
8da1fff85a
lavfi/pp: switch to an AVOptions-based system.
...
Also add and use the '|' separator instead of ':' since it's
incompatible with the new option system...
12 years ago
Michael Niedermayer
a2f7314ba2
libpostproc: silence valgrind/fate warning about using uninitialized data
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Carl Eugen Hoyos
7a259a5fcd
Fix libpostproc compilation on x86_32 with disable-optimizations.
12 years ago
Clément Bœsch
518239cd61
build: postproc cleanup.
...
This reverts 79f80f5c
, moves postproc along with the other libraries,
and fix the postproc dependency to libavutil.
12 years ago
Michael Niedermayer
9e04e11e83
libpostproc: alloc a few bytes more in the temporary buffer
...
This avoids dering reading 4 bytes prior the buffer (1 byte can
be used)
Fixes Ticket2057
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago