Commit Graph
41744 Commits
Author SHA1 Message Date
Anton Khirnov c9ccbc7333 h264: update the current bit depth/chroma type in init_slice_header()
With frame threading, it is currently only updated in the context where
the change occurs, but not in any other contexts.
2015-04-29 05:52:58 +02:00
Anton Khirnov 29dcde2b87 h264: copy nal_length_size in update_thread_context
It does not make sense to copy is_avc without copying this as well. This
patch should not change anything for now, but will have an effect in
later commits.
2015-04-29 05:52:58 +02:00
Anton Khirnov 440e8dd374 h264: drop a comment that carries no useful information 2015-04-29 05:52:58 +02:00
Anton Khirnov 11f024ef0a h264: move freeing the escaped RBSP buffer to free_context()
It does not logically belong in free_tables(), since it's not allocated
in alloc_tables() and its size has nothing to do with the frame size.
2015-04-29 05:52:58 +02:00
Anton Khirnov ee62b364be h264: eliminate ff_h264_set_parameter_from_sps()
That function currently does two things -- reinitializing the DSP
contexts and setting low_delay based on the SPS values.

The former more appropriately belongs in h264_slice_header_init(), while
the latter only really makes sense in decode_slice_header().

The third call to ff_h264_set_parameter_from_sps(), done immediately
after parsing a new SPS, appears to serve no useful purpose, so it is
just dropped.

Also, drop now unneeded H264Context.cur_chroma_format_idc.
2015-04-29 05:52:57 +02:00
Anton Khirnov 54986d6db9 h264: move context reinit lower down in update_thread_context()
It uses some fields from the SPS, which is not yet set where the reinit
is called currently.
2015-04-29 05:52:57 +02:00
Anton Khirnov a6cd154463 h264: move the DPB init/uninit to init_context()/free_context()
Currently, the DPB is initialized in alloc_tables() and uninitialized in
free_tables(), but those functions manage frame size-dependent
variables, so DPB management does not logically belong in there.

Since we want the init/uninit to happen exactly once per the context
lifetime, init_context()/free_context() are the proper place for this
code.
2015-04-29 05:52:57 +02:00
Anton Khirnov 9d33bab583 h264: drop H264Context.ouputed_poc
It is only set, but never used for anything.
2015-04-29 05:52:57 +02:00
Anton Khirnov 27b0e6ebfd h264: drop needs_realloc
It is not needed anymore since switching to refcounted frames.
2015-04-29 05:52:57 +02:00
Luca Barbato 0ac8ff618c avresample: Reallocate the internal buffer to the correct size
Fixes the corner case in which the internal buffer size
is larger than input buffer provided and resizing it
before moving the left over samples would make it write
to now unallocated memory.

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

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-04-28 23:51:51 +02:00
John HögbergandLuca Barbato 82de8d7111 mpegts: Update the PSI/SI table only if the version change
If a PAT is finished while a PMT section filter is opened but
not yet finished, the PMT section filter is closed and all
the received data is discarded.

This is usually not an issue but some multiplexers (With very
quick PAT/PMT repetition settings) consistently emit a PMT
section start, then a PAT, and then the rest of the PMT,
causing the aforementioned behavior to result in no PMT being
finished.

In the most pathologic situation the stream information are lost
and the probe fallback miscategorizes subtitles as mp3 audio.

Avoid the issue through eliminating redundant PSI/SI table
updates by checking their version field, which is required by
the standard to be incremented on every change no matter how
minor.

CC: libav-stable@libav.org

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-04-28 21:09:59 +02:00
Vittorio Giovara 0c69164f45 h263: Convert function to macro 2015-04-28 16:33:09 +01:00
Vittorio Giovara 59dfc2b0c8 h263: Drop commented-out code and a related otherwise unused function 2015-04-28 16:31:05 +01:00
Vittorio Giovara c341820130 jpeglsenc: Mark codec as init-thread-safe and init-cleanup
Fixes a memory leak on init failure.
2015-04-28 16:29:29 +01:00
Vittorio Giovara 3919a45726 jpeglsenc: Check memory allocations
Convert exisiting free functions to av_freep() to avoid accidental
double frees, and always intialize all buffers to NULL.
2015-04-28 16:27:16 +01:00
Vittorio Giovara f5ba67ee13 flacenc: Move a scratch buffer to struct used by the function
This avoids allocating/freeing memory at every function call,
checking its return value, and carrying the error around.
2015-04-28 16:25:09 +01:00
Rico TzschichholzandLuca Barbato 5aed1d4240 vaapi: Fix -Wimplicit-function-declaration for ff_dlog() usage
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-04-26 00:07:41 +02:00
Andreas CadhalpunandVittorio Giovara cfdaa4de6c dss_sp: use lowercase codec name without whitespace
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
2015-04-24 14:55:11 +01:00
Vittorio Giovara 18db1286b0 libxvid: Make codec use the init-cleanup flag and mark it as init-thread-safe
This takes care of memory leaks on init error.
2015-04-24 14:55:11 +01:00
Vittorio Giovara eae7338e15 libx264: Make codec use the init-cleanup flag and mark it as init-thread-safe
This takes care of memory leaks on init error.
2015-04-24 14:55:11 +01:00
Vittorio Giovara 74a1cad7e3 lclenc: Mark codec as init-thread-safe and init-cleanup 2015-04-24 14:55:11 +01:00
Vittorio Giovara bb428e00ac hqx: Mark codec as init-thread-safe and init-cleanup 2015-04-24 14:55:11 +01:00
Vittorio Giovara 43171886e0 huffyuvenc: Mark codec as init-thread-safe and init-cleanup 2015-04-24 14:55:11 +01:00
Vittorio Giovara d90133b77b asvenc: Mark codec as init-thread-safe and init-cleanup 2015-04-24 14:55:10 +01:00
Vittorio Giovara a4edaeb50f hq_hqa: Fix table data for profile 17
The table had a wrong table height and was missing the first line of bytes.

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2015-04-24 14:55:10 +01:00
Vittorio Giovara b17cbb0b1c riff: Add GMP4 fourcc for mpeg4 2015-04-24 14:55:10 +01:00
Vittorio Giovara 3c04ec04df riff: Add GLV4 fourcc for mpeg4 2015-04-24 14:55:10 +01:00
Vittorio Giovara 5bba3ab0cf internal: Make dlog/tlog a no-op when disabled
Improves Coverity analysis, avoiding "double semicolon" CIDs.
2015-04-24 14:55:10 +01:00
Martin Storsjö b90adb0aba rtsp: Make sure we don't write too many transport entries into a fixed-size array
CC: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st>
2015-04-24 16:07:14 +03:00
Andrey UtkinandMartin Storsjö 1bd2646a6d rtpenc_jpeg: Handle case of picture dimensions not dividing by 8
This fixes the calculation of the number of needed blocks to make
sure that ALL pixels are represented by the result.

Signed-off-by: Martin Storsjö <martin@martin.st>
2015-04-23 23:20:03 +03:00
Martin Storsjö eb7ddb5066 rtsp: Don't warn about unparsed time ranges
This removes the error logging added in 4e54432164.

This avoids warnings about "Invalid interval start specification 'now'"
for live rtsp streams.

We only try to parse some of the many valid values for time ranges
in RTSP - the other ones are fully valid but not interesting for the
use case in rtsp.c, so we shouldn't warn about them.

(Parsing the time ranges is needed to allow seeking, but e.g. setting
the current realtime clock for the start time doesn't make sense.
av_parse_time has got a different mode for parsing absolute times
as well, which can handle the special case "now", but that doesn't
make much sense for this particular use in rtsp.c.)

Signed-off-by: Martin Storsjö <martin@martin.st>
2015-04-23 23:20:02 +03:00
Timothy GuandLuca Barbato 358b7ec309 fate: Fix test name for pixfmts tests
The last pixel format gets leaked as `$test` further down the pipeline.

See for example https://fate.libav.org/x86_32-netbsd-clang-no-inline-asm/20150420020104
Note the odd test names like “yuvj444p.”

CC: libav-stable@libav.org

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-04-23 12:47:00 +02:00
Luca Barbato 0a51c7d42a prores: Set the bits_per_coded_sample for alpha pix_fmt
Improve the compatibility with other software.
2015-04-22 20:50:10 +02:00
Luca Barbato 28eddef689 hq_hqa: Validate get_vlc2 return value
The `hq_ac_vlc.table` is incomplete, so unaccounted symbol return -1
as value.
2015-04-22 12:27:43 +02:00
Luca Barbato a78f5548d9 avcodec: Free the default avoptions on init failure 2015-04-22 12:27:13 +02:00
Luca Barbato aef0be0875 avcodec: Unref the dummy buffer on the fail path 2015-04-22 12:27:13 +02:00
Federico TomassettiandLuca Barbato 8eb57dc9d5 buffersrc: Use the correct deallocation function
This correction was suggested to me by Michael Niedermayer

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-04-22 12:26:53 +02:00
Luca Barbato 9b2c57bef5 drawtext: Add an alpha option
And document both `draw` and `alpha`.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-04-21 11:13:30 +02:00
Vittorio Giovara eaa2d123f0 log: Print a full backtrace along with error messages under Valgrind
Useful to understand where and in what execution state a certain message
is generated. It is enabled only when optimizations are disabled, since
function names are not printed otherwise.

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2015-04-20 19:20:57 +01:00
Vittorio Giovara bd5ad8b23d hq_hqa: Fix reading hqa quantization matrix index
Value is stored as a byte.
2015-04-20 19:20:22 +01:00
Vittorio Giovara 1746dc382d hqxdsp.h: #include "stddef.h"
It is required by ptrdiff_t, fixes make checkheaders.
2015-04-20 19:19:23 +01:00
Vittorio Giovara 98cab39798 lavf: Fix variables constness in ff_iso8601_to_unix_time()
warning: assigning to
      'char *' from 'const char *' discards qualifiers
      [-Wincompatible-pointer-types-discards-qualifiers]
2015-04-20 18:43:33 +01:00
Vittorio Giovara 86e1a35802 h264_ps: Return meaningful error codes and address a memory leak
Bug-Id: CID 1026763
2015-04-20 14:59:40 +01:00
Diego BiurrunandVittorio Giovara 338ed3ed33 ffv1: Pass correct pointers to av_free()
Bug-Id: CID 1295124
2015-04-20 14:59:40 +01:00
Timothy GuandLuca Barbato 3b1e35d46d fate: Omit the results if the test passed
The FATE server does not report this information anyway and omitting
it makes the successful run send much less data.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-04-20 12:41:34 +02:00
Luca Barbato d34039b171 rmenc: Drop the temporary buffer for ac3 byteswap
Use direcly avio_w8().

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-04-20 12:41:33 +02:00
Luca Barbato 656e31ed87 ogg: Forward errors further
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-04-20 12:41:33 +02:00
Thomas GuillemandLuca Barbato b18346817d flac: fix realloc loop with invalid flac files
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-04-20 12:41:33 +02:00
Martin Storsjö 2cc3936599 dashenc: Add a publishTime field in dynamic manifests
This field is mandatory in dynamic manifests.

Signed-off-by: Martin Storsjö <martin@martin.st>
2015-04-20 13:16:45 +03:00
Federico TomassettiandVittorio Giovara 386e2755aa jack: Check memory allocation
Bug-Id: CID 1265785
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2015-04-19 23:50:48 +01:00