mirror of
https://git.ffmpeg.org/ffmpeg.git
synced 2024-12-26 01:02:33 +00:00
Merge commit '95b7fa1729b93bbb3f4fb85a5c0cb53cf970c3c7'
* commit '95b7fa1729b93bbb3f4fb85a5c0cb53cf970c3c7': oggenc: Support flushing the muxer Conflicts: libavformat/version.h Merged-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
commit
c7e54628e3
@ -554,7 +554,7 @@ static int ogg_write_header(AVFormatContext *s)
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int ogg_write_packet(AVFormatContext *s, AVPacket *pkt)
|
||||
static int ogg_write_packet_internal(AVFormatContext *s, AVPacket *pkt)
|
||||
{
|
||||
AVStream *st = s->streams[pkt->stream_index];
|
||||
OGGStreamContext *oggstream = st->priv_data;
|
||||
@ -592,6 +592,23 @@ static int ogg_write_packet(AVFormatContext *s, AVPacket *pkt)
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int ogg_write_packet(AVFormatContext *s, AVPacket *pkt)
|
||||
{
|
||||
int i;
|
||||
|
||||
if (pkt)
|
||||
return ogg_write_packet_internal(s, pkt);
|
||||
|
||||
for (i = 0; i < s->nb_streams; i++) {
|
||||
OGGStreamContext *oggstream = s->streams[i]->priv_data;
|
||||
if (oggstream->page.segments_count)
|
||||
ogg_buffer_page(s, oggstream);
|
||||
}
|
||||
|
||||
ogg_write_pages(s, 2);
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int ogg_write_trailer(AVFormatContext *s)
|
||||
{
|
||||
int i;
|
||||
@ -647,7 +664,7 @@ AVOutputFormat ff_ogg_muxer = {
|
||||
.write_header = ogg_write_header,
|
||||
.write_packet = ogg_write_packet,
|
||||
.write_trailer = ogg_write_trailer,
|
||||
.flags = AVFMT_TS_NEGATIVE,
|
||||
.flags = AVFMT_TS_NEGATIVE | AVFMT_ALLOW_FLUSH,
|
||||
.priv_class = &ogg_muxer_class,
|
||||
};
|
||||
#endif
|
||||
|
@ -31,7 +31,7 @@
|
||||
|
||||
#define LIBAVFORMAT_VERSION_MAJOR 55
|
||||
#define LIBAVFORMAT_VERSION_MINOR 42
|
||||
#define LIBAVFORMAT_VERSION_MICRO 100
|
||||
#define LIBAVFORMAT_VERSION_MICRO 101
|
||||
|
||||
#define LIBAVFORMAT_VERSION_INT AV_VERSION_INT(LIBAVFORMAT_VERSION_MAJOR, \
|
||||
LIBAVFORMAT_VERSION_MINOR, \
|
||||
|
Loading…
Reference in New Issue
Block a user