* commit '3f7e94eccd1c0d64679f2c4eda8bb942a158dfac':
mpegts: Move the option section to the bottom
Conflicts:
libavformat/mpegtsenc.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
... | ... |
@@ -94,50 +94,6 @@ typedef struct MpegTSWrite { |
94 | 94 |
#define DEFAULT_PES_HEADER_FREQ 16 |
95 | 95 |
#define DEFAULT_PES_PAYLOAD_SIZE ((DEFAULT_PES_HEADER_FREQ - 1) * 184 + 170) |
96 | 96 |
|
97 |
-static const AVOption options[] = { |
|
98 |
- { "mpegts_transport_stream_id", "Set transport_stream_id field.", |
|
99 |
- offsetof(MpegTSWrite, transport_stream_id), AV_OPT_TYPE_INT, {.i64 = 0x0001 }, 0x0001, 0xffff, AV_OPT_FLAG_ENCODING_PARAM}, |
|
100 |
- { "mpegts_original_network_id", "Set original_network_id field.", |
|
101 |
- offsetof(MpegTSWrite, original_network_id), AV_OPT_TYPE_INT, {.i64 = 0x0001 }, 0x0001, 0xffff, AV_OPT_FLAG_ENCODING_PARAM}, |
|
102 |
- { "mpegts_service_id", "Set service_id field.", |
|
103 |
- offsetof(MpegTSWrite, service_id), AV_OPT_TYPE_INT, {.i64 = 0x0001 }, 0x0001, 0xffff, AV_OPT_FLAG_ENCODING_PARAM}, |
|
104 |
- { "mpegts_pmt_start_pid", "Set the first pid of the PMT.", |
|
105 |
- offsetof(MpegTSWrite, pmt_start_pid), AV_OPT_TYPE_INT, {.i64 = 0x1000 }, 0x0010, 0x1f00, AV_OPT_FLAG_ENCODING_PARAM}, |
|
106 |
- { "mpegts_start_pid", "Set the first pid.", |
|
107 |
- offsetof(MpegTSWrite, start_pid), AV_OPT_TYPE_INT, {.i64 = 0x0100 }, 0x0100, 0x0f00, AV_OPT_FLAG_ENCODING_PARAM}, |
|
108 |
- {"mpegts_m2ts_mode", "Enable m2ts mode.", |
|
109 |
- offsetof(MpegTSWrite, m2ts_mode), AV_OPT_TYPE_INT, {.i64 = -1 }, |
|
110 |
- -1,1, AV_OPT_FLAG_ENCODING_PARAM}, |
|
111 |
- { "muxrate", NULL, offsetof(MpegTSWrite, mux_rate), AV_OPT_TYPE_INT, {.i64 = 1}, 0, INT_MAX, AV_OPT_FLAG_ENCODING_PARAM}, |
|
112 |
- { "pes_payload_size", "Minimum PES packet payload in bytes", |
|
113 |
- offsetof(MpegTSWrite, pes_payload_size), AV_OPT_TYPE_INT, {.i64 = DEFAULT_PES_PAYLOAD_SIZE}, 0, INT_MAX, AV_OPT_FLAG_ENCODING_PARAM}, |
|
114 |
- { "mpegts_flags", "MPEG-TS muxing flags", offsetof(MpegTSWrite, flags), AV_OPT_TYPE_FLAGS, {.i64 = 0}, 0, INT_MAX, |
|
115 |
- AV_OPT_FLAG_ENCODING_PARAM, "mpegts_flags" }, |
|
116 |
- { "resend_headers", "Reemit PAT/PMT before writing the next packet", |
|
117 |
- 0, AV_OPT_TYPE_CONST, {.i64 = MPEGTS_FLAG_REEMIT_PAT_PMT}, 0, INT_MAX, |
|
118 |
- AV_OPT_FLAG_ENCODING_PARAM, "mpegts_flags"}, |
|
119 |
- { "latm", "Use LATM packetization for AAC", |
|
120 |
- 0, AV_OPT_TYPE_CONST, {.i64 = MPEGTS_FLAG_AAC_LATM}, 0, INT_MAX, |
|
121 |
- AV_OPT_FLAG_ENCODING_PARAM, "mpegts_flags"}, |
|
122 |
- // backward compatibility |
|
123 |
- { "resend_headers", "Reemit PAT/PMT before writing the next packet", |
|
124 |
- offsetof(MpegTSWrite, reemit_pat_pmt), AV_OPT_TYPE_INT, {.i64 = 0}, 0, INT_MAX, AV_OPT_FLAG_ENCODING_PARAM}, |
|
125 |
- { "mpegts_copyts", "don't offset dts/pts", |
|
126 |
- offsetof(MpegTSWrite, copyts), AV_OPT_TYPE_INT, {.i64=-1}, -1, 1, AV_OPT_FLAG_ENCODING_PARAM}, |
|
127 |
- { "tables_version", "set PAT, PMT and SDT version", |
|
128 |
- offsetof(MpegTSWrite, tables_version), AV_OPT_TYPE_INT, {.i64=0}, 0, 31, AV_OPT_FLAG_ENCODING_PARAM}, |
|
129 |
- { "omit_video_pes_length", "Omit the PES packet length for video packets", |
|
130 |
- offsetof(MpegTSWrite, omit_video_pes_length), AV_OPT_TYPE_INT, {.i64=1}, 0, 1, AV_OPT_FLAG_ENCODING_PARAM}, |
|
131 |
- { NULL }, |
|
132 |
-}; |
|
133 |
- |
|
134 |
-static const AVClass mpegts_muxer_class = { |
|
135 |
- .class_name = "MPEGTS muxer", |
|
136 |
- .item_name = av_default_item_name, |
|
137 |
- .option = options, |
|
138 |
- .version = LIBAVUTIL_VERSION_INT, |
|
139 |
-}; |
|
140 |
- |
|
141 | 97 |
/* NOTE: 4 bytes must be left at the end for the crc32 */ |
142 | 98 |
static void mpegts_write_section(MpegTSSection *s, uint8_t *buf, int len) |
143 | 99 |
{ |
... | ... |
@@ -1390,6 +1346,50 @@ static int mpegts_write_end(AVFormatContext *s) |
1390 | 1390 |
return 0; |
1391 | 1391 |
} |
1392 | 1392 |
|
1393 |
+static const AVOption options[] = { |
|
1394 |
+ { "mpegts_transport_stream_id", "Set transport_stream_id field.", |
|
1395 |
+ offsetof(MpegTSWrite, transport_stream_id), AV_OPT_TYPE_INT, {.i64 = 0x0001 }, 0x0001, 0xffff, AV_OPT_FLAG_ENCODING_PARAM}, |
|
1396 |
+ { "mpegts_original_network_id", "Set original_network_id field.", |
|
1397 |
+ offsetof(MpegTSWrite, original_network_id), AV_OPT_TYPE_INT, {.i64 = 0x0001 }, 0x0001, 0xffff, AV_OPT_FLAG_ENCODING_PARAM}, |
|
1398 |
+ { "mpegts_service_id", "Set service_id field.", |
|
1399 |
+ offsetof(MpegTSWrite, service_id), AV_OPT_TYPE_INT, {.i64 = 0x0001 }, 0x0001, 0xffff, AV_OPT_FLAG_ENCODING_PARAM}, |
|
1400 |
+ { "mpegts_pmt_start_pid", "Set the first pid of the PMT.", |
|
1401 |
+ offsetof(MpegTSWrite, pmt_start_pid), AV_OPT_TYPE_INT, {.i64 = 0x1000 }, 0x0010, 0x1f00, AV_OPT_FLAG_ENCODING_PARAM}, |
|
1402 |
+ { "mpegts_start_pid", "Set the first pid.", |
|
1403 |
+ offsetof(MpegTSWrite, start_pid), AV_OPT_TYPE_INT, {.i64 = 0x0100 }, 0x0100, 0x0f00, AV_OPT_FLAG_ENCODING_PARAM}, |
|
1404 |
+ {"mpegts_m2ts_mode", "Enable m2ts mode.", |
|
1405 |
+ offsetof(MpegTSWrite, m2ts_mode), AV_OPT_TYPE_INT, {.i64 = -1 }, |
|
1406 |
+ -1,1, AV_OPT_FLAG_ENCODING_PARAM}, |
|
1407 |
+ { "muxrate", NULL, offsetof(MpegTSWrite, mux_rate), AV_OPT_TYPE_INT, {.i64 = 1}, 0, INT_MAX, AV_OPT_FLAG_ENCODING_PARAM}, |
|
1408 |
+ { "pes_payload_size", "Minimum PES packet payload in bytes", |
|
1409 |
+ offsetof(MpegTSWrite, pes_payload_size), AV_OPT_TYPE_INT, {.i64 = DEFAULT_PES_PAYLOAD_SIZE}, 0, INT_MAX, AV_OPT_FLAG_ENCODING_PARAM}, |
|
1410 |
+ { "mpegts_flags", "MPEG-TS muxing flags", offsetof(MpegTSWrite, flags), AV_OPT_TYPE_FLAGS, {.i64 = 0}, 0, INT_MAX, |
|
1411 |
+ AV_OPT_FLAG_ENCODING_PARAM, "mpegts_flags" }, |
|
1412 |
+ { "resend_headers", "Reemit PAT/PMT before writing the next packet", |
|
1413 |
+ 0, AV_OPT_TYPE_CONST, {.i64 = MPEGTS_FLAG_REEMIT_PAT_PMT}, 0, INT_MAX, |
|
1414 |
+ AV_OPT_FLAG_ENCODING_PARAM, "mpegts_flags"}, |
|
1415 |
+ { "latm", "Use LATM packetization for AAC", |
|
1416 |
+ 0, AV_OPT_TYPE_CONST, {.i64 = MPEGTS_FLAG_AAC_LATM}, 0, INT_MAX, |
|
1417 |
+ AV_OPT_FLAG_ENCODING_PARAM, "mpegts_flags"}, |
|
1418 |
+ // backward compatibility |
|
1419 |
+ { "resend_headers", "Reemit PAT/PMT before writing the next packet", |
|
1420 |
+ offsetof(MpegTSWrite, reemit_pat_pmt), AV_OPT_TYPE_INT, {.i64 = 0}, 0, INT_MAX, AV_OPT_FLAG_ENCODING_PARAM}, |
|
1421 |
+ { "mpegts_copyts", "don't offset dts/pts", |
|
1422 |
+ offsetof(MpegTSWrite, copyts), AV_OPT_TYPE_INT, {.i64=-1}, -1, 1, AV_OPT_FLAG_ENCODING_PARAM}, |
|
1423 |
+ { "tables_version", "set PAT, PMT and SDT version", |
|
1424 |
+ offsetof(MpegTSWrite, tables_version), AV_OPT_TYPE_INT, {.i64=0}, 0, 31, AV_OPT_FLAG_ENCODING_PARAM}, |
|
1425 |
+ { "omit_video_pes_length", "Omit the PES packet length for video packets", |
|
1426 |
+ offsetof(MpegTSWrite, omit_video_pes_length), AV_OPT_TYPE_INT, {.i64=1}, 0, 1, AV_OPT_FLAG_ENCODING_PARAM}, |
|
1427 |
+ { NULL }, |
|
1428 |
+}; |
|
1429 |
+ |
|
1430 |
+static const AVClass mpegts_muxer_class = { |
|
1431 |
+ .class_name = "MPEGTS muxer", |
|
1432 |
+ .item_name = av_default_item_name, |
|
1433 |
+ .option = options, |
|
1434 |
+ .version = LIBAVUTIL_VERSION_INT, |
|
1435 |
+}; |
|
1436 |
+ |
|
1393 | 1437 |
AVOutputFormat ff_mpegts_muxer = { |
1394 | 1438 |
.name = "mpegts", |
1395 | 1439 |
.long_name = NULL_IF_CONFIG_SMALL("MPEG-TS (MPEG-2 Transport Stream)"), |