Vittorio Giovara
6abe7edabb
ffv1: fix out-of-bounds read
...
CC: libav-stable@libav.org
Bug-Id: CID 1047234
10 years ago
Reimar Döffinger
6724254118
ffv1enc: reduce stack usage.
...
A bit more complex than e.g. adding it to the context, but
using the context for something that will be used only during
initialization seemed a bit wasteful.
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
10 years ago
Michael Niedermayer
947ed8f292
avcodec/ffv1enc: allocate padding for extradata
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Lukasz Marek
a91d9e4b63
lavc/ffv1enc: add const to silent warning
...
Signed-off-by: Lukasz Marek <lukasz.m.luki@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
9e7b477c8c
avcodec/ffv1enc: choose 1.2 by default for higher resolutions to ensure multi-threaded decodability
...
Reviewed-by: "Peter B." <pb@das-werkstatt.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
0e575c24d6
ffv1.4: use 2 coefficients for calculating the Y plane in the RCT
...
0-0.7% improved compression
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
2bdda9a15c
avcodec/ffv1enc: fix use of uninitalized variable in choose_rct_params()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
b07da13ac0
avcodec/ffv1enc: support forcing experimental 1.4 version
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
7854d2d251
avcodec/ffv1: support adjusting the g vs r + b coefficient in the RCT
...
about 1% better compression
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Anton Khirnov
a6064b12b4
ffv1: use the AVFrame API properly.
11 years ago
Michael Niedermayer
336a1902d6
avcodec/ffv1enc: Check high bpp RGB against coder type too
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
1fb3b494fa
ffv1enc: store 2pass statistics at the end
...
This reduces their size from O(n) to O(1)
Fixes Ticket3078
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
8d88ed9a1f
avcodec/ffv1enc: pass through pts
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
62533eab6f
ffv1enc: use 64bit in maxsize calculation
...
This isnt needed but it cant hurt, its also more consistent with
how its calculated a few lines before.
See: CID1108593
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Diego Biurrun
b2bed9325d
cosmetics: Group .name and .long_name together in codec/format declarations
11 years ago
Paul B Mahol
d1a16564a2
avcodec/ffv1: YUVA(444,422,420) 9, 10 and 16 bit support
...
Signed-off-by: Paul B Mahol <onemda@gmail.com>
11 years ago
Michael Niedermayer
3576b564ec
avcodec/ffv1enc: encode slice as raw PCM in 1.4 when the buffer is too small.
...
This limits the maximum size of encoded slices more tightly
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
77f521d9e5
avcodec/ffv1enc: check encode_line()s return code
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
3728603f18
avcodec/ffv1enc: update buffer check for 16bps
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
904a2864bd
avcodec/ffv1enc: fix size used for ff_alloc_packet2()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
abe76b851c
ffv1enc: Make ffv1.3 non experimental
...
The fate tests change as they used 1.2 previously
The increased size is due to:
32bit CRCs per slice by default (can be disabled),
it adds slice headers to allow decoding one slice without the others
an additional slice size field is added to make it possible to find
slices within corrupted surroundings.
these add up to about 57bit per slice more
at 50 frames and 4 slices thats 1425 byte
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
d9b0b54a5f
ffv1: rename minor to micro version
...
the version is 1.3.4 which makes 4 micro and not minor
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
2c1a215ddb
ffv1: update years in header
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
c8d89be477
ffv1enc: propagate error code from write_extradata()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
eeb3fb9e62
ffv1enc: check for malloc failure
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
23606f27f0
avcodec/ffv1enc: bump minor_version for the chroma_plane fix
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
1a01147d7a
avcodec/ffv1enc: fix chroma_plane for rgb/rgba
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
c387c45e83
ffv1: fix plane_count at version 1.4
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Carl Eugen Hoyos
0915b531bc
Rename "AVClass class" as "AVClass component_class".
...
The aix header math.h defines "extern int class()" for C.
12 years ago
Michael Niedermayer
7e99d528f9
ffv1enc: Check return value of av_frame_ref()
...
Fixes CID1026740
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Anton Khirnov
e6c4ac7b5f
pixdesc: rename PIX_FMT_* flags to AV_PIX_FMT_FLAG_*
12 years ago
Michael Niedermayer
9a2153894f
ffv1enc: fix 1000l typo
...
Thanks to ubitux for spotting that
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Michael Niedermayer
bd63f8f657
ffv1enc: Fix memleak
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Michael Niedermayer
19411d32d4
ffv1enc: dont set coded_frame
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Michael Niedermayer
54602590d9
ffv1enc: Check the return value of ffv1_common_init()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Michael Niedermayer
69cfe63a43
ffv1: Switch to ThreadFrame
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Clément Bœsch
570d63eef3
lavu: add FF_CEIL_RSHIFT and use it in various places.
12 years ago
Diego Biurrun
6fee1b90ce
avcodec: Add av_cold attributes to init functions missing them
12 years ago
Michael Niedermayer
7f138310fb
ffv1enc: favor version 3 over 2 unless -strict -2 is set
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Michael Niedermayer
1a392fc550
ffv1: Store a flag in the global header that indicates if all frames are keyframes
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Diego Biurrun
c242bbd8b6
Remove unnecessary dsputil.h #includes
12 years ago
Michael Niedermayer
0aa1d848ec
ffv1enc: better heuristic to calculate initial states
...
Slightly improves compression of 2pass files
Tested-by: "Peter B." <pb@das-werkstatt.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Michael Niedermayer
b77d94dc6c
ffv1enc: check for malloc failure
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Michael Niedermayer
c6ef7641fc
ffv1enc: fix gbrp>8bit
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Paul B Mahol
be38aaba4a
ffv1enc: include correct header
...
Encoder needs put_bits.h, not get_bits.h
Signed-off-by: Paul B Mahol <onemda@gmail.com>
12 years ago
Michael Niedermayer
8bf16e677f
ffv1enc: allow encoding with 1 slice for CIF and smaller in version 3
...
the default is still 4 slices for any resolution, this just allows the user
to force 1 slice.
This in my quick test improves compression by 1% for a 320x240 sample
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Michael Niedermayer
c2cbc80ae9
ffv1enc: consider 2pass float rounding, fix loop
...
Found-by: "Peter B." <pb@das-werkstatt.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Luca Barbato
c1a02e884a
pixdesc: add av_pix_fmt_get_chroma_sub_sample
...
Deprecate avcodec_get_chroma_sub_sample.
12 years ago
Michael Niedermayer
e4255eaf47
ffv1: split decoder and encoder
...
This is not based on lucas work due to code divergence (its less work this way
than trying to merge from a split based on 2 years outdated code)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago
Michael Niedermayer
05f228b0a0
ffv1: fix gray
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years ago