Commit Graph

33209 Commits

Author SHA1 Message Date
wm4
750f72d775 mmaldec: hack against buffering problems on broken input
I can't come up with a nice way to handle this. It's hard to keep the
lock-stepped input/output in this case. You can't predict whether the
MMAL decoder will output a picture (because it's asynchronous), so
you have to assume in general that any packet could produce 0 or 1
frames. You can't continue to write input packets to the decoder,
because then you might get too many output frames, which you can't
get rid of because the lavc decoding API does not allow the decoder
to return an output frame without consuming an input frame (except
when flushing).

The ideal fix is a M:N decoding API (preferably asynchronous), which
would make this code potentially much cleaner. For now, this hack
will do.
2015-08-11 12:14:15 +02:00
Rostislav Pehlivanov
ef8e5a61c8 aacenc: Move small misc. functions to a separate file
As well as tables littered everywhere, functions were spread
out all across the encoder's files. This moves them to a single
place where they can be used by either the encoder's main files
or additional encoder files. Additionally, it changes the type
of some to 'inline' to enable us to simply put them in a header
file and possibly gain some speed due to compiler optimizations.

Signed-off-by: Claudio Freire <klaussfreire@gmail.com>
2015-08-11 00:22:05 -03:00
Michael Niedermayer
b26497f824 avcodec/mjpegenc_common: do not ignore the color_range field
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-08-10 17:48:43 +02:00
Hendrik Leppkes
e1def4ffec Merge commit '1542ec96389f32e5081c6c607e4b6f5e257ccdf2'
* commit '1542ec96389f32e5081c6c607e4b6f5e257ccdf2':
  cosmetics: Drop spurious spaces from if clauses

Conflicts:
	libavcodec/vc1_block.c

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
2015-08-10 11:16:27 +02:00
Hendrik Leppkes
b1d547fe02 Merge commit '0f562f5b833d603e04123d198c59f8b2b5eb43e4'
* commit '0f562f5b833d603e04123d198c59f8b2b5eb43e4':
  h264: Do not print an error when the buffer has to be refilled

Conflicts:
	libavcodec/h264.c

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
2015-08-10 11:11:42 +02:00
Michael Niedermayer
0eb896b38d Revert "movtextdec: Use default style information from movtext header"
The commit broke  sub-movtext and sub-subripenc
fate output differs between mips ad x86 so updating fate ref is not
possible

This reverts commit d670848d4c.
2015-08-10 02:09:14 +02:00
Niklesh
d670848d4c movtextdec: Use default style information from movtext header
Signed-off-by: Niklesh <niklesh.lalwani@iitb.ac.in>
2015-08-09 15:12:15 -07:00
周晓勇
7fbafd0b1b avcodec: loongson optimize h264qpel with mmi v1
Signed-off-by: ZhouXiaoyong <zhouxiaoyong@loongson.cn>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-08-09 20:43:54 +02:00
Michael Niedermayer
16df02fd2e avcodec/snowenc: Avoid use of deprecated me_method
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-08-09 14:33:31 +02:00
Andreas Cadhalpun
2e9c8be834 avcodec: add missing FF_API_CODEC_ID guard
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2015-08-08 21:58:31 +02:00
Carl Eugen Hoyos
7e9cd99627 lavc: The h263 encoder (also) depends on h263data.o 2015-08-08 12:11:33 +02:00
Niklesh
ecc806a224 movtextdec: Fix memory leaks by freeing mem allocs correctly
Initialize m->count_f to 0 at the correct place to free memory allocs properly.

Signed-off-by: Niklesh <niklesh.lalwani@iitb.ac.in>
2015-08-07 16:33:31 -07:00
Paolo Bizzarri
1542ec9638 cosmetics: Drop spurious spaces from if clauses
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-08-08 01:26:38 +02:00
Michael Niedermayer
005d006938 avcodec/libopenh264enc: Avoid usage of deprecated ff_alloc_packet()
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-08-07 22:46:27 +02:00
Hendrik Leppkes
8015150f43 Merge commit '9469370fb32679352e66826daf77bdd2e6f067b5'
* commit '9469370fb32679352e66826daf77bdd2e6f067b5':
  h264: Use AVERROR return codes instead of -1

Only partially merged, as the first hunk is not correct and would result
in endless log spam.

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
2015-08-07 09:54:12 +02:00
Rostislav Pehlivanov
c47c781e83 aacenc: Move local encoder specific tables to a separate file
This commit moves any tables specific to the encoder from aacenc
and aaccoder to a separate file called 'aacenctab.c/.h'.
This was done as a clean up attempt as the encoder was filled with
tables pasted in between functions which made it confusing to follow
and track where each table and definition had been used.
This commit solves this by simply exporting the smaller tables out to
the aacenctab.h while the larger ones are compiled using aacenctab.c
and are referenced from the header file.

Signed-off-by: Claudio Freire <klaussfreire@gmail.com>
2015-08-07 03:58:07 -03:00
James Almer
9c0407e856 x86/sbrdsp: remove an unnecessary mova in sbr_autocorrelate
Signed-off-by: James Almer <jamrial@gmail.com>
2015-08-06 23:42:19 -03:00
Michael Niedermayer
ae413a48e6 avcodec/movtextdec: check that ftab has been allocated before dereferencing it
Fixes potential null pointer dereference on deallocation

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-08-06 23:38:55 +02:00
Niklesh
2e7a684e72 movtextdec.c: Add support for font names
Signed-off-by: Niklesh <niklesh.lalwani@iitb.ac.in>
2015-08-06 08:42:09 -07:00
wm4
8024002d40 vc1dec: propagate error codes and return meaningful error codes 2015-08-06 15:27:19 +02:00
Michael Niedermayer
cb5190bc9d avcodec/diracdec: Move reference to DiracFrame, avoid use of the deprecated field from AVFrame
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-08-06 12:44:37 +02:00
Michael Niedermayer
a368920eef avcodec/options: Silence deprecated warning about coded_frame
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-08-06 12:39:37 +02:00
Luca Barbato
0f562f5b83 h264: Do not print an error when the buffer has to be refilled
Partially amends 9469370fb3
2015-08-06 11:55:48 +02:00
wm4
94c0df79c7 lavc: propagate hwaccel errors
At least the new videotoolbox decoder does not actually set a frame if
end_frame fails. This causes the API to return success and signals that
a picture was decoded, even though AVFrame->data[0] is NULL.

Fix this by propagating end_frame errors.
2015-08-06 11:05:02 +02:00
周晓勇
71575d98f5 avcodec: loongson optimized h264pred with mmi v2
Signed-off-by: ZhouXiaoyong <zhouxiaoyong@loongson.cn>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-08-05 22:52:52 +02:00
Michael Niedermayer
e740659a5d avcodec/avcodec: Define CODEC_CAP_* based on AV_CODEC_CAP_*
Avoid duplicating the literal numeric values

Reviewed-by: "Ronald S. Bultje" <rsbultje@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-08-05 15:45:50 +02:00
Michael Niedermayer
4ab1f33daf avcodec/avcodec: Replace AV_CODEC_FLAG* values by 1 << C style for consistency
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-08-05 15:45:50 +02:00
Michael Niedermayer
500bfbe27a avcodec/hapenc: Remove use of deprecated ff_alloc_packet()
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-08-05 15:45:50 +02:00
Hendrik Leppkes
00b5c19661 Merge commit '4fee11ab05fc8569ef35c0ce86a60375c903eefb'
* commit '4fee11ab05fc8569ef35c0ce86a60375c903eefb':
  png: Be more informative regarding signature errors

Conflicts:
	libavcodec/pngdec.c

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
2015-08-05 12:10:08 +02:00
Jake Sebastian-Jones
9469370fb3 h264: Use AVERROR return codes instead of -1
And report why it fails.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-08-05 11:40:30 +02:00
Michael Niedermayer
e5774f28d1 avcodec/dvbsubdec: Do not stop decoding at a invalid depth
This corrects parsing the later elements

Fixes Ticket4754

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-08-05 00:16:43 +02:00
Timo Rothenpieler
2ae45816b2 avcodec/nvenc: Add support for 2pass rc in vbr mode
Thanks to WereCatf for pointing out this now exists.

Github: Closes #143
2015-08-04 21:38:10 +02:00
Timo Rothenpieler
3a20e5bc3b avcodec/nvenc: Only set h264 parameter when encoding h264 2015-08-04 21:38:10 +02:00
Timo Rothenpieler
bef740688d avcodec/nvenc: Fix indentation 2015-08-04 21:38:10 +02:00
Hendrik Leppkes
bec062e57c wmv2enc: remove duplicate priv_class in codec definition 2015-08-04 21:35:54 +02:00
Henrik Gramner
f0b7882ceb x86inc: Drop SECTION_TEXT macro
The .text section is already 16-byte aligned by default on all supported
platforms so `SECTION_TEXT` isn't any different from `SECTION .text`.
2015-08-04 20:13:09 +02:00
Henrik Gramner
826790f596 x86inc: Support arbitrary stack alignments
Change ALLOC_STACK to always align the stack before allocating stack space for
consistency. Previously alignment would occur either before or after allocating
stack space depending on whether manual alignment was required or not.
2015-08-04 20:13:09 +02:00
Philip Langdale
f038bbd4ed avcodec/vdpau_hevc: Properly signal the num_delta_pocs from the SPS RPS
This is the same fix that Hendrik made to dxva2_hevc. It should be
equally required here, although I don't see any visual difference.
Nevertheless, best to stay consistent.
2015-08-04 08:22:19 -07:00
Philip Langdale
aa10f0aab0 avcodec/vdpau_hevc: Remove experimental flag
The latest nvidia 355.06 drivers fixes the interleaving bug when
video surfaces are rendered. It still seems to be broken for
read-back with getBits but that's sufficiently uninteresting that
I don't think we need to wait for it to remove the flag.
2015-08-04 08:22:19 -07:00
Shivraj Patil
dec16372df avcodec/mips: MSA (MIPS-SIMD-Arch) optimizations for VP8 functions
Signed-off-by: Shivraj Patil <shivraj.patil@imgtec.com>
2015-08-04 11:15:06 -04:00
Carl Eugen Hoyos
087c0a0a93 lavc/dvbsub: Do not fail on clut depth 0.
Fixes ticket #4752.
2015-08-04 15:01:22 +02:00
Michael Niedermayer
3f87a17063 avcodec/dvbsubdec: Allow selecting the substream, or all substreams
Fixes Ticket 2161

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-08-04 14:24:13 +02:00
Michael Niedermayer
e322b7061f avcodec/dcaenc: clear bitstream end
This avoids leaving uninitialized bits in the output

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-08-04 04:16:43 +02:00
Michael Niedermayer
d903b62750 avcodec/internal: improve min_size documentation for ff_alloc_packet2()
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-08-04 04:16:43 +02:00
James Almer
5750d6c5e9 x86: move XOP emulation code back to x86inc
Only two functions that use xop multiply-accumulate instructions where the
first operand is the same as the fourth actually took advantage of the macros.

This further reduces differences with x264's x86inc.

Reviewed-by: Ronald S. Bultje <rsbultje@gmail.com>
Signed-off-by: James Almer <jamrial@gmail.com>
2015-08-03 17:11:13 -03:00
Hendrik Leppkes
5d324dae11 dxva2_hevc: properly signal the num_delta_pocs from the SPS RPS
ucNumDeltaPocsOfRefRpsIdx needs to contain the flat value from the SPS RPS,
and not the final computed value from the slice header RPS, as this calculation
is done internally by the driver again.

Sample-Id: http://trailers.divx.com/hevc/Sintel_4k_27qp_24fps_1aud_9subs.mkvi
2015-08-03 15:48:21 +02:00
Michael Niedermayer
8bdd0dbd60 avcodec/videotoolbox: Add missing AV_ prefix to CODEC_ID in comment
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-08-03 14:47:11 +02:00
Michael Niedermayer
6b0fa73b4d avcodec/videotoolbox: Fix bistream typo
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-08-03 14:46:24 +02:00
Michael Niedermayer
4302a92835 avcodec/pcm: Better min_size for ff_alloc_packet2()
33318 -> 30601 decicycles

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-08-03 14:31:03 +02:00
Michael Niedermayer
fdc2385ca9 avcodec/libwebpenc_animencoder: Use ff_alloc_packet2()
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-08-03 14:31:03 +02:00