Alex Converse
4d2b9ece45
avformat/flvdec: Set need_context_update when setting the initial extradata
...
Fixes ticket 6398.
Debugged with the help of James Almer and Hendrik Leppkes.
2017-09-03 20:01:39 -07:00
Alex Converse
cb96e9bea4
fate: add test vector aac-al04sf_48
2017-08-24 17:42:33 -07:00
Alex Converse and Sean McGovern
504403ab28
aacsbr: Turnoff in the event of over read.
...
Aliased compressed AAC bytes are almost certainly not meaningful SBR
data. In the wild this causes harsh artifacts switching HE-AAC streams
that don't have SBR headers aligned with segment boundaries.
Turning off SBR falls back to a default set of upsampling parameters
that can function as a sort of error concealment. This is consistent
with how the decoder handles other sorts of errors.
Bug-Id: 1047
CC: libav-stable@libav.org
Signed-off-by: Sean McGovern <gseanmcg@gmail.com >
2017-05-03 19:00:03 -04:00
Alex Converse
2c8a3aa985
aacsbr: Turnoff in the event of over read.
...
Aliased compressed AAC bytes are almost certainly not meaningful SBR
data. In the wild this causes harsh artifacts switching HE-AAC streams
that don't have SBR headers aligned with segment boundaries.
Turning off SBR falls back to a default set of upsampling parameters
that can function as a sort of error concealment. This is consistent
with how the decoder handles other sorts of errors.
2017-03-21 09:38:36 -07:00
Alex Converse
dde1bf074c
aacdec: When ignoring a PCE restore the previous config
...
This is related to, but doesn't solve ticker 6152.
2017-02-21 15:12:16 -08:00
Alex Converse
1fce67d640
aac_latm: Align inband PCE to the start of the payload
...
A strict reading of the spec seems to imply that it should be aligned to
the start of the element instance tag, but that would break all of the
samples with PCEs.
It seems like a well formed LATM stream should have its PCE in the ASC
rather than inband.
Fixes ticket 4544
2017-02-13 09:31:13 -08:00
Alex Converse
3bb24fc344
aacsbr: Associate SBR data with AAC elements on init
...
Quiets some log spam on pure upsampling mode.
Fixes ticket 5163.
2017-02-13 09:31:13 -08:00
Alex Converse
20ea8bf939
aac_latm: Copy whole AudioSpecificConfig when it is sized.
...
This preserves sync extensions.
2017-02-13 09:31:13 -08:00
Alex Converse
3f1a38c919
aac_latm: Allow unaligned AudioSpecificConfig
...
Fixes ticket 4730
2017-02-13 09:31:13 -08:00
Alex Converse
bf15981b12
libvpxenc: Don't spam level errors for VP8 encodes
...
Fixes "Failed to set VP9E_GET_LEVEL codec control: Codec does not
implement requested capability" log messages on VP8 encodes.
2016-12-13 10:43:57 -08:00
Alex Converse
51a055b206
aacdec: Rename elem_type_prev to che_prev_type.
...
It describes the type of the previous che element (SCE, CPE, CCE, or
LFE) and does not reflect non-che elements.
2016-12-08 13:31:50 -08:00
Alex Converse
d379592687
aacdec: Allow SBR after DRC.
...
Fixes https://www2.iis.fraunhofer.de/AAC/7.1auditionOutLeader_v2_rtb.mp4
Reported-by: rcombs on IRC
2016-12-08 13:31:50 -08:00
Alex Converse
8899057d91
libvpxenc: Report encoded VP9 level
...
Report the actual level of the encoded output if a level is
targeted or the level is passively tracked with a target of 0.
2016-11-28 12:02:43 -08:00
Alex Converse
3ee59939a1
libvpxenc: Support targeting a VP9 level
...
Levels are specified at https://www.webmproject.org/vp9/levels/
2016-11-22 11:31:48 -08:00
Alex Converse
09317e3e06
ivfenc: Add VPX codec tags.
...
This fixes remuxing VPX from MP4 without manually overwriting the tag.
2016-09-10 16:40:47 -07:00
Alex Converse
9295d10ea9
fate: Add a test for AAC ELD480.
...
The source is er_eld_2100np_48_ep0.mp4 from the official test set.
2015-02-06 18:56:22 -08:00
Alex Converse
d615187f74
aacdec: Support for ER AAC ELD 480.
...
Based in part on work from Niel van der Westhuizen <espes@pequalsnp.com >.
2015-02-03 20:32:16 -08:00
Alex Converse
edd9ea3ffb
aacdec: Refactor aac_er_decode_frame.
2015-02-03 20:32:15 -08:00
Alex Converse
82bd8a5769
aacdec: Refactor decode_ics_info.
2015-02-03 20:32:15 -08:00
Alex Converse
9d18a7d3ec
fate: Update AAC ELD 5.1 ref for recent bugfixes.
2014-01-04 14:42:38 -08:00
Alex Converse
7f29644108
aac: Fix low delay windowing.
...
AAC LD uses a low overlap sine window instead of a KBD window.
2014-01-04 14:42:38 -08:00
Alex Converse
42d1b41983
fate: Add a test vector for AAC ELD with TNS.
2014-01-04 14:42:38 -08:00
Alex Converse
b2212dec0f
aac: Fix TNS decoding for the 512 sample window family.
2014-01-04 14:42:38 -08:00
Alex Converse
e2096e2eaa
fate: Add a downsampled SBR testvector
2014-01-04 14:42:38 -08:00
Alex Converse
4e326ec769
fate: aac: Add test for AAC-ELD
2013-10-25 19:41:23 +00:00
Alex Converse
adea4512c6
aacdec: Fix calls to avpriv_report_missing_feature().
...
It does not take log level as an argument.
2013-10-25 19:41:23 +00:00
Alex Converse
b3be41ca82
aac: Add support for Enhanced AAC Low Delay (ER AAC ELD).
...
This does not include support for LD SBR, epTool, data resilience, nor
the 960 transform family.
2013-10-23 00:08:29 -07:00
Alex Converse
f457edb697
aacdec: Use avpriv_report_missing_feature() instead of custom logging.
2013-10-23 00:08:29 -07:00
Alex Converse
1914e6f010
aacdec: Add support for LD (Low Delay) AAC
2013-09-18 12:01:53 -07:00
Alex Converse
5cdefc0207
aacdec: Add support for Error Resilience syntax.
...
This does not add support for any error resilience tools.
2013-09-18 12:01:49 -07:00
Alex Converse
6d5b009267
aacdec: Fix an off-by-one overwrite when switching to LTP profile from MAIN.
...
Found-by: pawlkt
CC: libav-stable@libav.org
2012-12-12 13:22:10 -08:00
Alex Converse
b92dfb56d4
tiffenc: Check av_malloc() results.
2012-10-01 17:46:44 -07:00
Alex Converse
9bc055e358
tiffenc: Simplify pixel format setup using AVPixFmtDescriptor.
2012-10-01 17:46:44 -07:00
Alex Converse
df6c3f9fb3
tiffdec: Add support for GRAY16LE.
...
Tested with the GraphicsMagick TIFF archive and Libav generated files.
2012-09-19 11:05:36 -07:00
Alex Converse
298ed797e1
tiffenc: Add support for little endian RGB48 and GRAY16
2012-09-19 11:05:36 -07:00
Alex Converse
122d5c526a
aacdec: Don't fall back to the old output configuration when no old configuration is present.
...
Fixes MP4 files where the first frame is broken.
2012-08-08 16:55:41 -07:00
Alex Converse
a112822597
movenc: Add channel layouts for PCM.
2012-06-27 13:47:58 -07:00
Alex Converse
41e637e449
lavfi: Add the af_channelmap audio channel mapping filter.
...
Inspired by MPlayer's af_channels filter and SoX's remix effect.
2012-06-22 13:55:58 -07:00
Alex Converse
43886eaebc
aacdec: Fix popping channel layouts.
...
'channel_layout' not 'channels' from the stored configuration should go
to AVCodecContext's 'channel_layout'.
2012-06-20 09:35:58 -07:00
Alex Converse
65a80ee1ec
avfilter: Log an error if avfilter fails to configure a link.
2012-06-12 10:05:31 -07:00
Alex Converse
a8656cd425
mpegts: Remove disabled extension matching probe.
2012-06-07 12:27:04 -07:00
Alex Converse
ecf79c4d3e
vorbis: Validate that the floor 1 X values contain no duplicates.
...
Duplicate values in this vector are explicitly banned by the Vorbis I spec
and cause divide-by-zero crashes later on.
2012-06-05 09:51:51 -07:00
Alex Converse
503f2feb14
avprobe: Identify codec probe failures rather than calling them unsupported codecs.
2012-06-05 09:51:51 -07:00
Alex Converse
f0ff9eb493
avformat: Probe codecs at score 0 on buffer exhaustion conditions.
2012-06-05 09:51:51 -07:00
Alex Converse
62bebf6edb
avformat: Factorize codec probing.
2012-06-05 09:51:51 -07:00
Alex Converse
79c8e29a7e
aacdec: Turn PS off when switching to stereo and turn it to implicit when switching to mono.
2012-06-04 15:16:17 -07:00
Alex Converse
41e9682af2
movenc: Write chan atom for all audio tracks in mov mode movies.
2012-06-04 10:08:31 -07:00
Alex Converse
ed7bdd8647
movenc: Don't write the 'wave' atom or its child 'enda' for lpcm audio.
...
It's left over from stsd v0. QuickTime 7 no longer writes 'wave' or 'enda'
when 'lpcm' is the audio tag.
2012-05-25 11:24:43 -07:00
Alex Converse and Diego Biurrun
40f81769ae
options_table: Add some missing #includes to fix "make checkheaders".
...
Signed-off-by: Diego Biurrun <diego@biurrun.de >
2012-05-08 20:05:20 +02:00
Alex Converse
3607dc2b1a
doc: Replace a stray reference to the old '-intra' flag.
2012-05-08 10:58:35 -07:00
Alex Converse
fa8fc3b73a
fate: Change the probe-format refs to match the final text format committed.
2012-05-07 11:01:38 -07:00
Alex Converse
6345209a7d
fate: Add avprobe as a make dependency
2012-05-07 11:00:54 -07:00
Alex Converse
37ddd38332
celp filters: Do not read earlier than the start of the 'out' vector.
...
CC: libav-stable@libav.org
2012-05-04 10:55:31 -07:00
Alex Converse
b5da848fac
motionpixels: Clip YUV values after applying a gradient.
...
Prevents illegal reads on truncated and malformed input.
CC: libav-stable@libav.org
2012-05-02 13:06:09 -07:00
Alex Converse
7eacd70fea
aac: Handle HE-AACv2 when sniffing a channel order.
2012-04-20 14:06:28 -07:00
Alex Converse
dc878b96a7
movenc: Support high sample rates in isomedia formats by setting the sample rate field in stsd to 0.
...
Libisomediafile appears to always set this field to zero.
2012-04-20 13:45:35 -07:00
Alex Converse
df8d5eaa14
avcodec_string: Favor AVCodecContext.codec over the default codec.
...
This improves output for formats with more than one AVCodec.
2012-04-17 14:51:23 -07:00
Alex Converse
b5d2bf964b
cook: Make constants passed to AV_BE2NE32C() unsigned to avoid signed overflow.
2012-04-17 14:51:23 -07:00
Alex Converse
9fb7e14635
aacdec: More robust output configuration.
...
Save the old output configuration (if it has been used
successfully) when trying a new configuration. If the new configuration
fails to decode, restore the last successful configuration.
2012-04-16 14:09:52 -07:00
Alex Converse
ca332b1d8c
faac: Add .channel_layouts
2012-04-16 14:09:51 -07:00
Alex Converse
f346b6bbeb
tiffdec: K&R cosmetics
2012-04-13 12:58:19 -07:00
Alex Converse
90a4306007
tiffdec: Add a malloc check and refactor another.
2012-04-13 09:49:13 -07:00
Alex Converse
99a335299f
faxcompr: Check malloc results and unify return path
2012-04-13 09:49:13 -07:00
Alex Converse
2b8374e920
ffv1: Fix size mismatch in encode_line.
2012-04-12 18:34:45 -07:00
Alex Converse
73b7437f1d
movenc: Remove a dead initialization
2012-04-12 18:34:45 -07:00
Alex Converse
e1ce756844
avplay: Don't free video filters string until the end of decoding.
...
av_freep()ing inside configure_video_filters() leaves a dangling
reference in the calling code, and the filter string is needed again when
reconfiguring video filters for a size change.
2012-04-11 10:24:01 -07:00
Alex Converse
c9024a9fd7
mpegts: Fix dead error checks
2012-03-26 17:53:51 -07:00
Alex Converse
b00307ecd0
aacsbr: Add a debug check to sbr_mapping.
...
There have been multiple bugs caused by inconsistencies here.
Based on an idea from Michael Niedermayer.
CC: libav-stable@libav.org
2012-03-23 14:56:44 -07:00
Alex Converse
0cb93dacee
aac: Reset some state variables when turning SBR off
...
This makes sure the reset flag gets set when SBR gets turned back on
and sets control variables for unguided mode back to their defaults.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2012-03-23 14:56:44 -07:00
Alex Converse
a237b38021
aac: Reset PS parameters on header decode failure.
...
If the next header frame codes zero envelopes the previous frame's
values will be used. Consequently the invalid values must be cleared.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2012-03-23 14:56:44 -07:00
Alex Converse
5023b89bba
xwma: Validate channels and bits_per_coded_sample.
...
This prevents a SIGFPE later on.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2012-03-22 13:57:12 -07:00
Alex Converse
86f2ae06b9
mov: Do not read past the end of the ctts_data table.
...
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2012-03-22 13:57:12 -07:00
Alex Converse
3e6e89b3d6
mov: Add missing terminator to mov_ch_layout_map_1ch.
...
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: Libav-stable@libav.org
2012-03-22 13:56:44 -07:00
Alex Converse
100c3fb2d1
mpegts: Always honor a registration descriptor if present and there is no other codec information.
2012-03-09 09:48:14 -08:00
Alex Converse
fd0be63049
tiffdec: Prevent illegal memory access caused by recycled pointers.
...
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2012-03-07 15:40:42 -08:00
Alex Converse
3574a85ce5
Replace computations of remaining bits with calls to get_bits_left().
2012-03-05 11:22:11 -08:00
Alex Converse
b70feb4053
amrnb/amrwb: Remove get_bits usage.
...
It is used to parse fixed sized fields out of a single octet. The code
is simpler without it.
2012-03-05 11:22:11 -08:00
Alex Converse
1aa708988a
mpegts: Pad the packet buffer in handle_packet().
...
This allows it to be used with get_bits without the thread of overreads.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2012-03-02 15:44:42 -08:00
Alex Converse
4df369692e
mpegts: Do not call read_sl_header() when no bytes remain in the buffer.
...
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2012-03-02 15:44:42 -08:00
Alex Converse
9243ec4a50
rv10/20: Fix slice overflow with checked bitstream reader.
2012-03-02 09:31:32 -08:00
Alex Converse
2f6528537f
rv10/20: Fix a buffer overread caused by losing track of the remaining buffer size.
...
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2012-03-02 09:31:32 -08:00
Alex Converse
1697c29d75
rmdec: Honor .RMF tag size rather than assuming 18.
2012-03-02 09:31:32 -08:00
Alex Converse
2564f6e6d4
aacdec: Reshuffle functions so get_che() can call set_default_channel_config() and output_configure().
2012-02-28 21:38:15 -08:00
Alex Converse
bbeb29133b
adpcm: Clip step_index values read from the bitstream at the beginning of each frame.
...
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
2012-02-28 12:11:06 -08:00
Alex Converse
5e239c7f9e
aacdec: Remove erroneous reference to global gain from the out of bounds scalefactor error message.
2012-02-27 17:59:47 -08:00
Alex Converse
447363870f
tiff: Prevent overreads in the type_sizes array.
...
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2012-02-23 16:23:51 -08:00
Alex Converse
e32548d133
tiff: Make the TIFF_LONG and TIFF_SHORT types unsigned.
...
TIFF v6.0 (unimplemented) adds signed equivalents.
2012-02-23 16:23:51 -08:00
Alex Converse
1cd9a6154b
aac: fix infinite loop on end-of-frame with sequence of 1-bits.
...
Based-on-work-by: Ronald S. Bultje <rsbultje@gmail.com >
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2012-02-22 11:23:43 -08:00
Alex Converse
b142496c56
mov: Add more HDV and XDCAM FourCCs.
...
Reference: VLC
2012-02-22 11:23:43 -08:00
Alex Converse
0ad522afb3
mov: Add support for MPEG2 HDV 720p24 (hdv4)
2012-02-21 14:20:28 -08:00
Alex Converse
b0f29db5c2
Mark mutable static data const where appropriate.
2012-02-21 09:47:07 -08:00
Alex Converse
ce7aee9b73
dpcm: ignore extra unpaired bytes in stereo streams.
...
Fixes: CVE-2011-3951
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
2012-02-17 15:42:23 -08:00
Alex Converse
c1df37e59b
hls: Re-add legacy applehttp name to preserve interface compatibility.
2012-02-14 12:13:46 -08:00
Alex Converse
9e1db721c4
svq3: Prevent illegal reads while parsing extradata.
...
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
2012-02-10 09:57:39 -08:00
Alex Converse
81749f30cd
dv: Move tables from dvdata.h to dvdata.c
2012-02-09 19:16:15 -08:00
Alex Converse
8dbdc2d840
dv: Move a table used only by the demuxer out of a shared header.
2012-02-09 19:16:15 -08:00
Alex Converse
89c9a8d3fd
dv: Move functions used only by the encoder out of a shared header.
2012-02-09 19:16:15 -08:00
Alex Converse
3746072712
dv: Split dvdata.h into dvdata.h and dvquant.h
2012-02-09 19:16:15 -08:00
Alex Converse
0ab3687924
dv: Fix small overread in audio frequency table.
...
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
2012-02-09 19:16:15 -08:00
Alex Converse
7b05025856
aacdec: Unify preconfigured layout and PCE layout.
2012-02-09 13:33:07 -08:00