ffmpeg/libavformat/jacosubenc.c
Andreas Rheinhardt 54e8dcce8e avformat/jacosubenc: Fix writing extradata
The terminating '\0' is no longer included in the size of
the extradata output by the demuxer since commit
36e61e24e7ac737b38c4382d439329352d9e0c29.
E.g. if one remuxes the JACOsub sample JACOsub_capability_tester.jss
from the FATE suite, one receives a file not recognized as JACOsub
before this patch.

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
2021-09-25 23:11:56 +02:00

42 lines
1.4 KiB
C

/*
* This file is part of FFmpeg.
*
* FFmpeg is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* FFmpeg is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with FFmpeg; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#include "avformat.h"
#include "rawenc.h"
static int jacosub_write_header(AVFormatContext *s)
{
const AVCodecParameters *par = s->streams[0]->codecpar;
if (par->extradata_size) {
avio_write(s->pb, par->extradata, par->extradata_size);
}
return 0;
}
const AVOutputFormat ff_jacosub_muxer = {
.name = "jacosub",
.long_name = NULL_IF_CONFIG_SMALL("JACOsub subtitle format"),
.mime_type = "text/x-jacosub",
.extensions = "jss,js",
.write_header = jacosub_write_header,
.write_packet = ff_raw_write_packet,
.flags = AVFMT_TS_NONSTRICT,
.subtitle_codec = AV_CODEC_ID_JACOSUB,
};