isomp4: Rename GstQTMux to GstBaseQTMux to avoid breaking API
authorThibault Saunier <tsaunier@igalia.com>
Tue, 29 Sep 2020 12:44:54 +0000 (09:44 -0300)
committerThibault Saunier <tsaunier@igalia.com>
Wed, 30 Sep 2020 12:18:13 +0000 (09:18 -0300)
Since 52b63de19ada283c1180c8fc00cacb1465fdf10f the qtmux GType was
renamed GstQTMuxElement which breaks presets, revert that change.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/755>

docs/gst_plugins_cache.json
gst/isomp4/gstqtmux-doc.c
gst/isomp4/gstqtmux.c
gst/isomp4/gstqtmuxmap.c

index 73a9bb3..f8ac35e 100644 (file)
                 "description": "Multiplex audio and video into a 3GPP file",
                 "hierarchy": [
                     "Gst3GPPMux",
-                    "GstQTMux",
+                    "GstBaseQTMux",
                     "GstAggregator",
                     "GstElement",
                     "GstObject",
                 "description": "Multiplex audio and video into a ISML file",
                 "hierarchy": [
                     "GstISMLMux",
-                    "GstQTMux",
+                    "GstBaseQTMux",
                     "GstAggregator",
                     "GstElement",
                     "GstObject",
                 "description": "Multiplex audio and video into a MJ2 file",
                 "hierarchy": [
                     "GstMJ2Mux",
-                    "GstQTMux",
+                    "GstBaseQTMux",
                     "GstAggregator",
                     "GstElement",
                     "GstObject",
                 "description": "Multiplex audio and video into a MP4 file",
                 "hierarchy": [
                     "GstMP4Mux",
-                    "GstQTMux",
+                    "GstBaseQTMux",
                     "GstAggregator",
                     "GstElement",
                     "GstObject",
                 "author": "Thiago Sousa Santos <thiagoss@embedded.ufcg.edu.br>",
                 "description": "Multiplex audio and video into a QuickTime file",
                 "hierarchy": [
-                    "GstQTMuxElement",
                     "GstQTMux",
+                    "GstBaseQTMux",
                     "GstAggregator",
                     "GstElement",
                     "GstObject",
         "filename": "gstisomp4",
         "license": "LGPL",
         "other-types": {
-            "GstQTMux": {
+            "GstBaseQTMux": {
                 "hierarchy": [
-                    "GstQTMux",
+                    "GstBaseQTMux",
                     "GstAggregator",
                     "GstElement",
                     "GstObject",
index a3906c4..bc9b3e8 100644 (file)
@@ -67,7 +67,7 @@
  * The fragmented file features defined (only) in ISO Base Media are used by
  * ISMV files making up (a.o.) Smooth Streaming (ismlmux).
  *
- * A few properties (#GstQTMux:movie-timescale, #GstQTMux:trak-timescale,
+ * A few properties (#GstBaseQTMux:movie-timescale, #GstBaseQTMux:trak-timescale,
  * #GstQTMuxPad:trak-timescale) allow adjusting some technical parameters,
  * which might be useful in (rare) cases to resolve compatibility issues in
  * some situations.
  * Some other properties influence the result more fundamentally.
  * A typical mov/mp4 file's metadata (aka moov) is located at the end of the
  * file, somewhat contrary to this usually being called "the header".
- * However, a #GstQTMux:faststart file will (with some effort) arrange this to
+ * However, a #GstBaseQTMux:faststart file will (with some effort) arrange this to
  * be located near start of the file, which then allows it e.g. to be played
  * while downloading. Alternatively, rather than having one chunk of metadata at
  * start (or end), there can be some metadata at start and most of the other
- * data can be spread out into fragments of #GstQTMux:fragment-duration.
+ * data can be spread out into fragments of #GstBaseQTMux:fragment-duration.
  * If such fragmented layout is intended for streaming purposes, then
- * #GstQTMuxElement:streamable allows foregoing to add index metadata (at the end of
+ * #GstQTMux:streamable allows foregoing to add index metadata (at the end of
  * file).
  *
- * When the maximum duration to be recorded can be known in advance, #GstQTMuxElement
+ * When the maximum duration to be recorded can be known in advance, #GstQTMux
  * also supports a 'Robust Muxing' mode. In robust muxing mode,  space for the
  * headers are reserved at the start of muxing, and rewritten at a configurable
  * interval, so that the output file is always playable, even if the recording
  * is interrupted uncleanly by a crash. Robust muxing mode requires a seekable
  * output, such as filesink, because it needs to rewrite the start of the file.
  *
- * To enable robust muxing mode, set the #GstQTMux:reserved-moov-update-period
- * and #GstQTMux:reserved-max-duration property. Also present is the
- * #GstQTMux:reserved-bytes-per-sec property, which can be increased if
+ * To enable robust muxing mode, set the #GstBaseQTMux:reserved-moov-update-period
+ * and #GstBaseQTMux:reserved-max-duration property. Also present is the
+ * #GstBaseQTMux:reserved-bytes-per-sec property, which can be increased if
  * for some reason the default is not large enough and the initial reserved
  * space for headers is too small. Applications can monitor the
- * #GstQTMux:reserved-duration-remaining property to see how close to full
+ * #GstBaseQTMux:reserved-duration-remaining property to see how close to full
  * the reserved space is becoming.
  *
  * Applications that wish to be able to use/edit a file while it is being
  * completely valid header from the start for all tracks (i.e. it appears as
  * though the file is "reserved-max-duration" long with all samples
  * present). This mode can be enabled by setting the
- * #GstQTMux:reserved-moov-update-period and #GstQTMux:reserved-prefill
+ * #GstBaseQTMux:reserved-moov-update-period and #GstBaseQTMux:reserved-prefill
  * properties. Note that this mode is only possible with input streams that have
  * a fixed sample size (such as raw audio and Prores Video) and that don't
  * have reordered samples.
  * The fragmented file features defined (only) in ISO Base Media are used by
  * ISMV files making up (a.o.) Smooth Streaming (ismlmux).
  *
- * A few properties (#GstQTMux:movie-timescale, #GstQTMux:trak-timescale)
+ * A few properties (#GstBaseQTMux:movie-timescale, #GstBaseQTMux:trak-timescale)
  * allow adjusting some technical parameters, which might be useful in (rare)
  * cases to resolve compatibility issues in some situations.
  *
  * Some other properties influence the result more fundamentally.
  * A typical mov/mp4 file's metadata (aka moov) is located at the end of the
  * file, somewhat contrary to this usually being called "the header".
- * However, a #GstQTMux:faststart file will (with some effort) arrange this to
+ * However, a #GstBaseQTMux:faststart file will (with some effort) arrange this to
  * be located near start of the file, which then allows it e.g. to be played
  * while downloading. Alternatively, rather than having one chunk of metadata at
  * start (or end), there can be some metadata at start and most of the other
- * data can be spread out into fragments of #GstQTMux:fragment-duration.
+ * data can be spread out into fragments of #GstBaseQTMux:fragment-duration.
  * If such fragmented layout is intended for streaming purposes, then
  * #GstMP4Mux:streamable allows foregoing to add index metadata (at the end of
  * file).
  * The fragmented file features defined (only) in ISO Base Media are used by
  * ISMV files making up (a.o.) Smooth Streaming (ismlmux).
  *
- * A few properties (#GstQTMux:movie-timescale, #GstQTMux:trak-timescale)
+ * A few properties (#GstBaseQTMux:movie-timescale, #GstBaseQTMux:trak-timescale)
  * allow adjusting some technical parameters, which might be useful in (rare)
  * cases to resolve compatibility issues in some situations.
  *
  * Some other properties influence the result more fundamentally.
  * A typical mov/mp4 file's metadata (aka moov) is located at the end of the file,
  * somewhat contrary to this usually being called "the header". However, a
- * #GstQTMux:faststart file will (with some effort) arrange this to be located
+ * #GstBaseQTMux:faststart file will (with some effort) arrange this to be located
  * near start of the file, which then allows it e.g. to be played while
  * downloading. Alternatively, rather than having one chunk of metadata at start
  * (or end), there can be some metadata at start and most of the other data can
- * be spread out into fragments of #GstQTMux:fragment-duration. If such
+ * be spread out into fragments of #GstBaseQTMux:fragment-duration. If such
  * fragmented layout is intended for streaming purposes, then
  * #Gst3GPPMux:streamable allows foregoing to add index metadata (at the end of
  * file).
  * The fragmented file features defined (only) in ISO Base Media are used by
  * ISMV files making up (a.o.) Smooth Streaming (ismlmux).
  *
- * A few properties (#GstQTMux:movie-timescale, #GstQTMux:trak-timescale)
+ * A few properties (#GstBaseQTMux:movie-timescale, #GstBaseQTMux:trak-timescale)
  * allow adjusting some technical parameters, which might be useful in (rare)
  * cases to resolve compatibility issues in some situations.
  *
  * Some other properties influence the result more fundamentally.
  * A typical mov/mp4 file's metadata (aka moov) is located at the end of the file,
  * somewhat contrary to this usually being called "the header". However, a
- * #GstQTMux:faststart file will (with some effort) arrange this to be located
+ * #GstBaseQTMux:faststart file will (with some effort) arrange this to be located
  * near start of the file, which then allows it e.g. to be played while
  * downloading. Alternatively, rather than having one chunk of metadata at start
  * (or end), there can be some metadata at start and most of the other data can
- * be spread out into fragments of #GstQTMux:fragment-duration. If such
+ * be spread out into fragments of #GstBaseQTMux:fragment-duration. If such
  * fragmented layout is intended for streaming purposes, then
  * #GstMJ2Mux:streamable allows foregoing to add index metadata (at the end of
  * file).
  * The fragmented file features defined (only) in ISO Base Media are used by
  * ISMV files making up (a.o.) Smooth Streaming (ismlmux).
  *
- * A few properties (#GstQTMux:movie-timescale, #GstQTMux:trak-timescale)
+ * A few properties (#GstBaseQTMux:movie-timescale, #GstBaseQTMux:trak-timescale)
  * allow adjusting some technical parameters, which might be useful in (rare)
  * cases to resolve compatibility issues in some situations.
  *
  * Some other properties influence the result more fundamentally.
  * A typical mov/mp4 file's metadata (aka moov) is located at the end of the file,
  * somewhat contrary to this usually being called "the header". However, a
- * #GstQTMux:faststart file will (with some effort) arrange this to be located
+ * #GstBaseQTMux:faststart file will (with some effort) arrange this to be located
  * near start of the file, which then allows it e.g. to be played while
  * downloading. Alternatively, rather than having one chunk of metadata at start
  * (or end), there can be some metadata at start and most of the other data can
- * be spread out into fragments of #GstQTMux:fragment-duration. If such
+ * be spread out into fragments of #GstBaseQTMux:fragment-duration. If such
  * fragmented layout is intended for streaming purposes, then
  * #GstISMLMux:streamable allows foregoing to add index metadata (at the end of
  * file).
index f01664e..8de89e8 100644 (file)
@@ -597,7 +597,7 @@ gst_qt_mux_class_init (GstQTMuxClass * klass)
           G_PARAM_READWRITE | G_PARAM_CONSTRUCT | G_PARAM_STATIC_STRINGS));
 
   /**
-   * GstQTMux:fragment-mode:
+   * GstBaseQTMux:fragment-mode:
    *
    * Influence how fragmented files are produces.  Only has any affect when the
    * the 'fragment-duration' property is set to a value greater than '0'
@@ -7352,7 +7352,7 @@ gst_qt_mux_register (GstPlugin * plugin)
   GST_LOG ("Registering muxers");
 
   parent_type =
-      g_type_register_static (GST_TYPE_AGGREGATOR, "GstQTMux",
+      g_type_register_static (GST_TYPE_AGGREGATOR, "GstBaseQTMux",
       &parent_typeinfo, 0);
   g_type_add_interface_static (parent_type, GST_TYPE_TAG_SETTER,
       &tag_setter_info);
index 6ccfb20..7fa741a 100644 (file)
@@ -179,7 +179,7 @@ GstQTMuxFormatProp gst_qt_mux_format_list[] = {
         GST_RANK_PRIMARY,
         "qtmux",
         "QuickTime",
-        "GstQTMuxElement",
+        "GstQTMux",
         GST_STATIC_CAPS ("video/quicktime, variant = (string) apple; "
             "video/quicktime"),
         GST_STATIC_CAPS ("video/x-raw, "