Commit Graph
100 Commits
Author SHA1 Message Date
Luca Barbato 79fdbfdb3e img2enc: Refactor the atomic renaming code
And use it for the separate-plane side-feature as well.

Bug-Id: 935
2016-04-19 20:30:48 +02:00
Luca Barbato f3fdef108e ape: Avoid undefined behaviour
Avoid the clang warning

"warning: shifting a negative signed value is undefined"
2016-04-19 20:22:31 +02:00
Luca Barbato 6b2ad3ca48 indeo3: Avoid undefined behaviour
Avoid the clang warning

"warning: shifting a negative signed value is undefined"
2016-04-19 19:00:41 +02:00
Luca Barbato e3453fd444 matroska: Write the field order information
And bump the document version to 4.
2016-04-03 19:36:57 +02:00
Luca Barbato 1db8eb1549 avconv: Drop an unused variable 2016-04-01 05:30:22 +02:00
Luca Barbato 5f02266681 matroska: Support interlaced content correctly
The matroska specification now has two elements for it.
2016-03-31 18:03:21 +02:00
Luca Barbato 9765549f55 mpegts: Forward the errors on mpeg4 objects parsing
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2016-03-20 01:04:12 +01:00
Luca Barbato 1098f5c049 svq3: Use a separate buffer for decoding the slices
The AVPacket.data should be considered read-only.
2016-03-16 13:09:23 +01:00
Luca Barbato 8b4b1c1eea matroska: Support V_QUICKTIME as written in the specification
Check if the size is written the first 4 bytes and read the next 4
as fourcc candidate, fallback checking the initial for 4 bytes.

"The CodecPrivate contains all additional data that is stored in the
'stsd' (sample description) atom in the QuickTime file after the
mandatory video descriptor structure (starting with the size and FourCC
fields)"

CC: libav-stable@libav.org
2016-03-15 16:06:35 +01:00
Luca Barbato 92c1a83ee9 qsv: Fix loading multiple plugins
av_get_token does not strip the trailing separator.
2016-03-15 16:05:19 +01:00
Luca Barbato 7e01d48cfd mov: Check the entries value when parsing dref boxes
And properly reset the entries count when resetting the entries.

CC: libav-stable@libav.org

Bug-Id: 929
Bug-Id: CVE-2016-3062
2016-03-11 14:29:13 +01:00
Luca Barbato 59b9d2f684 configure: Add support for clang llvm-cov 2016-03-07 16:59:00 +01:00
Luca Barbato c11a858626 configure: Support msan as toolchain 2016-03-07 16:59:00 +01:00
Luca BarbatoandVittorio Giovara 39a2d3288e mpegvideo: Refactor emulated_edge_mc calls 2016-03-05 08:26:36 -05:00
Luca BarbatoandVittorio Giovara 0242351390 mpegvideo: Fix undefined negative shifts in mpeg_motion_internal
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2016-03-05 08:26:36 -05:00
Luca BarbatoandVittorio Giovara 7d4a1ff344 mpegvideo: Fix undefined negative shifts in ff_init_block_index
Found-by: gcc5-ubsan.

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2016-03-05 08:26:36 -05:00
Luca BarbatoandDiego Biurrun f8c34f4b8d indeo2: Fix banding artefacts
Rename luma table to delta table and change how it is used.

CC: libav-stable@libav.org
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2016-03-01 13:50:24 +01:00
Luca BarbatoandDiego Biurrun d4066a7024 indeo2data: K&R formatting cosmetics
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2016-03-01 13:46:00 +01:00
Luca Barbato ce9d7da765 qsv: Move down the implementation query
The plugin loaded may not match the general implementation capability
wise.
2016-02-26 10:28:42 +01:00
Luca Barbato bf7be043fc matroska: Always consider S_TEXT/UTF8 as SRT when demuxing
Reported-By: Maxim Koitsov <maksbotan@gentoo.org>
2016-02-22 09:40:16 +01:00
Luca Barbato f273f7fb25 mkv: Force the full parsing of mp3
Some muxer might or might not fit incomplete mp3 frames in
their packets.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2016-02-19 17:35:33 +01:00
Luca Barbato 3ef98937f5 mov: Force the full parsing of mp3
Some muxer might or might not fit incomplete mp3 frames in
their packets.

Bug-Id: 899

CC: libav-stable@libav.org

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2016-02-19 17:35:26 +01:00
Luca Barbato 2edc718723 configure: Relax the implication of --enable for components
Do not error out if some subcomponents cannot be enabled.

Reported-By: RT|AO
2016-02-15 17:57:43 +01:00
Luca Barbato a2bb771a3c configure: Restore the --enable-everything behaviour
Make sure that the minimum set of dependencies needed by the tools
and the examples are enabled.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2016-02-14 11:44:57 +01:00
Luca Barbato 5e1beec944 configure: Print which libraries will be built
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2016-02-14 11:44:57 +01:00
Luca Barbato 21c750f240 configure: Use require for the non-component options
And make sure to enable all the components needed

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2016-02-14 11:44:57 +01:00
Luca Barbato 5eb562831b mov: Use the correct type for size
An AVIO offset is int64_t.

Bug-Id: 921
2016-02-14 11:44:38 +01:00
Luca Barbato e579d8b29c lavf: Dump the cpb side data information 2016-02-13 14:03:52 +01:00
Luca Barbato 99214d42a9 dnxhd: Make the encoder message friendlier 2016-02-09 20:02:31 +01:00
Luca Barbato a38a4f44b5 configure: Support MSYS2 mingw-w64 64bit 2016-02-06 12:07:47 +01:00
Luca Barbato e280fe1329 v210: Use separate sample_factors
The 10bit and the 8bit functions can now be implemented to process
a different amount of samples.

And while at it simplify a little the code.
2016-02-01 13:40:07 +01:00
Luca Barbato eafb05fcf3 v210: x86: Add the correct guards around the asm code
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2016-01-26 23:31:57 +01:00
Luca Barbato eef9f06508 avplay: Allow to override the codec
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2016-01-25 09:12:02 +01:00
Luca Barbato 6fa464f8d2 avplay: Statically allocate the player state
And move the resource deallocation in stream_open failure path.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2016-01-25 09:12:02 +01:00
Luca Barbato 611ba89b89 avplay: Rename cur_stream to player
The name was misleading.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2016-01-25 09:12:02 +01:00
Luca Barbato 21bbc345cc avplay: Rename VideoState to PlayerState
The structure is not video-specific.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2016-01-25 09:12:02 +01:00
Luca Barbato fdd464cb70 avplay: Allocate the refresh thread next to the decode thread
It does not belong to the stream setup.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2016-01-25 09:12:02 +01:00
Luca Barbato f22f900594 avplay: Move the stream setup in the main thread
And refactor the code in preparation of the following
patches.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2016-01-25 09:10:34 +01:00
Luca Barbato c0c4d7a0a5 configure: Correctly add openssl cflags and libs 2016-01-23 14:34:06 +01:00
Luca Barbato e93aa2c9e7 configure: Force-enable select_any dependencies only on --enable
Unbreak --enable-gnutls enabling tls_openssl_protocol

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2016-01-21 21:24:33 +01:00
Luca Barbato 8e7bea6dc6 configure: Improve requesting specific features
Before this patch trying to enable only https by issuing

    --disable-protocols --enable-protocol=https --enable-gnutls

does not enable https, and

    --disable-all --enable-protocols

does not enable libavformat and the protocols component.

Now the default-enabled options are set after the explicitly
disabled/enabled options are evaluated.

If an explicitly enabled option cannot be enabled configure
will fail printing an error message.
2016-01-21 01:04:24 +01:00
Luca Barbato e59708bb9d configure: mips: Support both-endian compilers
Use mips{,64}eb to force big endian and mips{,64}el to force little
endian.
2016-01-19 20:47:49 +01:00
Luca Barbato c4de754d4d mathops: mips: Correctly enable loongson-specific assembly
The code wrongly assumed that the instructions used are supported
on mips64, while it is supported only on loongson cpus.
2016-01-19 20:47:49 +01:00
Luca Barbato 8fd361f53b configure: Use pkg-config to check for openssl 2016-01-19 20:47:49 +01:00
Luca Barbato 40d43d25e7 APIchanges: Add missing av_pix_fmt_get_chroma_sub_sample entry 2016-01-11 20:53:12 +01:00
Luca Barbato 63f7f8d1db avconv: Drop an impossible check
EAGAIN is already managed in poll_filters().

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2016-01-04 16:58:32 +01:00
Luca Barbato 7ebf1b4ada avconv: Simplify poll_filters() return value check
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2016-01-04 16:58:32 +01:00
Luca Barbato 81c95eb8ee openh264: Directly include the deprecation guards header
Make easier to avoid compile failure when reworking the internal
headers.
2015-12-08 18:12:33 +01:00
Luca Barbato 34138ece23 log: Use a do {} while (0) for tlog
Avoid the warning `-Wempty-body`.
2015-12-08 11:26:21 +01:00
Luca Barbato 6788baebb3 log: Use a do {} while (0) for dlog
Avoid the warning `-Wempty-body`.
2015-12-05 13:47:09 +01:00
Luca Barbato 7d36474d19 imgconvert: Re-enable the deprecation warnings
The end-marked was typoed in

f7edcac040
2015-12-05 13:31:38 +01:00
Luca Barbato f7edcac040 avpicture: Suppress warning from deprecated code 2015-12-05 13:12:27 +01:00
Luca Barbato b805482b1f aac: Provide more information on the failure message
Bug-Id: 761
2015-12-05 13:11:36 +01:00
Luca Barbato c5eb279e24 g723: Add missing header
Unbreak make check.
2015-12-05 12:12:26 +01:00
Luca Barbato 5f3a081b42 avi: Spin out the logic to position to the next non-interleaved stream
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-12-02 23:49:10 +01:00
Luca Barbato cb49bb10ca build: Move -Wcast-qual to the extra_warnings
It amounts to about 1/2 of the warnings generated and does not help
spotting anything useful.
2015-12-02 23:49:10 +01:00
Luca Barbato d017ed878a avi: Use the correct data type
avio_tell returns an int64_t.
2015-12-02 23:49:10 +01:00
Luca Barbato a0fa6d06b8 matroska: Warn when metadata references a non-existent element
Avoid some confusion when the information is not present.

Bug-Id: 902
2015-11-28 17:02:15 +01:00
Luca Barbato f7986239f4 dvenc: Validate the frame size before copying it 2015-11-28 17:02:15 +01:00
Luca Barbato b0e8651a2a doc: Amend the MSYS2 Documentation
Explain better which environment is discouraged and mention the
shortcuts names.
2015-11-26 10:55:35 +01:00
Luca Barbato 9f57f134c1 configure: ObjC support
Assume that the default C compiler and the default ObjC compiler match
(default for OSX).

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-11-26 10:39:15 +01:00
Luca Barbato 0e2395293b nut: Mark non-fatal errors as warnings
And make one more informative.
2015-11-25 09:01:25 +01:00
Luca Barbato 62f72b40c0 nut: Provide more information on failure 2015-11-25 09:01:25 +01:00
Luca Barbato 2c17fb61ce rtsp: Log getaddrinfo failures
And forward the logging contexts when needed.
2015-11-25 09:01:25 +01:00
Luca Barbato 12b1438286 udp: Provide additional information on getaddrinfo failure 2015-11-25 09:01:25 +01:00
Luca Barbato 34af7813f7 udp: Use the logging context 2015-11-25 09:01:25 +01:00
Luca Barbato 98063bcf15 rtsp: Do not assume getnameinfo cannot fail
And properly report the error when it happens.
2015-11-25 09:01:25 +01:00
Luca Barbato 6b7df14251 doc: Document better how to use MSYS2 2015-11-23 13:05:09 +01:00
Luca Barbato afdff80081 configure: Clearly state that MSYS native builds are discouraged
MSYS, as per cygwin, by default uses a custom posix abstraction
in the form of a "msys2.dll". Programs build that way are harder to
distribute and use.

MSYS2 provides alternate launcher scripts that provide a MINGW
environment nearly out of box.
2015-11-21 22:18:57 +01:00
Luca Barbato 5c30ae1a09 dvdsubdec: Validate the RLE offsets
CC: libav-stable@libav.org
2015-11-17 18:56:29 +01:00
Luca Barbato e2854e731f avresample: Document avresample_open() a little better
Bug-Id: 911
2015-11-05 17:25:46 +01:00
Luca Barbato 50d2a3b5f3 flashsv: Initialize the block array
Otherwise flashsv2_prime could be fed random data.

Bug-Id: 908
CC: libav-stable@libav.org

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-11-02 16:29:46 +01:00
Luca Barbato de41b555cd truemotion2: Fix the buffer check
The variable skip contains the expected size in bytes.

Bug-Id: 906
CC: libav-stable@libav.org

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-11-02 16:29:14 +01:00
Luca Barbato 4a32692338 mimic: Always return on failure
Bug-Id: 905
CC: libav-stable@libav.org

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-11-02 16:28:31 +01:00
Luca Barbato 452d659aa4 msnwc_tcp: Use the correct return values
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-11-02 16:27:42 +01:00
Luca Barbato f8d10511fe cosmetics: msnwc_tcp: Reformat
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-11-02 16:27:31 +01:00
Luca Barbato 4dfbc7a755 msnwc_tcp: Correctly report failure
And prevent a memory leak

CC: libav-stable@libav.org

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-11-02 16:26:37 +01:00
Luca Barbato 60f50374f1 rpza: Check the blocks left before processing one
Bug-Id: 903
CC: libav-stable@libav.org
Reported-By: Mateusz "j00ru" Jurczyk and Gynvael Coldwind

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-11-02 16:26:04 +01:00
Luca Barbato 0b699920f3 lagarith: Correctly compute hash_shift
All the values are unsigned.

Bug-Id: 907
CC: libav-stable@libav.org

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-11-02 16:25:17 +01:00
Luca Barbato 1e7ff5ac69 nut: Use the correct codec_tag when multiple are available
Some codecs use the codec_tag to signal specific information and
picking the first one would lead to a broken file.

Bug-Id: 883
CC: libav-stable@libav.org

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-11-02 12:10:38 +01:00
Luca Barbato a0562e5317 configure: Add a SONAME entry for the android target
In order to load libraries in Android they need to be unversioned.
The android target section was derived from the BSD ones, and they
that simply drop the SONAME

Android M requires to have a SONAME entry but unversioned.
2015-10-30 13:02:02 +01:00
Luca Barbato f3aff31e5f avpicture: Deprecate the single fields
Silence pointless warnings from gcc.
2015-10-27 21:53:26 +01:00
Luca Barbato a9a6010637 avpacket: Provide an alloc and a free function for the struct
Pave the way for having the size of the AVPacket struct not part
of the ABI.
2015-10-26 18:00:55 +01:00
Luca Barbato 9b56d5c114 avpacket: Deprecate av_dup_packet
As documented, `av_dup_packet` is broken by design, `av_packet_ref`
matches the AVFrame ref-counted API and can be safely used instead.
2015-10-26 18:00:55 +01:00
Luca Barbato d584533cf3 avformat: Rework add_to_pktbuf
Make it return an error and check its return value when it is used.
Simplify the usage by calling `av_packet_ref` internally when needed.
2015-10-26 18:00:55 +01:00
Luca Barbato ce70f28a17 avpacket: Replace av_free_packet with av_packet_unref
`av_packet_unref` matches the AVFrame ref-counted API and can be used as
a drop in replacement.

Deprecate `av_free_packet`.
2015-10-26 18:00:55 +01:00
Luca Barbato a5d4204309 avformat: Always return ref-counted AVPacket
And drop the av_dup_packet from the input_thread.
2015-10-26 18:00:55 +01:00
Luca Barbato f0ca6ffa0a avprobe: Unref the packet once it is used
Make sure it does not leak packets.

CC: libav-stable@libav.org
2015-10-26 18:00:54 +01:00
Luca Barbato 18f9308e6a mpjpeg: Cope with multipart lacking the initial CRLF
Some server in the wild do not put the boundary at a newline
as rfc1347 7.2.1 states.
Cope with that by reading a line and if it is not empty reading
a second one.

Reported-By: bitingsock
2015-10-23 11:56:38 +02:00
Luca Barbato 22f4d9c303 img2enc: Make sure the images are atomically written
Users that want to generate a live-preview and serve it
would otherwise get partial images.
2015-10-23 11:55:14 +02:00
Luca Barbato 1ec72c6c68 libx264: Make sure the extradata are padded 2015-10-23 11:13:35 +02:00
Luca BarbatoandVittorio Giovara ef3a3519c1 rawdec: Replace avpicture functions with imgutils
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2015-10-21 11:59:33 +02:00
Luca BarbatoandVittorio Giovara fcc1280acb rawenc: Replace avpicture functions with imgutils
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2015-10-21 11:59:07 +02:00
Luca Barbato b52307933b wrapped_avframe: Drop a now-unused variable 2015-10-16 17:45:09 +02:00
Luca Barbato 49d7fcd774 mpeg12: Unbreak building stale code
Broken in 2d59159508
2015-10-16 17:45:09 +02:00
Luca Barbato c53e796f8b thread: Provide no-op variants for pthread_once 2015-10-14 14:35:34 +02:00
Luca Barbato 08377f9c3b dxva: Include last the internal header
It redefines _WIN32_WINNT, possibly causing problems with the
w32pthreads.h header.
2015-10-14 14:35:34 +02:00
Luca Barbato 34ed5c2e4d avformat: Do not use AVFMT_RAWPICTURE
There are no formats supporting it anymore and it is deprecated.
Update the documentation accordingly.
2015-10-13 13:43:29 +02:00
Luca Barbato b9ece15a01 nullenc: Use the wrapped avframe pseudo-encoder 2015-10-10 14:50:42 +02:00
Luca Barbato d00a8fd417 yuv4mpeg: Use the wrapped avframe pseudo-encoder 2015-10-10 14:50:42 +02:00