mirror of
https://git.ffmpeg.org/ffmpeg.git
synced 2024-12-25 16:52:31 +00:00
e280a4da2a
Make the iff demuxer send the whole audio chunk to the decoder as a single packet, move stereo interleaving from the iff demuxer to the decoder, and introduce an 8svx_raw decoder which performs stereo interleaving. This is required for handling stereo data correctly, indeed samples are stored like: LLLLLL....RRRRRR that is all left samples are at the beginning of the chunk, all right samples at the end, so it is necessary to store and process the whole buffer in order to decode each frame. Thus the decoder needs all the audio chunk before it can return interleaved data. Fix decoding of files 8svx_exp.iff and 8svx_fib.iff, fix trac issue #169.
70 lines
2.5 KiB
C
70 lines
2.5 KiB
C
/*
|
|
*
|
|
* This file is part of FFmpeg.
|
|
*
|
|
* FFmpeg is free software; you can redistribute it and/or
|
|
* modify it under the terms of the GNU Lesser General Public
|
|
* License as published by the Free Software Foundation; either
|
|
* version 2.1 of the License, or (at your option) any later version.
|
|
*
|
|
* FFmpeg is distributed in the hope that it will be useful,
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
* Lesser General Public License for more details.
|
|
*
|
|
* You should have received a copy of the GNU Lesser General Public
|
|
* License along with FFmpeg; if not, write to the Free Software
|
|
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
|
*/
|
|
|
|
#ifndef AVCODEC_VERSION_H
|
|
#define AVCODEC_VERSION_H
|
|
|
|
#define LIBAVCODEC_VERSION_MAJOR 53
|
|
#define LIBAVCODEC_VERSION_MINOR 6
|
|
#define LIBAVCODEC_VERSION_MICRO 0
|
|
|
|
#define LIBAVCODEC_VERSION_INT AV_VERSION_INT(LIBAVCODEC_VERSION_MAJOR, \
|
|
LIBAVCODEC_VERSION_MINOR, \
|
|
LIBAVCODEC_VERSION_MICRO)
|
|
#define LIBAVCODEC_VERSION AV_VERSION(LIBAVCODEC_VERSION_MAJOR, \
|
|
LIBAVCODEC_VERSION_MINOR, \
|
|
LIBAVCODEC_VERSION_MICRO)
|
|
#define LIBAVCODEC_BUILD LIBAVCODEC_VERSION_INT
|
|
|
|
#define LIBAVCODEC_IDENT "Lavc" AV_STRINGIFY(LIBAVCODEC_VERSION)
|
|
|
|
/**
|
|
* Those FF_API_* defines are not part of public API.
|
|
* They may change, break or disappear at any time.
|
|
*/
|
|
#ifndef FF_API_PALETTE_CONTROL
|
|
#define FF_API_PALETTE_CONTROL (LIBAVCODEC_VERSION_MAJOR < 54)
|
|
#endif
|
|
#ifndef FF_API_OLD_SAMPLE_FMT
|
|
#define FF_API_OLD_SAMPLE_FMT (LIBAVCODEC_VERSION_MAJOR < 54)
|
|
#endif
|
|
#ifndef FF_API_OLD_AUDIOCONVERT
|
|
#define FF_API_OLD_AUDIOCONVERT (LIBAVCODEC_VERSION_MAJOR < 54)
|
|
#endif
|
|
#ifndef FF_API_ANTIALIAS_ALGO
|
|
#define FF_API_ANTIALIAS_ALGO (LIBAVCODEC_VERSION_MAJOR < 54)
|
|
#endif
|
|
#ifndef FF_API_REQUEST_CHANNELS
|
|
#define FF_API_REQUEST_CHANNELS (LIBAVCODEC_VERSION_MAJOR < 54)
|
|
#endif
|
|
#ifndef FF_API_OPT_H
|
|
#define FF_API_OPT_H (LIBAVCODEC_VERSION_MAJOR < 54)
|
|
#endif
|
|
#ifndef FF_API_THREAD_INIT
|
|
#define FF_API_THREAD_INIT (LIBAVCODEC_VERSION_MAJOR < 54)
|
|
#endif
|
|
#ifndef FF_API_OLD_FF_PICT_TYPES
|
|
#define FF_API_OLD_FF_PICT_TYPES (LIBAVCODEC_VERSION_MAJOR < 54)
|
|
#endif
|
|
#ifndef FF_API_FLAC_GLOBAL_OPTS
|
|
#define FF_API_FLAC_GLOBAL_OPTS (LIBAVCODEC_VERSION_MAJOR < 54)
|
|
#endif
|
|
|
|
#endif /* AVCODEC_VERSION_H */
|