summaryrefslogtreecommitdiff
path: root/libavformat
diff options
context:
space:
mode:
authorAndreas Rheinhardt <andreas.rheinhardt@gmail.com>2020-04-29 20:33:06 +0200
committerAndreas Rheinhardt <andreas.rheinhardt@gmail.com>2020-05-06 10:38:53 +0200
commit8370c9c206367acaec1130fe47582590123b1b64 (patch)
tree39347fd68b59cc4c64683b6dd85aa4410f188c89 /libavformat
parent3122dcf2fe54c427aecdbba2ee85788981e3236b (diff)
avformat/matroskaenc: Simplify writing buffer
If one already has the contents of a master elements in a buffer of known size, then writing a EBML master element is no different from writing an EBML binary element. It is overtly complicated to use start/end_ebml_master() as these functions first write an unkown-length size field of the appropriate length, then write the buffer's contents, followed by a seek to the length field to overwrite it with the real size (obtained via avio_tell() although it was already known in advance), followed by another seek to the previous position. Just use put_ebml_binary() instead. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
Diffstat (limited to 'libavformat')
-rw-r--r--libavformat/matroskaenc.c4
1 files changed, 1 insertions, 3 deletions
diff --git a/libavformat/matroskaenc.c b/libavformat/matroskaenc.c
index e404b4d97f..1d155bc5c2 100644
--- a/libavformat/matroskaenc.c
+++ b/libavformat/matroskaenc.c
@@ -893,9 +893,7 @@ static void mkv_write_video_color(AVIOContext *pb, const AVCodecParameters *par,
colorinfo_size = avio_tell(dyn_cp);
if (colorinfo_size) {
- ebml_master colorinfo = start_ebml_master(pb, MATROSKA_ID_VIDEOCOLOR, colorinfo_size);
- avio_write(pb, colour, colorinfo_size);
- end_ebml_master(pb, colorinfo);
+ put_ebml_binary(pb, MATROSKA_ID_VIDEOCOLOR, colour, colorinfo_size);
}
}