Commit Graph
100 Commits
Author SHA1 Message Date
Luca Barbato ebc29519d1 hwaccel: Support specific frame allocators
It would reduce the boilerplate code users have to write.
2014-05-11 14:59:07 +02:00
Luca Barbato dcbfb7805a probe: Support AAC_LATM in set_codec_from_probe_data 2014-05-03 18:51:37 +02:00
Luca Barbato f66d0c57b1 latm: Add a probe function 2014-05-03 18:51:17 +02:00
Luca Barbato de69aedf99 mathematics: K&R formatting cosmetics 2014-05-03 18:31:18 +02:00
Luca Barbato 3a177a9cca swscale: Fix an undefined behaviour
Prevent a division by zero down the codepath.

Sample-Id: 00001721-google
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2014-05-03 18:25:17 +02:00
Luca Barbato 925c37874b vp9: Read the frame size as unsigned
Sample-Id: 00001723-google
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2014-05-03 18:25:17 +02:00
Luca Barbato a90d92ce2a aac: K&R formatting cosmetics 2014-05-01 13:00:57 +02:00
Luca Barbato c6b42e8549 flv: K&R formatting cosmetics 2014-05-01 13:00:57 +02:00
Luca Barbato 7d027b9d6d librtmp: Map native options to librtmp ones when possible
Makes the two protocols nearly seamless.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2014-04-30 18:56:43 +02:00
Luca Barbato 7266e24f17 hls: Sync the file number with the start sequence 2014-04-30 17:52:49 +02:00
Luca Barbato a16431034d hls: Factor the sequence computation 2014-04-30 17:52:33 +02:00
Luca Barbato c7603b3c24 hls: Print start_number as first sequence value
The option now behaves as expected.
2014-04-30 17:52:17 +02:00
Luca Barbato 87a3ea3192 segment: Report the current media sequence
Useful for debugging mostly.
2014-04-30 17:52:03 +02:00
Luca Barbato 344f7b5a7e hls: Report the current media sequence
Useful for debugging mostly.
2014-04-30 17:51:50 +02:00
Luca Barbato 5a70a783f0 hls: Add an option to prepend a baseurl to the playlist entries
Useful to generate playlists with absolute paths.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2014-04-29 12:14:11 +02:00
Luca Barbato 152b797cd6 flv: Do not mangle dts values for negative cts
Some applications really mean to send negative pts.
2014-04-23 21:20:17 +02:00
Luca Barbato 5d983fdbca flv: Warn only once
No point in sending the message multiple time.
2014-04-23 21:19:27 +02:00
Luca Barbato 374fdc8c07 flv: Improve log messages
Messages should start with a capital letter and possibly end with a "."
if they are statements.
2014-04-23 21:04:20 +02:00
Luca Barbato f1b239ec8b drawtext: Add fontconfig support
Introduce the `font` option and make it optional to pass a fontfile.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2014-04-17 00:41:30 +02:00
Luca Barbato a7448064c5 mp2: Do not force a samplerate
The default should be not to resample.
2014-04-11 00:09:34 +02:00
Luca BarbatoandVittorio Giovara e6e8be542b doc: Completely document the x264 options
And fix an option mismatch.
2014-04-08 23:24:42 +02:00
Luca BarbatoandVittorio Giovara 0d671ade99 doc: Use a 3 columns multitable
Make the html output much nicer.
2014-04-08 23:24:42 +02:00
Luca BarbatoandVittorio Giovara be59675add doc: Change the multitable rendering in texi2pod
Makes it working better for our documentation purposes.
2014-04-08 23:24:42 +02:00
Luca BarbatoandJanne Grunau e10fd08aa7 h264: Refactor decode_nal_units 2014-04-06 23:33:17 +02:00
Luca BarbatoandVittorio Giovara ad8f736b74 mxf: Remove typo
Reported-By: Vittorio Giovara <vittorio.giovara@gmail.com>
2014-04-03 23:45:05 +02:00
Luca BarbatoandVittorio Giovara 9464b69da6 log: Unbreak windows support
Add the missing define.
2014-04-03 23:43:47 +02:00
Luca BarbatoandMichael Niedermayer 061e340c05 log: Factorize check_color_terminal() out 2014-04-03 20:04:34 +02:00
Luca BarbatoandVittorio Giovara 4ede1862dc log: Do not assume the TERM variable is always set 2014-04-03 18:43:25 +02:00
Luca BarbatoandVittorio Giovara 42ba1c51d9 log: Document AV_LOG_C usage
And move outside the wrong doxygen group.
2014-04-03 18:43:24 +02:00
Luca BarbatoandVittorio Giovara 28b9ac4e48 log: Remove undefined behaviour 2014-04-03 18:43:24 +02:00
Luca Barbato 7763118cae log: Support for 256color terminals
And provide extended coloring capabilities for debugging.
The default colors do not change in 256 more to keep
supporting people using Black on White, White on Black and
Solarized terminals.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2014-04-03 15:54:49 +02:00
Luca Barbato 006c253346 doc: Fit the graph in 80 cols
Some man pagers do not reflow the text/graphs on resize
and the graphs did not fit the traditional 80cols due
the pod2man excessive indent.
2014-04-03 11:49:30 +02:00
Luca Barbato 85698be461 cmdutils: Mark exit_program as av_noreturn 2014-03-28 00:40:43 +01:00
Luca BarbatoandJanne Grunau f51d0f39c0 h264: Split h264 slice decoding from nal decoding 2014-03-23 22:41:12 +01:00
Luca BarbatoandJanne Grunau ede2b451cc build: Sort h264 objects 2014-03-23 22:41:11 +01:00
Luca BarbatoandJanne Grunau fb7127b2c8 build: h264 parser depends on full h264 decoder 2014-03-23 22:41:11 +01:00
Luca Barbato 0f0d1d056e configure: Always use -DOPJ_STATIC when checking for openjpeg
Unbreaks windows systems not providing pkgconf files.

Reported-By: Rafaël Carré <funman@videolan.org>
2014-03-23 01:14:31 +01:00
Luca Barbato af9481d701 mxf: Lowercase UL strings
The specification uses lower case most of the time.
2014-03-19 12:04:15 +01:00
Luca Barbato 6920fb2b33 mxf: Verbose debug logging
Print the UL in code format and in the short format used by the
specification.
2014-03-19 12:04:06 +01:00
Luca Barbato 842ea36c74 mxf: Override faulty PreviousPartition entries
Some files set the PreviousPartition field to point to its own offset.

If we are parsing forward the Previous partition is immediately known
and its value could be used, otherwise we can safely point to the
header.

Reported-By: Jean Baptiste Kempf <jb@videolan.org>
2014-03-19 11:56:33 +01:00
Luca Barbato 92ebb33215 mxf: Add additional H264 PictureEssenceCoding
Unbreak some MXF Proxy files.
2014-03-19 11:51:08 +01:00
Luca BarbatoandVittorio Giovara afdf94689c aac: K&R formatting cosmetics
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2014-03-14 01:24:31 +01:00
Luca Barbato 81498ceb5b avconv: Match stream id
Quite useful to select by pid in MPEG-TS.
2014-03-13 11:59:34 +01:00
Luca BarbatoandVittorio Giovara aa80742539 configure: Support older version of openjpeg1
It should work best for debian stable and people not installing the .pc
file.
2014-03-12 14:06:21 +01:00
Luca Barbato 8075c3d8bb http: Add support reading ICY metadata
Export the metadata as a icy_metadata_packet avoption.
Based on the work of wm4 and Alessandro Ghedini.

Bug-Id: https://bugs.debian.org/739936

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2014-03-11 22:08:57 +01:00
Luca Barbato 4ff99ab3d7 http: Refactor process_line 2014-03-11 22:08:56 +01:00
Luca Barbato 7a2fddb448 http: K&R formatting cosmetics 2014-03-11 22:08:56 +01:00
Luca Barbato 78b21c1d71 http: Drop doxy comments 2014-03-11 22:08:56 +01:00
Luca Barbato 55a215ba63 http: Return meaningful error codes 2014-03-11 22:08:56 +01:00
Luca Barbato 390acbea06 configure: Provide --pkg-config-flags
Should be used only to pass extra flags to pkgconf invocation,
e.g. --static.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2014-03-11 21:55:11 +01:00
Luca Barbato db9d39b4b5 avformat: Report the duration analysis reached 2014-03-11 21:55:11 +01:00
Luca BarbatoandDiego Biurrun 5926603ad6 configure: Document --pkg-config option 2014-03-11 19:52:40 +01:00
Luca Barbato 4a8562394b configure: Use the right pkgconf file for openjpeg
The current release of version 1 uses libopenjpeg1.
2014-03-10 11:48:04 +01:00
Luca Barbato ee17be3fdd hevc: Use get_se_golomb_long
Do not use inline functions that refer to tables present in other
libraries.
2014-03-10 10:59:48 +01:00
Luca Barbato 5eacbb5328 golomb: Add a get_se_golomb_long
Useful in libavformat mostly.
2014-03-10 10:58:37 +01:00
Luca Barbato 5b977c1d4f mxf: Return meaningful errors 2014-03-06 19:28:20 +01:00
Luca Barbato e995cf1bcc avfilter: Add missing emms_c when needed
Arch specific calls should have an emms_c following to keep the cpu
state consistent.

Reported-By: wm4
CC: libav-stable@libav.org
2014-03-05 11:00:05 +01:00
Luca BarbatoandDiego Biurrun a1c699659d parser: K&R formatting cosmetics
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2014-02-25 12:28:33 +01:00
Luca Barbato 8eeacf31c5 hevc: Do not left shift a negative value in hevc_loop_filter_chroma 2014-02-23 14:34:41 +01:00
Luca Barbato ff486c0f7f hevc: Do not right shift a negative value in get_pcm 2014-02-23 14:34:40 +01:00
Luca Barbato 50c988aa6d hevc: Drop unnecessary shifts in deblocking_filter_CTB
beta_offset is pre-multiplied by 2.
2014-02-23 14:34:34 +01:00
Luca Barbato d922c5a5fb h264: Fix a typo from the previous commit
f777504f64 changed a - in +

CC: libav-stable@libav.org
2014-02-22 12:26:32 +01:00
Luca Barbato 5c79d2e12d avconv: Do not divide by zero 2014-02-20 18:58:38 +01:00
Luca Barbato d6a27f885b configure: Add usan to the toolchain presets
clang-3.4 and gcc-4.9 have it.
2014-02-20 18:58:38 +01:00
Luca Barbato 521726ff57 hevc: Always consider VLC NALU type mismatch fatal
Sample-Id: 00001667-google
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2014-02-19 16:59:40 +01:00
Luca Barbato 175e506332 hevc: Mention the missing SPS in the error message 2014-02-19 16:59:40 +01:00
Luca Barbato 93632a70f9 doc: Name the MOV muxer as it should be called
The section name is the muxer, not the format.
2014-02-19 16:59:40 +01:00
Luca Barbato a7b3216cbd doc: Sort the muxer documentation
Keep the sections alphabetically sorted.
2014-02-19 16:59:40 +01:00
Luca BarbatoandVittorio Giovara fea6db064b h264: informative error reporting in decode_slice_header()
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2014-02-18 23:47:55 +01:00
Luca BarbatoandVittorio Giovara 96f9fbe109 h264: fix slice_type value reported in decode_slice_header()
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2014-02-18 23:47:32 +01:00
Luca Barbato f8c507f44b h264: Refactor ff_h264_decode_ref_pic_list_reordering
In preparation for MVC support.
2014-02-13 23:34:50 +01:00
Luca Barbato 246d3bf0ec hevc: Conceal zero td
It was done only in check_mvset(), while mv_scale() is called also by
dist_scale().

Sample-Id: 00001579-google
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2014-02-09 19:53:43 +01:00
Luca BarbatoandAnton Khirnov 9ecb858775 doxy: Format @code blocks so they render properly
@code command reports verbatim everything between it and @endcode.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2014-02-04 22:09:47 +01:00
Luca BarbatoandAnton Khirnov d9ae1031f5 lavf: improve handling of sparse streams when muxing
Currently ff_interleave_packet_per_dts() waits until it gets a frame for
each stream before outputting packets in interleaved order.

Sparse streams (i.e. streams with much fewer packets than the other
streams, like subtitles or audio with DTX) tend to add up latency and in
specific cases end up allocating a large amount of memory.

Emit the top packet from the packet_buffer if it has a time delta
larger than a specified threshold.

Original report of the issue and initial proposed solution by
mus.svz@gmail.com.

Bug-id: 31
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2014-02-04 22:01:42 +01:00
Luca Barbato 816e5b9970 hevc: Reject impossible slice segment
A dependent slice cannot have address 0.
Prevent an out of array bound load in ff_hevc_cabac_init().

Sample-Id: 00001406-google
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2014-02-01 17:04:49 +01:00
Luca Barbato 09e2203b8b hevc: Consider first quantization group any reference to 0, 0
According to my understanding of T-REC-H.265-2013044 chapter 8.6.1.

Sample-Id: 00001438-google
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2014-02-01 17:02:35 +01:00
Luca Barbato 7d56f2fffc mxf: Handle negative edit_rate
Default to 1/25.
2014-02-01 16:25:07 +01:00
Luca Barbato e22ebd04bc hevc: Bound check cu_qp_delta
The T-REC-H.265-2013044 page 91 states it has to be in the range
[-(26 + s->sps->qp_bd_offset / 2), (25 + s->sps->qp_bd_offset / 2)].
2014-01-21 11:59:54 +01:00
Luca Barbato 0d999333f9 hevc: Bound check slice_qp
The T-REC-H.265-2013044 page 79 states it has to be in the range
[-s->sps->qp_bd_offset, 51].

Sample-Id: 00001386-google
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2014-01-21 11:59:30 +01:00
Luca Barbato 838740e642 hevc: Prevent some integer overflows
get_ue_golomb_long() returns an unsigned.

Sample-Id: 00001541-google
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2014-01-21 11:59:18 +01:00
Luca Barbato b37e796082 hevc: Use uint64 to check for tile dimensions
And use unsigned datatypes.

Otherwise it would overflow.

Sample-Id: 00001315-google
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2014-01-21 11:57:51 +01:00
Luca Barbato 045654f422 doxy: Document better the available AVFrame flags 2014-01-17 10:00:18 +01:00
Luca Barbato ff23c4e493 doxy: Add AVFrame to the structured modules 2014-01-17 10:00:18 +01:00
Luca Barbato 1a4e4ad0e0 mxf: Use av_malloc_array 2014-01-14 18:13:29 +01:00
Luca Barbato f5fbbbc022 mxf: Drop unnecessary checks
av_reallocp_array does the check already.
2014-01-14 18:13:29 +01:00
Luca Barbato 42f9132218 mxf: Do not use int to check the seek position
Overly large files are to be expected.

Reported-by: Jean-Baptiste Kempf <jb@videolan.org>
2014-01-14 17:29:03 +01:00
Luca Barbato c798a6fedc vc1: Factorize out chroma MC 2014-01-13 10:21:53 +01:00
Luca BarbatoandMichael Niedermayer aead772b58 hevc: Bound check slice_qp
The T-REC-H.265-2013044 page 79 states they have to be into the range
[-s->sps->qp_bd_offset, 51].

Fixes: asan_stack-oob_eae8e3_9522_WP_MAIN10_B_Toshiba_3.bit
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-13 05:04:13 +01:00
Luca BarbatoandMichael Niedermayer 48a5b15543 hevc: Reject impossible dependent tile
The tile 0 cannot depend on a previous one.
Prevent an out of array bound load in ff_hevc_cabac_init().

Fixes: asan_heap-oob_e3a924_1630_DBLK_A_MAIN10_VIXS_2.bit
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind

Reviewed-by: Guillaume Martres <smarter@ubuntu.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-13 02:51:53 +01:00
Luca BarbatoandDiego Biurrun a1f5164814 vc1dsp: K&R formatting cosmetics
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2014-01-12 18:33:25 +01:00
Luca BarbatoandMichael Niedermayer 5856bca360 hevc: Clip the pixel before shifting
Prevent an out of array bound read.

Fixes: asan_stack-oob_eae8e3_7333_WPP_B_ericsson_MAIN10_2.bit
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-11 20:33:05 +01:00
Luca Barbato e61b8fa560 configure: Update freetype check to follow upstream
The freetype tutorial suggests to use #include FT_FREETYPE_H.

Bug-Id: 616
2014-01-06 11:44:10 +01:00
Luca Barbato d68dc3c944 drawtext: Drop pointless header
It should be forward compatible with newer freetype.
2014-01-06 11:44:10 +01:00
Luca Barbato 9a4c10e3af lavu: Move preprocessor macros in a separate file
And remove all the circular inclusions of avutil.h while at it.
2013-12-29 22:52:04 +01:00
Luca Barbato 4d2bb28931 h264: namespace the decode function
Make much easier debugging.
2013-12-27 07:48:13 +01:00
Luca Barbato 1ab91c7d4a doxy: Update the css to have a flat style
Drop references to the doxy image gradients and style a the code blocks to
keep the whitespace and indent properly.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-12-27 02:53:25 +01:00
Luca Barbato 9ace13db77 doxy: Fix link in badge color
Green on blue was not exactly optimal.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-12-27 02:53:25 +01:00
Luca Barbato 1716b4c7b8 mms: Remove non-utf8 characters
Certain softwares get badly confused.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-12-26 06:07:35 +01:00
Luca Barbato f412b2c9f3 flv: Use the correct type to hold the file offset 2013-12-20 17:44:20 +01:00
Luca Barbato 15739a9bd1 jvdec: Do not feed the decoder with known wrong data
Still assume the size value is right in non-explode mode.
2013-12-20 17:44:20 +01:00