GNOME Bugzilla – Bug 781447
qtmux: Add new prefill recording mode
Last modified: 2017-05-09 12:22:43 UTC
See commit message. This is what software like Adobe Premiere and FinalCut Pro expect to see for files that are still written to.
Created attachment 349993 [details] [review] qtmux: Add new prefill recording mode This sets up a moov with the correct sample positions beforehand and only works with constant framerate, I-frame only streams. Currently only support for ProRes and raw audio is implemented but adding new codecs is just a matter of defining appropriate maximum frame sizes.
Review of attachment 349993 [details] [review]: Mostly looks good. Some small comments. ::: gst/isomp4/gstqtmux.c @@ +296,3 @@ #define DEFAULT_RESERVED_MOOV_UPDATE_PERIOD GST_CLOCK_TIME_NONE #define DEFAULT_RESERVED_BYTES_PER_SEC_PER_TRAK 550 +#define DEFAULT_RESERVED_PREFILL TRUE Should this be TRUE? @@ +2214,3 @@ + default: + GST_ERROR_OBJECT (qtmux, "unsupported codec for pre-filling"); + return -1; Slightly strange to put the default case handler in the middle of the switch. @@ +2375,3 @@ + if (walk == NULL) { + qpad->expected_sample_duration_n = 25; + qpad->expected_sample_duration_d = 1; Might want some kind of discoverable log output for this fallback case? @@ +2439,3 @@ +static gboolean +gst_qt_mux_prefill_samples (GstQTMux * qtmux) +{ The result of this function isn't checked anywhere, and doesn't seem to generate any GST_ELEMENT_ERROR on unsupported codecs
Created attachment 350012 [details] [review] qtmux: Add new prefill recording mode This sets up a moov with the correct sample positions beforehand and only works with constant framerate, I-frame only streams. Currently only support for ProRes and raw audio is implemented but adding new codecs is just a matter of defining appropriate maximum frame sizes.
Thanks!
Created attachment 351423 [details] [review] qtmux: Add new prefill recording mode This sets up a moov with the correct sample positions beforehand and only works with constant framerate, I-frame only streams. Currently only support for ProRes and raw audio is implemented but adding new codecs is just a matter of defining appropriate maximum frame sizes.
Created attachment 351427 [details] [review] qtmux: Add new prefill recording mode This sets up a moov with the correct sample positions beforehand and only works with constant framerate, I-frame only streams. Currently only support for ProRes and raw audio is implemented but adding new codecs is just a matter of defining appropriate maximum frame sizes.
Attachment 351427 [details] pushed as 55f9496 - qtmux: Add new prefill recording mode