blob: 3ace4d824248999ac47dc8542daabf8263fd09c6 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
#pragma once
#include <libavcodec/avcodec.h>
#include <libavformat/avformat.h>
#include "../codec.h"
struct camu_ff_encoder {
AVCodecContext *codec_context;
const AVOutputFormat *output_format;
struct camu_audio_format fmt;
AVFrame *frame;
void (*callback)(void *, AVPacket *);
void *userdata;
};
bool camu_ff_encoder_init(struct camu_ff_encoder *enc, char *encoder_name, char *ext, u32 bitrate);
void camu_ff_encoder_push(struct camu_ff_encoder *enc, u8 **data, s32 sample_count);
void camu_ff_encoder_reset(struct camu_ff_encoder *enc);
void camu_ff_encoder_close(struct camu_ff_encoder *enc);
|