33196 Commits

Author SHA1 Message Date
Michael Niedermayer
d08d8b61aa dds: Fix 32bpp bitmaps decoding
Found-By: ami_stuff
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2015-07-22 13:35:44 +01:00
Vittorio Giovara
57214b2f7f dds: Fix palette decoding
Red and blue channels were decoded in the wrong order.

Found-By: ami_stuff
2015-07-22 13:35:44 +01:00
Vittorio Giovara
ea4d46e729 dds: Fix enum declaration
Drop the global variables with anonymous enum type.
2015-07-22 13:35:43 +01:00
Anton Khirnov
ecee1148af qsvenc_hevc: use the correct HW plugin UID 2015-07-22 12:11:46 +02:00
周晓勇
3e35f8efa1 avcodec: loongson optimize pixblockdsp with mmi
Signed-off-by: ZhouXiaoyong <zhouxiaoyong@loongson.cn>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-07-22 12:11:31 +02:00
Niklesh
d373b508b5 movtextenc.c: Add support for text highlighting
This patch takes care of the secondary color changes in ASS through highlight and hilightcolor boxes.

Signed-off-by: Niklesh <niklesh.lalwani@iitb.ac.in>
2015-07-21 20:13:40 -07:00
Niklesh
93e80a343b movtextenc.c: Reorganize the code for easier maintenance
This patch reorganizes the code to make it easier to add support for different text modifier boxes and other styles in the future.

Signed-off-by: Niklesh <niklesh.lalwani@iitb.ac.in>
2015-07-21 20:13:40 -07:00
Michael Niedermayer
8fe00dd18a Merge commit '6b2b26e7af3ede0abfb46eb5725c26d1083f50bc'
* commit '6b2b26e7af3ede0abfb46eb5725c26d1083f50bc':
  dds: Decode using optimal slices sizes

Merged-by: Michael Niedermayer <michael@niedermayer.cc>
2015-07-21 20:35:59 +02:00
Michael Niedermayer
2de5737ee2 Merge commit '977105407cae55876041dddbf4ce0934cdd4cd6c'
* commit '977105407cae55876041dddbf4ce0934cdd4cd6c':
  hap: Decode using optimal slices sizes

Merged-by: Michael Niedermayer <michael@niedermayer.cc>
2015-07-21 20:21:54 +02:00
James Almer
d32547a24a avcodec/utils: silence some deprecation warnings
And prevent eventual compilation failures once the relevant functions
and fields are removed.

Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: James Almer <jamrial@gmail.com>
2015-07-21 13:03:29 -03:00
James Almer
3e46c7dbbe avcodec/options-test: don't alloc avctx->coded_frame
It's done automatically by avcodec_open2() now.
Fixes memleaks in fate-libavcodec-options.

Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: James Almer <jamrial@gmail.com>
2015-07-21 13:03:25 -03:00
周晓勇
c303ad85a9 avcodec: loongson optimize blockdsp with mmi
Signed-off-by: ZhouXiaoyong <zhouxiaoyong@loongson.cn>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-07-21 17:50:19 +02:00
Tom Butterworth
5d0616ce0e avcodec/hapdec: log reason for failure when texture type doesn't match stream
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-07-21 14:54:25 +02:00
周晓勇
b50910e9a9 avcodec: loongson optimize xvid idct with mmi
Signed-off-by: ZhouXiaoyong <zhouxiaoyong@loongson.cn>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-07-21 14:48:23 +02:00
周晓勇
21e2f030bf avcodec: loongson move simple idct functions to a separate file
Signed-off-by: ZhouXiaoyong <zhouxiaoyong@loongson.cn>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-07-21 14:48:18 +02:00
Rostislav Pehlivanov
331c1e7494 aacenc: move the generation of ff_aac_pow34sf_tab[]
This commit moves the generation of ff_aac_pow34sf_tab[] out of the
encoder and into the table generator. The original commit log for
this table in 2011 actually mentions that it should be moved outside
but this never happened.

This is the first commit which cleans up the encoder a little.

Reviewed-by: Claudio Freire <klaussfreire@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-07-21 13:53:04 +02:00
Luca Barbato
6b2b26e7af dds: Decode using optimal slices sizes
Enjoy some cache locality and use less threads.
About the same speedup provided to HAP.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-07-21 12:14:25 +02:00
Luca Barbato
977105407c hap: Decode using optimal slices sizes
Enjoy some cache locality and use less threads.
About 5x speedup (from 60ms to 12ms to decode a 4k frame).

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-07-21 12:14:25 +02:00
Tom Butterworth
6b96c70f2d avcodec/hapdec: don't log texture format every frame, do it once per decode session
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-07-21 03:25:01 +02:00
Tom Butterworth
440c26e9c4 libavcodec/hap: remove unused struct member
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-07-21 03:15:04 +02:00
Tom Butterworth
d8488090e5 libavcodec/hap: Name enums
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-07-21 03:14:53 +02:00
James Almer
651448a8a7 avcodec/aacsbr: fix compilation with hardcoded tables
Reviewed-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: James Almer <jamrial@gmail.com>
2015-07-20 21:01:19 -03:00
Michael Niedermayer
5d5f8b29b4 Merge commit 'f56d8d8dd72b1ab52aa814c5a0fccabf8040ef68'
* commit 'f56d8d8dd72b1ab52aa814c5a0fccabf8040ef68':
  h264: aarch64: intra prediction optimisations

Conflicts:
	libavcodec/h264pred.c

Merged-by: Michael Niedermayer <michael@niedermayer.cc>
2015-07-21 01:39:30 +02:00
Michael Niedermayer
495eee0123 Merge commit '40cf1bbacc6220a0aa6bed5c331871d43f9ce370'
* commit '40cf1bbacc6220a0aa6bed5c331871d43f9ce370':
  Deprecate avctx.coded_frame

Conflicts:
	ffmpeg.c
	libavcodec/a64multienc.c
	libavcodec/asvenc.c
	libavcodec/cljrenc.c
	libavcodec/dpxenc.c
	libavcodec/gif.c
	libavcodec/mpegvideo_enc.c
	libavcodec/nvenc.c
	libavcodec/proresenc_kostya.c
	libavcodec/pthread_frame.c
	libavcodec/rawenc.c
	libavcodec/sunrastenc.c
	libavcodec/tiffenc.c
	libavcodec/version.h
	libavcodec/xbmenc.c
	libavcodec/xwdenc.c
	libavdevice/v4l2.c

Merged-by: Michael Niedermayer <michael@niedermayer.cc>
2015-07-21 01:17:15 +02:00
Michael Niedermayer
809780ca42 avcodec/utils: Do not merge side data for encoders
With side data now being added to every MPEG*/H26* video encoder
in the form of a quality scalar, software which simply stores
the pkt->data to get an ES stream would break.
This also as a side-effect makes the code faster

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-07-21 00:54:59 +02:00
Michael Niedermayer
e5bae39f46 Merge commit '5d3addb937946eca5391e40b5e6308e74ac6f77b'
* commit '5d3addb937946eca5391e40b5e6308e74ac6f77b':
  Add a quality factor packet side data

Conflicts:
	doc/APIchanges
	ffmpeg.c
	libavcodec/avcodec.h
	libavcodec/mpegvideo_enc.c
	libavcodec/version.h

Merged-by: Michael Niedermayer <michael@niedermayer.cc>
2015-07-21 00:54:42 +02:00
Michael Niedermayer
b1fad7ac20 Merge commit 'd6604b29ef544793479d7fb4e05ef6622bb3e534'
* commit 'd6604b29ef544793479d7fb4e05ef6622bb3e534':
  Gather all coded_frame allocations and free functions to a single place

Conflicts:
	libavcodec/a64multienc.c
	libavcodec/asvenc.c
	libavcodec/cljrenc.c
	libavcodec/dpxenc.c
	libavcodec/dvenc.c
	libavcodec/gif.c
	libavcodec/huffyuvenc.c
	libavcodec/jpeglsenc.c
	libavcodec/libopenjpegenc.c
	libavcodec/libtheoraenc.c
	libavcodec/libvpxenc.c
	libavcodec/mpegvideo_enc.c
	libavcodec/nvenc.c
	libavcodec/pngenc.c
	libavcodec/proresenc_kostya.c
	libavcodec/sunrastenc.c
	libavcodec/tiffenc.c
	libavcodec/utils.c
	libavcodec/utvideoenc.c
	libavcodec/v210enc.c
	libavcodec/v410enc.c
	libavcodec/xbmenc.c

Merged-by: Michael Niedermayer <michael@niedermayer.cc>
2015-07-20 23:43:05 +02:00
Janne Grunau
9ed6f9a17c arm: use a local label instead of the function symbol in ff_prefetch_arm
Avoids a relocation which might end out of range for thumb2.

Reported-By: Ludovic Fauvet <etix@videolan.org>
Bug-Id: https://bugs.webkit.org/show_bug.cgi?id=137022
CC: libav-stable@libav.org
2015-07-20 23:10:29 +02:00
Janne Grunau
f56d8d8dd7 h264: aarch64: intra prediction optimisations 2015-07-20 23:10:29 +02:00
Michael Niedermayer
439c9760b0 Merge commit '91f9b6579ac684c4b51c4cd0dbaed0a4f8295edf'
* commit '91f9b6579ac684c4b51c4cd0dbaed0a4f8295edf':
  flashsvenc: Keep coded_frame.key_frame a write-only variable

Merged-by: Michael Niedermayer <michael@niedermayer.cc>
2015-07-20 22:36:22 +02:00
Michael Niedermayer
b97e3e11a9 Merge commit '10a9149de242c7bbc4e130d3d7c593b89e20f80e'
* commit '10a9149de242c7bbc4e130d3d7c593b89e20f80e':
  ffv1enc: Keep coded_frame.key_frame a write-only variable

Conflicts:
	libavcodec/ffv1.h
	libavcodec/ffv1enc.c

Merged-by: Michael Niedermayer <michael@niedermayer.cc>
2015-07-20 22:25:53 +02:00
Michael Niedermayer
256430cf38 Merge commit 'efc618aff9d68d2ddc323a5c5f892ac71951f162'
* commit 'efc618aff9d68d2ddc323a5c5f892ac71951f162':
  qtrleenc: Keep coded_frame.key_frame a write-only variable

Conflicts:
	libavcodec/qtrleenc.c

Merged-by: Michael Niedermayer <michael@niedermayer.cc>
2015-07-20 22:14:29 +02:00
Michael Niedermayer
bde7f5b135 Merge commit 'f3b4a92241a33d444f7f6018ebc12e2e3a2d335f'
* commit 'f3b4a92241a33d444f7f6018ebc12e2e3a2d335f':
  libtheoraenc: Keep coded_frame.key_frame a write-only variable

Merged-by: Michael Niedermayer <michael@niedermayer.cc>
2015-07-20 22:13:42 +02:00
Michael Niedermayer
96504b3f72 Merge commit 'd6006dd9f0d4d01023359230212f1f9fa4800e5b'
* commit 'd6006dd9f0d4d01023359230212f1f9fa4800e5b':
  libvpxenc: Do not entangle coded_frame

Conflicts:
	libavcodec/libvpxenc.c

Merged-by: Michael Niedermayer <michael@niedermayer.cc>
2015-07-20 22:05:27 +02:00
Michael Niedermayer
70c648db89 Merge commit '7fc8d8a1b3da1666176b3d92e989ee74f3ef014e'
* commit '7fc8d8a1b3da1666176b3d92e989ee74f3ef014e':
  libxvid: Do not entangle coded_frame

Merged-by: Michael Niedermayer <michael@niedermayer.cc>
2015-07-20 22:01:44 +02:00
Michael Niedermayer
033144c0d1 Merge commit '56672aeaee19216d2fd8eeb9964b1f71f0af2919'
* commit '56672aeaee19216d2fd8eeb9964b1f71f0af2919':
  svq1enc: Do not entangle coded_frame

Conflicts:
	libavcodec/svq1enc.c

Merged-by: Michael Niedermayer <michael@niedermayer.cc>
2015-07-20 21:53:09 +02:00
Michael Niedermayer
f2a581e2ee Merge commit '05fb4c9aaf84b59f8ab1ce8d4c0f49dd12113024'
* commit '05fb4c9aaf84b59f8ab1ce8d4c0f49dd12113024':
  proresenc: Do not entangle coded_frame

Conflicts:
	libavcodec/proresenc_kostya.c

Merged-by: Michael Niedermayer <michael@niedermayer.cc>
2015-07-20 21:44:53 +02:00
Michael Niedermayer
a99f0ad194 Merge commit '91767360d86ac786571593ab11c7291010ab3829'
* commit '91767360d86ac786571593ab11c7291010ab3829':
  a64multienc: Do not entangle coded_frame

Conflicts:
	libavcodec/a64multienc.c

Merged-by: Michael Niedermayer <michael@niedermayer.cc>
2015-07-20 21:40:34 +02:00
Michael Niedermayer
6497aab022 Merge commit '95e2317ed85502dd8d96bcd9b12084dbfb8f9e8e'
* commit '95e2317ed85502dd8d96bcd9b12084dbfb8f9e8e':
  roqvideoenc: Drop unneeded initialization

Conflicts:
	libavcodec/roqvideoenc.c

Merged-by: Michael Niedermayer <michael@niedermayer.cc>
2015-07-20 21:31:42 +02:00
Michael Niedermayer
16b68bd2ee Merge commit '1f171de8cae9d0c527c5f0bae2a597dbd65fd3a4'
* commit '1f171de8cae9d0c527c5f0bae2a597dbd65fd3a4':
  mpegvideo_enc: Drop unnneded initialization

Merged-by: Michael Niedermayer <michael@niedermayer.cc>
2015-07-20 21:20:51 +02:00
Ivan Uskov
264ba3d847 libavcodec/qsvdec.c: missed MFXVideoDECODE_Close() call
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-07-20 19:57:57 +02:00
Djordje Pesut
f85bc147fb avcodec: Implementation of AAC_fixed_decoder (SBR-module)
Add fixed poind code.

Signed-off-by: Nedeljko Babic <nedeljko.babic@imgtec.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-07-20 17:20:16 +02:00
Jovan Zelincevic
b0414da90d avcodec: Table creation for AAC_fixed_decoder (SBR-module)
Create tables for fixed point code.

Signed-off-by: Nedeljko Babic <nedeljko.babic@imgtec.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-07-20 17:20:16 +02:00
Djordje Pesut
5499467d5d avcodec: Template creation for AAC decoder (SBR-module)
Move the existing code to a new template file.

Signed-off-by: Nedeljko Babic <nedeljko.babic@imgtec.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-07-20 17:20:16 +02:00
Niklesh
a927aacbe6 movtextdec.c: Correct the highlight tags
Signed-off-by: Niklesh <niklesh.lalwani@iitb.ac.in>
2015-07-20 08:16:19 -07:00
Vittorio Giovara
40cf1bbacc Deprecate avctx.coded_frame
The rationale is that coded_frame was only used to communicate key_frame,
pict_type and quality to the caller, as well as a few other random fields,
in a non predictable, let alone consistent way.

There was agreement that there was no use case for coded_frame, as it is
a full-sized AVFrame container used for just 2-3 int-sized properties,
which shouldn't even belong into the AVCodecContext in the first place.

The appropriate AVPacket flag can be used instead of key_frame, while
quality is exported with the new AVPacketSideData quality factor.
There is no replacement for the other fields as they were unreliable,
mishandled or just not used at all.

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2015-07-20 15:06:50 +01:00
Vittorio Giovara
5d3addb937 Add a quality factor packet side data
This is necessary to preserve the quality information currently exported
with coded_frame. Add the new side data to every encoder that needs it,
and use it in avconv.

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2015-07-20 15:06:47 +01:00
Donny Yang
0030613d69 avcodec/apngdec: Fix typos in decoder causing incorrect results
Signed-off-by: Donny Yang <work@kota.moe>
2015-07-20 13:46:50 +00:00
Vittorio Giovara
d6604b29ef Gather all coded_frame allocations and free functions to a single place
Allocating coded_frame is what most encoders do anyway, so it makes
sense to always allocate and free it in a single place. Moreover a lot
of encoders freed the frame with av_freep() instead of the correct API
av_frame_free().

This bring uniformity to encoder behaviour and prevents applications
from erroneusly accessing this field when not allocated. Additionally
this helps isolating encoders that export information with coded_frame,
and heavily simplifies its deprecation.

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2015-07-20 14:16:15 +01:00
Vittorio Giovara
91f9b6579a flashsvenc: Keep coded_frame.key_frame a write-only variable 2015-07-20 14:13:42 +01:00