mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-12-23 12:43:46 +02:00
avformat: add an AV1 Low overhead bitstream format muxer
Suggested-by: BBB Signed-off-by: James Almer <jamrial@gmail.com>
This commit is contained in:
parent
2818b14392
commit
8a6beccf0d
@ -15,6 +15,7 @@ version <next>:
|
|||||||
- adecorrelate audio filter
|
- adecorrelate audio filter
|
||||||
- atilt audio filter
|
- atilt audio filter
|
||||||
- grayworld video filter
|
- grayworld video filter
|
||||||
|
- AV1 Low overhead bitstream format muxer
|
||||||
|
|
||||||
|
|
||||||
version 4.4:
|
version 4.4:
|
||||||
|
1
configure
vendored
1
configure
vendored
@ -3388,6 +3388,7 @@ mxf_opatom_muxer_select="mxf_muxer"
|
|||||||
nut_muxer_select="riffenc"
|
nut_muxer_select="riffenc"
|
||||||
nuv_demuxer_select="riffdec"
|
nuv_demuxer_select="riffdec"
|
||||||
obu_demuxer_select="av1_frame_merge_bsf av1_parser"
|
obu_demuxer_select="av1_frame_merge_bsf av1_parser"
|
||||||
|
obu_muxer_select="av1_metadata_bsf"
|
||||||
oga_muxer_select="ogg_muxer"
|
oga_muxer_select="ogg_muxer"
|
||||||
ogg_demuxer_select="dirac_parse"
|
ogg_demuxer_select="dirac_parse"
|
||||||
ogv_muxer_select="ogg_muxer"
|
ogv_muxer_select="ogg_muxer"
|
||||||
|
@ -599,6 +599,7 @@ library:
|
|||||||
@item raw NULL @tab X @tab
|
@item raw NULL @tab X @tab
|
||||||
@item raw video @tab X @tab X
|
@item raw video @tab X @tab X
|
||||||
@item raw id RoQ @tab X @tab
|
@item raw id RoQ @tab X @tab
|
||||||
|
@item raw OBU @tab X @tab X
|
||||||
@item raw SBC @tab X @tab X
|
@item raw SBC @tab X @tab X
|
||||||
@item raw Shorten @tab @tab X
|
@item raw Shorten @tab @tab X
|
||||||
@item raw TAK @tab @tab X
|
@item raw TAK @tab @tab X
|
||||||
|
@ -379,6 +379,7 @@ OBJS-$(CONFIG_NUT_MUXER) += nutenc.o nut.o
|
|||||||
OBJS-$(CONFIG_NUV_DEMUXER) += nuv.o
|
OBJS-$(CONFIG_NUV_DEMUXER) += nuv.o
|
||||||
OBJS-$(CONFIG_AV1_DEMUXER) += av1dec.o
|
OBJS-$(CONFIG_AV1_DEMUXER) += av1dec.o
|
||||||
OBJS-$(CONFIG_OBU_DEMUXER) += av1dec.o
|
OBJS-$(CONFIG_OBU_DEMUXER) += av1dec.o
|
||||||
|
OBJS-$(CONFIG_OBU_MUXER) += rawenc.o
|
||||||
OBJS-$(CONFIG_OGG_DEMUXER) += oggdec.o \
|
OBJS-$(CONFIG_OGG_DEMUXER) += oggdec.o \
|
||||||
oggparsecelt.o \
|
oggparsecelt.o \
|
||||||
oggparsedirac.o \
|
oggparsedirac.o \
|
||||||
|
@ -305,6 +305,7 @@ extern const AVInputFormat ff_nut_demuxer;
|
|||||||
extern const AVOutputFormat ff_nut_muxer;
|
extern const AVOutputFormat ff_nut_muxer;
|
||||||
extern const AVInputFormat ff_nuv_demuxer;
|
extern const AVInputFormat ff_nuv_demuxer;
|
||||||
extern const AVInputFormat ff_obu_demuxer;
|
extern const AVInputFormat ff_obu_demuxer;
|
||||||
|
extern const AVOutputFormat ff_obu_muxer;
|
||||||
extern const AVOutputFormat ff_oga_muxer;
|
extern const AVOutputFormat ff_oga_muxer;
|
||||||
extern const AVInputFormat ff_ogg_demuxer;
|
extern const AVInputFormat ff_ogg_demuxer;
|
||||||
extern const AVOutputFormat ff_ogg_muxer;
|
extern const AVOutputFormat ff_ogg_muxer;
|
||||||
|
@ -453,6 +453,26 @@ const AVOutputFormat ff_mpeg2video_muxer = {
|
|||||||
};
|
};
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#if CONFIG_OBU_MUXER
|
||||||
|
static int obu_check_bitstream(struct AVFormatContext *s, const AVPacket *pkt)
|
||||||
|
{
|
||||||
|
AVStream *st = s->streams[0];
|
||||||
|
return ff_stream_add_bitstream_filter(st, "av1_metadata", "td=insert");
|
||||||
|
}
|
||||||
|
|
||||||
|
const AVOutputFormat ff_obu_muxer = {
|
||||||
|
.name = "obu",
|
||||||
|
.long_name = NULL_IF_CONFIG_SMALL("AV1 low overhead OBU"),
|
||||||
|
.extensions = "obu",
|
||||||
|
.audio_codec = AV_CODEC_ID_NONE,
|
||||||
|
.video_codec = AV_CODEC_ID_AV1,
|
||||||
|
.init = force_one_stream,
|
||||||
|
.write_packet = ff_raw_write_packet,
|
||||||
|
.check_bitstream = obu_check_bitstream,
|
||||||
|
.flags = AVFMT_NOTIMESTAMPS,
|
||||||
|
};
|
||||||
|
#endif
|
||||||
|
|
||||||
#if CONFIG_RAWVIDEO_MUXER
|
#if CONFIG_RAWVIDEO_MUXER
|
||||||
const AVOutputFormat ff_rawvideo_muxer = {
|
const AVOutputFormat ff_rawvideo_muxer = {
|
||||||
.name = "rawvideo",
|
.name = "rawvideo",
|
||||||
|
@ -32,8 +32,8 @@
|
|||||||
// Major bumping may affect Ticket5467, 5421, 5451(compatibility with Chromium)
|
// Major bumping may affect Ticket5467, 5421, 5451(compatibility with Chromium)
|
||||||
// Also please add any ticket numbers that you believe might be affected here
|
// Also please add any ticket numbers that you believe might be affected here
|
||||||
#define LIBAVFORMAT_VERSION_MAJOR 59
|
#define LIBAVFORMAT_VERSION_MAJOR 59
|
||||||
#define LIBAVFORMAT_VERSION_MINOR 4
|
#define LIBAVFORMAT_VERSION_MINOR 5
|
||||||
#define LIBAVFORMAT_VERSION_MICRO 102
|
#define LIBAVFORMAT_VERSION_MICRO 100
|
||||||
|
|
||||||
#define LIBAVFORMAT_VERSION_INT AV_VERSION_INT(LIBAVFORMAT_VERSION_MAJOR, \
|
#define LIBAVFORMAT_VERSION_INT AV_VERSION_INT(LIBAVFORMAT_VERSION_MAJOR, \
|
||||||
LIBAVFORMAT_VERSION_MINOR, \
|
LIBAVFORMAT_VERSION_MINOR, \
|
||||||
|
Loading…
Reference in New Issue
Block a user