[Bug 796836] avwait: Add recording property

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Fri Jul 20 07:19:07 UTC 2018


https://bugzilla.gnome.org/show_bug.cgi?id=796836

Sebastian Dröge (slomo) <slomo at coaxion.net> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
 Attachment #373096|none                        |reviewed
             status|                            |

--- Comment #6 from Sebastian Dröge (slomo) <slomo at coaxion.net> ---
Review of attachment 373096:
 --> (https://bugzilla.gnome.org/review?bug=796836&attachment=373096)

::: gst/timecode/gstavwait.c
@@ +785,3 @@
   }
+
+  self->audio_running_time_to_wait_for = self->running_time_to_wait_for;

All this code could use some comments. Why is this done, what's the purpose? :)

@@ +790,3 @@
+    if (self->was_recording) {
+      GST_INFO_OBJECT (self, "Recording stopped at %" GST_TIME_FORMAT,
+          GST_TIME_ARGS (running_time));

Don't we have to tell the audio when exactly recording was stopped so that it
can also stop at that very same time (and clip the samples accordingly)?

That is, unsetting audio_running_time_to_wait_for below seems wrong also

@@ +796,3 @@
+      inbuf = NULL;
+    }
+    self->audio_running_time_to_wait_for = GST_CLOCK_TIME_NONE;

This especially means that below the audio would currently wait forever after
recording stopped

@@ +804,3 @@
+          GST_TIME_ARGS (self->running_time_to_wait_for), inbuf);
+    }
+  }

So we start/stop recording on the video side always immediately. This means
that the audio side must be throttled by the video, and must always be behind
the video

@@ +885,3 @@
               current_running_time, vsign, video_running_time) == 1
           /* Wait if we don't even know what to wait for yet */
+          || self->audio_running_time_to_wait_for == GST_CLOCK_TIME_NONE)) {

here you would wait forever when recording is stopped instead of advancing the
audio at the speed of the video

@@ +914,3 @@
     }
   }
+  if (self->audio_running_time_to_wait_for == GST_CLOCK_TIME_NONE

How would we ever get here considering the waiting above?

-- 
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