mirror of
https://gitee.com/openharmony/third_party_ffmpeg
synced 2024-11-23 19:30:05 +00:00
Merge remote-tracking branch 'qatar/master'
* qatar/master: libvorbis: Give consistent names to all functions, structs, and defines Conflicts: libavcodec/libvorbisenc.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
commit
6e63867771
@ -35,11 +35,11 @@
|
||||
* an output packet will always start at the same point as one of the input
|
||||
* packets.
|
||||
*/
|
||||
#define OGGVORBIS_FRAME_SIZE 64
|
||||
#define LIBVORBIS_FRAME_SIZE 64
|
||||
|
||||
#define BUFFER_SIZE (1024 * 64)
|
||||
|
||||
typedef struct OggVorbisEncContext {
|
||||
typedef struct LibvorbisEncContext {
|
||||
AVClass *av_class; /**< class for AVOptions */
|
||||
vorbis_info vi; /**< vorbis_info used during init */
|
||||
vorbis_dsp_state vd; /**< DSP state used for analysis */
|
||||
@ -51,10 +51,10 @@ typedef struct OggVorbisEncContext {
|
||||
double iblock; /**< impulse block bias option */
|
||||
VorbisParseContext vp; /**< parse context to get durations */
|
||||
AudioFrameQueue afq; /**< frame queue for timestamps */
|
||||
} OggVorbisEncContext;
|
||||
} LibvorbisEncContext;
|
||||
|
||||
static const AVOption options[] = {
|
||||
{ "iblock", "Sets the impulse block bias", offsetof(OggVorbisEncContext, iblock), AV_OPT_TYPE_DOUBLE, { .dbl = 0 }, -15, 0, AV_OPT_FLAG_AUDIO_PARAM | AV_OPT_FLAG_ENCODING_PARAM },
|
||||
{ "iblock", "Sets the impulse block bias", offsetof(LibvorbisEncContext, iblock), AV_OPT_TYPE_DOUBLE, { .dbl = 0 }, -15, 0, AV_OPT_FLAG_AUDIO_PARAM | AV_OPT_FLAG_ENCODING_PARAM },
|
||||
{ NULL }
|
||||
};
|
||||
|
||||
@ -80,9 +80,9 @@ static int vorbis_error_to_averror(int ov_err)
|
||||
}
|
||||
}
|
||||
|
||||
static av_cold int oggvorbis_encode_init_internal(vorbis_info *vi, AVCodecContext *avctx)
|
||||
static av_cold int libvorbis_setup(vorbis_info *vi, AVCodecContext *avctx)
|
||||
{
|
||||
OggVorbisEncContext *s = avctx->priv_data;
|
||||
LibvorbisEncContext *s = avctx->priv_data;
|
||||
double cfreq;
|
||||
int ret;
|
||||
|
||||
@ -171,9 +171,9 @@ static int xiph_len(int l)
|
||||
return 1 + l / 255 + l;
|
||||
}
|
||||
|
||||
static av_cold int oggvorbis_encode_close(AVCodecContext *avctx)
|
||||
static av_cold int libvorbis_encode_close(AVCodecContext *avctx)
|
||||
{
|
||||
OggVorbisEncContext *s = avctx->priv_data;
|
||||
LibvorbisEncContext *s = avctx->priv_data;
|
||||
|
||||
/* notify vorbisenc this is EOF */
|
||||
if (s->dsp_initialized)
|
||||
@ -190,16 +190,16 @@ static av_cold int oggvorbis_encode_close(AVCodecContext *avctx)
|
||||
return 0;
|
||||
}
|
||||
|
||||
static av_cold int oggvorbis_encode_init(AVCodecContext *avctx)
|
||||
static av_cold int libvorbis_encode_init(AVCodecContext *avctx)
|
||||
{
|
||||
OggVorbisEncContext *s = avctx->priv_data;
|
||||
LibvorbisEncContext *s = avctx->priv_data;
|
||||
ogg_packet header, header_comm, header_code;
|
||||
uint8_t *p;
|
||||
unsigned int offset;
|
||||
int ret;
|
||||
|
||||
vorbis_info_init(&s->vi);
|
||||
if ((ret = oggvorbis_encode_init_internal(&s->vi, avctx))) {
|
||||
if ((ret = libvorbis_setup(&s->vi, avctx))) {
|
||||
av_log(avctx, AV_LOG_ERROR, "encoder setup failed\n");
|
||||
goto error;
|
||||
}
|
||||
@ -253,7 +253,7 @@ static av_cold int oggvorbis_encode_init(AVCodecContext *avctx)
|
||||
|
||||
vorbis_comment_clear(&s->vc);
|
||||
|
||||
avctx->frame_size = OGGVORBIS_FRAME_SIZE;
|
||||
avctx->frame_size = LIBVORBIS_FRAME_SIZE;
|
||||
ff_af_queue_init(avctx, &s->afq);
|
||||
|
||||
s->pkt_fifo = av_fifo_alloc(BUFFER_SIZE);
|
||||
@ -264,14 +264,14 @@ static av_cold int oggvorbis_encode_init(AVCodecContext *avctx)
|
||||
|
||||
return 0;
|
||||
error:
|
||||
oggvorbis_encode_close(avctx);
|
||||
libvorbis_encode_close(avctx);
|
||||
return ret;
|
||||
}
|
||||
|
||||
static int oggvorbis_encode_frame(AVCodecContext *avctx, AVPacket *avpkt,
|
||||
static int libvorbis_encode_frame(AVCodecContext *avctx, AVPacket *avpkt,
|
||||
const AVFrame *frame, int *got_packet_ptr)
|
||||
{
|
||||
OggVorbisEncContext *s = avctx->priv_data;
|
||||
LibvorbisEncContext *s = avctx->priv_data;
|
||||
ogg_packet op;
|
||||
int ret, duration;
|
||||
|
||||
@ -364,10 +364,10 @@ AVCodec ff_libvorbis_encoder = {
|
||||
.long_name = NULL_IF_CONFIG_SMALL("libvorbis"),
|
||||
.type = AVMEDIA_TYPE_AUDIO,
|
||||
.id = AV_CODEC_ID_VORBIS,
|
||||
.priv_data_size = sizeof(OggVorbisEncContext),
|
||||
.init = oggvorbis_encode_init,
|
||||
.encode2 = oggvorbis_encode_frame,
|
||||
.close = oggvorbis_encode_close,
|
||||
.priv_data_size = sizeof(LibvorbisEncContext),
|
||||
.init = libvorbis_encode_init,
|
||||
.encode2 = libvorbis_encode_frame,
|
||||
.close = libvorbis_encode_close,
|
||||
.capabilities = CODEC_CAP_DELAY,
|
||||
.sample_fmts = (const enum AVSampleFormat[]) { AV_SAMPLE_FMT_FLTP,
|
||||
AV_SAMPLE_FMT_NONE },
|
||||
|
Loading…
Reference in New Issue
Block a user