• wm4's avatar
    avformat/mp3dec: avoid early EOF with concatenated gapless mp3s · 6c7f1155
    wm4 authored
    Consider a file created with something like:
    
        cat file1.mp3 file2.mp3 > result.mp3
    
    Then if file2.mp3 has gapless information, result.mp3 would stop playing
    something in the middle. This happens because the gapless info directs
    the decoder to discard all samples after a certain position. To make
    matters worse, the gapless info of file2.mp3 will be used when playing
    the file1.mp3 part, because the gapless info is located at the end of
    the file.
    
    While handling concatenated gapless files correctly would be insane and
    a lot of effort (especially without scanning the whole file on opening),
    it's easy to prevent at least early EOF. Playback will happen to work,
    even if it's slightly broken.
    Signed-off-by: 's avatarMichael Niedermayer <michaelni@gmx.at>
    6c7f1155
Name
Last commit
Last update
compat Loading commit data...
doc Loading commit data...
libavcodec Loading commit data...
libavdevice Loading commit data...
libavfilter Loading commit data...
libavformat Loading commit data...
libavresample Loading commit data...
libavutil Loading commit data...
libpostproc Loading commit data...
libswresample Loading commit data...
libswscale Loading commit data...
presets Loading commit data...
tests Loading commit data...
tools Loading commit data...
.gitignore Loading commit data...
COPYING.GPLv2 Loading commit data...
COPYING.GPLv3 Loading commit data...
COPYING.LGPLv2.1 Loading commit data...
COPYING.LGPLv3 Loading commit data...
CREDITS Loading commit data...
Changelog Loading commit data...
INSTALL.md Loading commit data...
LICENSE.md Loading commit data...
MAINTAINERS Loading commit data...
Makefile Loading commit data...
README.md Loading commit data...
RELEASE Loading commit data...
RELEASE_NOTES Loading commit data...
arch.mak Loading commit data...
cmdutils.c Loading commit data...
cmdutils.h Loading commit data...
cmdutils_common_opts.h Loading commit data...
cmdutils_opencl.c Loading commit data...
common.mak Loading commit data...
configure Loading commit data...
ffmpeg.c Loading commit data...
ffmpeg.h Loading commit data...
ffmpeg_dxva2.c Loading commit data...
ffmpeg_filter.c Loading commit data...
ffmpeg_opt.c Loading commit data...
ffmpeg_vda.c Loading commit data...
ffmpeg_vdpau.c Loading commit data...
ffplay.c Loading commit data...
ffprobe.c Loading commit data...
ffserver.c Loading commit data...
library.mak Loading commit data...
version.sh Loading commit data...