summaryrefslogtreecommitdiff
path: root/libavformat/audiointerleave.h
diff options
context:
space:
mode:
authorMarton Balint <cus@passwd.hu>2020-03-25 23:49:17 +0100
committerMarton Balint <cus@passwd.hu>2020-05-07 23:12:24 +0200
commitc5324d92c5f206dcdc2cf93ae237eaa7c1ad0a40 (patch)
tree53c90e387bcf6ebaf5a311403f30772a0aa0331b /libavformat/audiointerleave.h
parent2035620b7cc5a3087b4eb632fba188f89af61541 (diff)
avformat/audiointerleave: only keep the retime functionality of the audio interleaver
And rename it to retimeinterleave, use the pcm_rechunk bitstream filter for rechunking. By seperating the two functions we hopefully get cleaner code. Signed-off-by: Marton Balint <cus@passwd.hu>
Diffstat (limited to 'libavformat/audiointerleave.h')
-rw-r--r--libavformat/audiointerleave.h56
1 files changed, 0 insertions, 56 deletions
diff --git a/libavformat/audiointerleave.h b/libavformat/audiointerleave.h
deleted file mode 100644
index 0933310f4c..0000000000
--- a/libavformat/audiointerleave.h
+++ /dev/null
@@ -1,56 +0,0 @@
-/*
- * audio interleaving prototypes and declarations
- *
- * Copyright (c) 2009 Baptiste Coudurier <baptiste dot coudurier at gmail dot com>
- *
- * 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 AVFORMAT_AUDIOINTERLEAVE_H
-#define AVFORMAT_AUDIOINTERLEAVE_H
-
-#include "libavutil/fifo.h"
-#include "avformat.h"
-
-typedef struct AudioInterleaveContext {
- AVFifoBuffer *fifo;
- unsigned fifo_size; ///< size of currently allocated FIFO
- int64_t n; ///< number of generated packets
- int64_t nb_samples; ///< number of generated samples
- uint64_t dts; ///< current dts
- int sample_size; ///< size of one sample all channels included
- int samples_per_frame; ///< samples per frame if fixed, 0 otherwise
- AVRational time_base; ///< time base of output audio packets
-} AudioInterleaveContext;
-
-int ff_audio_interleave_init(AVFormatContext *s, const int samples_per_frame, AVRational time_base);
-void ff_audio_interleave_close(AVFormatContext *s);
-
-/**
- * Rechunk audio PCM packets per AudioInterleaveContext->samples_per_frame
- * and interleave them correctly.
- * The first element of AVStream->priv_data must be AudioInterleaveContext
- * when using this function.
- *
- * @param get_packet function will output a packet when streams are correctly interleaved.
- * @param compare_ts function will compare AVPackets and decide interleaving order.
- */
-int ff_audio_rechunk_interleave(AVFormatContext *s, AVPacket *out, AVPacket *pkt, int flush,
- int (*get_packet)(AVFormatContext *, AVPacket *, AVPacket *, int),
- int (*compare_ts)(AVFormatContext *, const AVPacket *, const AVPacket *));
-
-#endif /* AVFORMAT_AUDIOINTERLEAVE_H */