diff options
Diffstat (limited to 'omx/gstomxaudioenc.c')
-rw-r--r-- | omx/gstomxaudioenc.c | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/omx/gstomxaudioenc.c b/omx/gstomxaudioenc.c index a6ba861..3791279 100644 --- a/omx/gstomxaudioenc.c +++ b/omx/gstomxaudioenc.c @@ -379,7 +379,8 @@ gst_omx_audio_enc_loop (GstOMXAudioEnc * self) } GST_DEBUG_OBJECT (self, "Handling buffer: 0x%08x %" G_GUINT64_FORMAT, - (guint) buf->omx_buf->nFlags, (guint64) buf->omx_buf->nTimeStamp); + (guint) buf->omx_buf->nFlags, + (guint64) GST_OMX_GET_TICKS (buf->omx_buf->nTimeStamp)); /* This prevents a deadlock between the srcpad stream * lock and the videocodec stream lock, if ::reset() @@ -447,8 +448,8 @@ gst_omx_audio_enc_loop (GstOMXAudioEnc * self) } GST_BUFFER_TIMESTAMP (outbuf) = - gst_util_uint64_scale (buf->omx_buf->nTimeStamp, GST_SECOND, - OMX_TICKS_PER_SECOND); + gst_util_uint64_scale (GST_OMX_GET_TICKS (buf->omx_buf->nTimeStamp), + GST_SECOND, OMX_TICKS_PER_SECOND); if (buf->omx_buf->nTickCount != 0) GST_BUFFER_DURATION (outbuf) = gst_util_uint64_scale (buf->omx_buf->nTickCount, GST_SECOND, @@ -1036,9 +1037,9 @@ gst_omx_audio_enc_handle_frame (GstAudioEncoder * encoder, GstBuffer * inbuf) } if (timestamp != GST_CLOCK_TIME_NONE) { - buf->omx_buf->nTimeStamp = + GST_OMX_SET_TICKS (buf->omx_buf->nTimeStamp, gst_util_uint64_scale (timestamp + timestamp_offset, - OMX_TICKS_PER_SECOND, GST_SECOND); + OMX_TICKS_PER_SECOND, GST_SECOND)); self->last_upstream_ts = timestamp + timestamp_offset; } if (duration != GST_CLOCK_TIME_NONE) { @@ -1139,9 +1140,9 @@ gst_omx_audio_enc_drain (GstOMXAudioEnc * self) g_mutex_lock (&self->drain_lock); self->draining = TRUE; buf->omx_buf->nFilledLen = 0; - buf->omx_buf->nTimeStamp = + GST_OMX_SET_TICKS (buf->omx_buf->nTimeStamp, gst_util_uint64_scale (self->last_upstream_ts, OMX_TICKS_PER_SECOND, - GST_SECOND); + GST_SECOND)); buf->omx_buf->nTickCount = 0; buf->omx_buf->nFlags |= OMX_BUFFERFLAG_EOS; err = gst_omx_port_release_buffer (self->enc_in_port, buf); |