[gstreamer-bugs] [Bug 635720] vp8enc incorrectly sets timestamps based on theoretical framerate

GStreamer (bugzilla.gnome.org) bugzilla at gnome.org
Wed Nov 24 16:55:27 PST 2010


https://bugzilla.gnome.org/show_bug.cgi?id=635720
  GStreamer | gst-plugins-bad | git

--- Comment #1 from Blaise Gassend <blaise at willowgarage.com> 2010-11-25 00:53:28 UTC ---
It appears that gstbasevideoencoder sets the timestamps correctly, so the
following patch gets things working fine for streaming apps. I suspect that
this code is in there for streaming from a file, and I'm not sure what the
correct way to generate the timestamps is when reading from a file. Based on
comparing with other encoders, I do not think that synthesizing timestamps in
the encoder is the right thing to do.

--- gstvp8enc.c.orig    2010-11-24 14:26:50.000000000 -0800
+++ gstvp8enc.c 2010-11-24 16:45:30.000000000 -0800
@@ -953,9 +953,6 @@
       encoder->keyframe_distance++;
     }

-    GST_BUFFER_TIMESTAMP (buf) = gst_video_state_get_timestamp (state,
-        &base_video_encoder->segment, frame->presentation_frame_number);
-    GST_BUFFER_DURATION (buf) = 0;
     GST_BUFFER_OFFSET_END (buf) =
         _to_granulepos (frame->presentation_frame_number + 1,
         inv_count, encoder->keyframe_distance);
@@ -983,11 +980,6 @@
     encoder->keyframe_distance++;
   }

-  GST_BUFFER_TIMESTAMP (buf) = gst_video_state_get_timestamp (state,
-      &base_video_encoder->segment, frame->presentation_frame_number);
-  GST_BUFFER_DURATION (buf) = gst_video_state_get_timestamp (state,
-      &base_video_encoder->segment,
-      frame->presentation_frame_number + 1) - GST_BUFFER_TIMESTAMP (buf);
   GST_BUFFER_OFFSET_END (buf) =
       _to_granulepos (frame->presentation_frame_number + 1,
       0, encoder->keyframe_distance);

-- 
Configure bugmail: https://bugzilla.gnome.org/userprefs.cgi?tab=email
------- 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