Browse code

Merge commit '3f7e94eccd1c0d64679f2c4eda8bb942a158dfac'

* commit '3f7e94eccd1c0d64679f2c4eda8bb942a158dfac':
mpegts: Move the option section to the bottom

Conflicts:
libavformat/mpegtsenc.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>

Michael Niedermayer authored on 2014/06/11 06:27:16
Showing 1 changed files
... ...
@@ -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)"),