comparison matroskaenc.c @ 2428:54f89ce33554 libavformat

Get rid of put_ebml_utf8(); the error checking that would have distinguished it from put_ebml_string() belongs elsewhere in lavf.
author conrad
date Wed, 05 Sep 2007 00:22:43 +0000
parents 407d3205f02d
children 326e6fcf9f85
comparison
equal deleted inserted replaced
2427:407d3205f02d 2428:54f89ce33554
73 put_ebml_id(pb, elementid); 73 put_ebml_id(pb, elementid);
74 put_ebml_size(pb, size, 0); 74 put_ebml_size(pb, size, 0);
75 put_buffer(pb, buf, size); 75 put_buffer(pb, buf, size);
76 } 76 }
77 77
78 // XXX: should we do any special checking for valid strings for these 2 functions?
79 static void put_ebml_string(ByteIOContext *pb, unsigned int elementid, char *str) 78 static void put_ebml_string(ByteIOContext *pb, unsigned int elementid, char *str)
80 {
81 put_ebml_binary(pb, elementid, str, strlen(str));
82 }
83
84 static void put_ebml_utf8(ByteIOContext *pb, unsigned int elementid, char *str)
85 { 79 {
86 put_ebml_binary(pb, elementid, str, strlen(str)); 80 put_ebml_binary(pb, elementid, str, strlen(str));
87 } 81 }
88 82
89 static offset_t start_ebml_master(ByteIOContext *pb, unsigned int elementid) 83 static offset_t start_ebml_master(ByteIOContext *pb, unsigned int elementid)
125 mkv->segment = start_ebml_master(pb, MATROSKA_ID_SEGMENT); 119 mkv->segment = start_ebml_master(pb, MATROSKA_ID_SEGMENT);
126 120
127 segment_info = start_ebml_master(pb, MATROSKA_ID_INFO); 121 segment_info = start_ebml_master(pb, MATROSKA_ID_INFO);
128 put_ebml_uint(pb, MATROSKA_ID_TIMECODESCALE, 1000000); 122 put_ebml_uint(pb, MATROSKA_ID_TIMECODESCALE, 1000000);
129 if (strlen(s->title)) 123 if (strlen(s->title))
130 put_ebml_utf8(pb, MATROSKA_ID_TITLE, s->title); 124 put_ebml_string(pb, MATROSKA_ID_TITLE, s->title);
131 if (!(s->streams[0]->codec->flags & CODEC_FLAG_BITEXACT)) { 125 if (!(s->streams[0]->codec->flags & CODEC_FLAG_BITEXACT)) {
132 put_ebml_utf8(pb, MATROSKA_ID_MUXINGAPP, LIBAVFORMAT_IDENT); 126 put_ebml_string(pb, MATROSKA_ID_MUXINGAPP, LIBAVFORMAT_IDENT);
133 // XXX: both are required; something better for writing app? 127 // XXX: both are required; something better for writing app?
134 put_ebml_utf8(pb, MATROSKA_ID_WRITINGAPP, LIBAVFORMAT_IDENT); 128 put_ebml_string(pb, MATROSKA_ID_WRITINGAPP, LIBAVFORMAT_IDENT);
135 } 129 }
136 // XXX: segment UID and duration 130 // XXX: segment UID and duration
137 end_ebml_master(pb, segment_info); 131 end_ebml_master(pb, segment_info);
138 132
139 tracks = start_ebml_master(pb, MATROSKA_ID_TRACKS); 133 tracks = start_ebml_master(pb, MATROSKA_ID_TRACKS);