#include <opus.h>
#include <opus_multistream.h>
#include "libavutil/internal.h"
#include "libavutil/intreadwrite.h"
#include "libavutil/ffmath.h"
#include "libavutil/opt.h"
#include "avcodec.h"
#include "codec_internal.h"
#include "decode.h"
#include "internal.h"
#include "mathops.h"
#include "libopus.h"
#include "vorbis_data.h"
struct libopus_context { … };
#define OPUS_HEAD_SIZE …
static av_cold int libopus_decode_init(AVCodecContext *avc)
{ … }
static av_cold int libopus_decode_close(AVCodecContext *avc)
{ … }
#define MAX_FRAME_SIZE …
static int libopus_decode(AVCodecContext *avc, AVFrame *frame,
int *got_frame_ptr, AVPacket *pkt)
{ … }
static void libopus_flush(AVCodecContext *avc)
{ … }
#define OFFSET(x) …
#define FLAGS …
static const AVOption libopusdec_options[] = …;
static const AVClass libopusdec_class = …;
const FFCodec ff_libopus_decoder = …;