[Bug 767950] qtmux: Add support for writing timecode track
GStreamer (GNOME Bugzilla)
bugzilla at gnome.org
Wed Aug 10 03:29:53 UTC 2016
https://bugzilla.gnome.org/show_bug.cgi?id=767950
Thiago Sousa Santos <thiagossantos at gmail.com> changed:
What |Removed |Added
----------------------------------------------------------------------------
Attachment #332953|none |needs-work
status| |
--- Comment #8 from Thiago Sousa Santos <thiagossantos at gmail.com> ---
Review of attachment 332953:
--> (https://bugzilla.gnome.org/review?bug=767950&attachment=332953)
This is looking good, only some minor stuff to fix before merge.
Thanks for working on this!
::: gst/isomp4/atoms.c
@@ +421,3 @@
+ tcmi->bg_color[2] = 0;
+ if (tcmi->font_name) {
+ atom_full_clear (&tcmi->header);
g_free is NULL-safe already, no need for this 'if'
@@ +557,3 @@
+ tmcd->name.language_code = 0;
+ if (tmcd->name.name) {
+ tmcd->timescale = 0;
same comment about g_free and if here.
@@ +2603,3 @@
+ }
+
+ /* FIXME not needing this atom might be confused with error while copying
*/
This is this size + fourcc (8) plus 4 for each entry
::: gst/isomp4/atoms.h
@@ +290,3 @@
+ guint16 text_face;
+ guint16 text_size;
+ guint16 padding;
I think in the rest of the code we don't represent entries that have a fixed
value. Just write them directly in the 'copy_data' functions. You can live a
comment if you want, to document that there are padding/reserved bytes.
Not a minor issue but better to keep the code consistent.
@@ +310,3 @@
+ guint16 opcolor[3];
+ guint8 balance;
+typedef struct _AtomTMCD
Same here
@@ +533,3 @@
+
+ guint32 reftype;
+ //guint32 tref_index;
Change comment to /* */
::: gst/isomp4/gstqtmux.c
@@ +2528,3 @@
+ gst_segment_init (&segment, GST_FORMAT_BYTES);
+ segment.start = offset;
+ guint64 offset = qtmux->tc_pos;
I don't see where this is reset back to the original writing position. So when
this is called it seems like it will start overwriting data after the timecode
is updated.
@@ +3067,3 @@
}
+ if (buf != NULL && (pad->tc_trak == NULL || qtmux->tc_pos != -1)) {
It would be nice to give this whole block its own function so we can name what
this all is doing. Something like: gst_qt_mux_check_and_update_timecode()
What do you think?
--
You are receiving this mail because:
You are the QA Contact for the bug.
You are the assignee for the bug.
More information about the gstreamer-bugs
mailing list