| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
| |
This makes the wav and pcm demuxer demux bigger packets, which is more
efficient.
As a side effect of the bigger packets, audio durations can become less exact
for command lines such as "ffmpeg -i $INPUT -c:a copy -t 1.0 $OUTPUT".
Signed-off-by: Marton Balint <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
| |
2c2a167ca7 forced WAVEFORMATEXTENSIBLE for all LPCM streams with greater
than 16 bits per sample. However, WAVEFORMATEX allows IEEE Float samples
or any depth where raw depth == coded depth, see Remarks section at
https://learn.microsoft.com/en-us/windows/win32/api/mmreg/ns-mmreg-waveformatex
and samples M1F1-float32-AFsp, M1F1-float64-AFsp at
https://www.mmsp.ece.mcgill.ca/Documents/AudioFormats/WAVE/Samples.html
There are hardware devices and likely software players requiring float samples
that fail to qualify files with WAVEFORMATEXTENSIBLE headers.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Remove now-obsolete code setting packet durations pre-muxing for CFR
encoded video.
Changes output in the following FATE tests:
* numerous adpcm tests
* ffmpeg-filter_complex_audio
* lavf-asf
* lavf-mkv
* lavf-mkv_attachment
* matroska-encoding-delay
All of these change due to the fact that the output duration is now
the actual input data duration and does not include padding added by
the encoder.
* apng-osample: less wrong packet durations are now passed to the muxer.
They are not entirely correct, because the first frame duration should
be 3 rather than 2. This is caused by the vsync code and should be
addressed later, but this change is a step in the right direction.
* tscc2-mov: last output frame has a duration of 11 rather than 1 - this
corresponds to the duration actually returned by the demuxer.
* film-cvid: video frame durations are now 2 rather than 1 - this
corresponds to durations actually returned by the demuxer and matches
the timestamps.
* mpeg2-ticket6677: durations of some video frames are now 2 rather than
1 - this matches the timestamps.
|
|
|
|
|
|
|
|
|
|
| |
Accidentally resurrected in fc49f22c3b735db5aaac5f98e40b7124a2be13b8
and 7711f19eda40a7fd1c8a327f1700ffdd115e1667,
forgotten in 6ebc71847e21a8abaf7ff3d902cb1cf63511e7b4 and
1a6a088f7c7b164042ad16d43d05543ce1bacfa4 or never needed
(filter-aemphasis).
Signed-off-by: Andreas Rheinhardt <[email protected]>
|
|
|
|
|
|
|
| |
adx ignores the trellis option, making this test identical
to acodec-adpcm-adx.
Signed-off-by: Andreas Rheinhardt <[email protected]>
|
|
|
|
| |
Signed-off-by: Zane van Iperen <[email protected]>
|
|
|
|
| |
Signed-off-by: Zane van Iperen <[email protected]>
|
|
|
|
|
|
|
|
|
| |
SWF File Format Specification, Version 19 says this is 1 raw
sample + 4095 nibbles.
https://www.adobe.com/content/dam/acom/en/devnet/pdf/swf-file-format-spec.pdf
Signed-off-by: Zane van Iperen <[email protected]>
|
| |
|
|
|
|
| |
Signed-off-by: Zane van Iperen <[email protected]>
|
|
|
|
| |
Signed-off-by: Zane van Iperen <[email protected]>
|
|
|
|
| |
Signed-off-by: Zane van Iperen <[email protected]>
|
|
|
|
|
| |
Signed-off-by: Zane van Iperen <[email protected]>
Signed-off-by: Michael Niedermayer <[email protected]>
|
|
|
|
|
|
| |
more than once
Signed-off-by: James Almer <[email protected]>
|
|
|
|
| |
Signed-off-by: James Almer <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The packet counting based approach caused excessive sdt/pat/pmt for VBR, so
let's use a timestamp based approach instead similar to how we emit PCRs.
SDT/PAT/PMT period should be consistent for both VBR and CBR from now on.
Also change the type of sdt_period and pat_period to AV_OPT_TYPE_DURATION so no
floating point math is necessary.
Fixes ticket #3714.
Signed-off-by: Marton Balint <[email protected]>
|
|
|
|
| |
Fixes #8031.
|
|
|
|
|
|
| |
English was used before.
Signed-off-by: Marton Balint <[email protected]>
|
|
|
|
|
|
| |
better quality without speedloss
Signed-off-by: Muhammad Faiz <[email protected]>
|
|
|
|
|
|
|
|
|
| |
this gives better frequency response
update swresample fate and other fates
that depend on resampling
Signed-off-by: Muhammad Faiz <[email protected]>
|
|
|
|
|
|
|
| |
According to specification max value allowed is 0x6000.
Fixes #5862.
Signed-off-by: Paul B Mahol <[email protected]>
|
|
|
|
|
| |
Reviewed-by: Michael Niedermayer <[email protected]>
Signed-off-by: James Almer <[email protected]>
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* commit '393596f9d51134d6e45d81ae129223f4faea1232':
mpegtsenc: stop impersonating ses in sdt
This commit also includes the needed FATE updates later spotted by
Martin Storsjö and fixed in 34effe816f9f3df2e6b8bc738e2b5a86a24fd0d7 on
Libav side.
Merged-by: Clément Bœsch <[email protected]>
|
|\|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
FATE tests have been updated to patch. They do not differ in
any meaningful way.
* commit 'dc6527ed908e4d330738f139074455ffbe56a2de':
nutenc: do not use AVCodecContext.frame_size
Merged-by: Derek Buitenhuis <[email protected]>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
mkvmerge.
Compute individual stream durations in matroska muxer.
Write them as string tags in the same format as mkvmerge tool does.
Signed-off-by: Sasi Inguva <[email protected]>
|
| |
| |
| |
| |
| |
| |
| | |
Fixes Ticket4540
Reviewed-by: Paul B Mahol <[email protected]>
Signed-off-by: Michael Niedermayer <[email protected]>
|
| | |
|
| |
| |
| |
| |
| | |
Signed-off-by: James Almer <[email protected]>
Signed-off-by: Michael Niedermayer <[email protected]>
|
| |
| |
| |
| |
| | |
Reviewed-by: Reimar Döffinger <[email protected]>
Signed-off-by: Michael Niedermayer <[email protected]>
|
| |
| |
| |
| | |
Signed-off-by: Paul B Mahol <[email protected]>
|
| |
| |
| |
| | |
Signed-off-by: Michael Niedermayer <[email protected]>
|
| |
| |
| |
| |
| |
| | |
The prediction used in the encoder was not correct
Signed-off-by: Michael Niedermayer <[email protected]>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The actual predictor value, set by the trellis code, never
was written back into the variable that was written into
the block header. This was accidentally removed in b304244b.
This significantly improves the audio quality of the trellis
case, which was plain broken since b304244b.
Encoding IMA QT with trellis still actually gives a slightly
worse quality than without trellis, since the trellis encoder
doesn't use the exact same way of rounding as in
adpcm_ima_qt_compress_sample and adpcm_ima_qt_expand_nibble.
Fixes part of Ticket3701
Signed-off-by: Michael Niedermayer <[email protected]>
|
| |
| |
| |
| | |
Signed-off-by: Michael Niedermayer <[email protected]>
|
| |
| |
| |
| |
| |
| |
| |
| | |
adpcm_ima_qt does not produce reproducible results, so it is temporarily
disabled (see #3701).
Signed-off-by: Timothy Gu <[email protected]>
Signed-off-by: Michael Niedermayer <[email protected]>
|
| |
| |
| |
| |
| |
| | |
This avoids misleading encoder names like "encoder = prores"
Signed-off-by: Michael Niedermayer <[email protected]>
|
|\|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* commit '6656370b858329ca07a60a2de954d5e90daa0206':
avconv: set the "encoder" tag when transcoding
Conflicts:
ffmpeg.c
tests/ref/lavf/mkv
tests/ref/seek/lavf-mkv
Merged-by: Michael Niedermayer <[email protected]>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Partially undoes commit 2c4e08d89327595f7f4be57dda4b3775e1198d5e:
riff: always generate a proper WAVEFORMATEX structure in
ff_put_wav_header
A new flag, FF_PUT_WAV_HEADER_FORCE_WAVEFORMATEX, is added to force the
use of WAVEFORMATEX rather than PCMWAVEFORMAT even for PCM codecs.
This flag is used in the Matroska muxer (the cause of the original
change) and in the ASF muxer, because the specifications for
these formats indicate explicitly that WAVEFORMATEX should be used.
Muxers for other formats will return to the original behavior of writing
PCMWAVEFORMAT when writing a header for raw PCM.
In particular, this causes raw PCM in WAV to generate the canonical
44-byte header expected by some tools.
Signed-off-by: Michael Niedermayer <[email protected]>
|
| |
| |
| |
| |
| |
| | |
This fixes rounding differences between platforms
Signed-off-by: Michael Niedermayer <[email protected]>
|
| |
| |
| |
| |
| |
| |
| |
| | |
If 384k is too high for the samplerate, choose the closest
possible
Idea to increase the bitrate from: 46439e156219d27f059cf687743ba5aacf238b87
Signed-off-by: Michael Niedermayer <[email protected]>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This makes the USE_FLOATS == 0 available to the end user
More float optimizations can easily be added as well now
common code should be factored out into a common file once all
fixed point & floating point optimizations are done, this is to
avoid having to move code back and forth between files.
Signed-off-by: Michael Niedermayer <[email protected]>
|
|\|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* qatar/master:
movenc: Make tkhd "enabled" flag QuickTime compatible
Conflicts:
libavformat/movenc.c
tests/ref/acodec/alac
tests/ref/acodec/pcm-s16be
tests/ref/acodec/pcm-s24be
tests/ref/acodec/pcm-s32be
tests/ref/acodec/pcm-s8
tests/ref/lavf/mov
tests/ref/vsynth/vsynth1-dnxhd-1080i
tests/ref/vsynth/vsynth1-mpeg4
tests/ref/vsynth/vsynth1-prores
tests/ref/vsynth/vsynth1-qtrle
tests/ref/vsynth/vsynth1-svq1
tests/ref/vsynth/vsynth2-dnxhd-1080i
tests/ref/vsynth/vsynth2-mpeg4
tests/ref/vsynth/vsynth2-prores
tests/ref/vsynth/vsynth2-qtrle
tests/ref/vsynth/vsynth2-svq1
Merged-by: Michael Niedermayer <[email protected]>
|
| |
| |
| |
| |
| |
| |
| |
| | |
QuickTime will play multiple audio tracks concurrently if this flag is
set for multiple audio tracks. And if no subtitle track has this flag
set, QuickTime will show no subtitles in the subtitle menu.
Signed-off-by: Anton Khirnov <[email protected]>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
After making some blind tests on a small collection of music
samples for home usage. It turned out that the default cutoff
was too low.
The impact of filter_size was not clearly distinguishable (the
results were on the edge) with the music samples but turned out
to be clearly audible in some synthetic samples.
Thanks to Daniel for helping out with the listening tests.
Signed-off-by: Alexander Strasser <[email protected]>
|
| |
| |
| |
| |
| |
| | |
with this change QuickTime is able to play u8 aiff file generated by FFmpeg
Signed-off-by: Michael Niedermayer <[email protected]>
|
|\|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* commit 'e816034a5fa131b13c4ad87bb0b5065b4f5697c6':
fate-seek: remove use of gnu make 3.82 only private modifier
fate: move vsynth reference files to their own directory
fate: move fate-acodec reference files to their own dir
configure: avplay now depends on avresample
fate: split dependencies for fate-seek tests
Conflicts:
configure
tests/fate/seek.mak
Merged-by: Michael Niedermayer <[email protected]>
|
|/ |
|
|
|
|
| |
Signed-off-by: Mans Rullgard <[email protected]>
|
|
|
|
|
|
|
| |
This fixes a bogus bitrate value in the header of WAV files with
alaw/ulaw audio.
Signed-off-by: Mans Rullgard <[email protected]>
|
|
|
|
|
| |
This avoids resampling and channel mixing by using a source with
the correct channel layout and sample rate.
|