*/
gst_omx_port_update_port_definition (port, NULL);
- g_return_val_if_fail (n == -1 || n >= port->port_def.nBufferCountMin,
- OMX_ErrorBadParameter);
- if (n == -1)
- n = port->port_def.nBufferCountMin;
+ g_return_val_if_fail (n != -1 || (!buffers
+ && !images), OMX_ErrorBadParameter);
- if (port->port_def.nBufferCountActual != n) {
- port->port_def.nBufferCountActual = n;
- err = gst_omx_port_update_port_definition (port, &port->port_def);
- }
+ if (n == -1)
+ n = port->port_def.nBufferCountActual;
- if (err != OMX_ErrorNone) {
- GST_ERROR_OBJECT (comp->parent,
- "Failed to configure number of buffers of port %u: %s (0x%08x)",
- port->index, gst_omx_error_to_string (err), err);
- goto done;
- }
+ g_return_val_if_fail (n == port->port_def.nBufferCountActual,
+ OMX_ErrorBadParameter);
GST_DEBUG_OBJECT (comp->parent,
"Allocating %d buffers of size %u for port %u", n,
/* NOTE: Uses comp->lock and comp->messages_lock */
OMX_ERRORTYPE
-gst_omx_port_allocate_buffers (GstOMXPort * port, guint n)
+gst_omx_port_allocate_buffers (GstOMXPort * port)
{
OMX_ERRORTYPE err;
g_return_val_if_fail (port != NULL, OMX_ErrorUndefined);
g_mutex_lock (&port->comp->lock);
- err = gst_omx_port_allocate_buffers_unlocked (port, NULL, NULL, n);
+ err = gst_omx_port_allocate_buffers_unlocked (port, NULL, NULL, -1);
g_mutex_unlock (&port->comp->lock);
return err;
OMX_ERRORTYPE gst_omx_port_set_flushing (GstOMXPort *port, gboolean flush);
gboolean gst_omx_port_is_flushing (GstOMXPort *port);
-OMX_ERRORTYPE gst_omx_port_allocate_buffers (GstOMXPort *port, guint n);
+OMX_ERRORTYPE gst_omx_port_allocate_buffers (GstOMXPort *port);
OMX_ERRORTYPE gst_omx_port_use_buffers (GstOMXPort *port, const GList *buffers);
OMX_ERRORTYPE gst_omx_port_use_eglimages (GstOMXPort *port, const GList *images);
OMX_ERRORTYPE gst_omx_port_deallocate_buffers (GstOMXPort *port);
if (err != OMX_ErrorNone)
goto reconfigure_error;
- err = gst_omx_port_allocate_buffers (port, -1);
+ err = gst_omx_port_allocate_buffers (port);
if (err != OMX_ErrorNone)
goto reconfigure_error;
if (needs_disable) {
if (gst_omx_port_set_enabled (self->enc_in_port, TRUE) != OMX_ErrorNone)
return FALSE;
- if (gst_omx_port_allocate_buffers (self->enc_in_port, -1) != OMX_ErrorNone)
+ if (gst_omx_port_allocate_buffers (self->enc_in_port) != OMX_ErrorNone)
return FALSE;
if (gst_omx_port_wait_enabled (self->enc_in_port,
5 * GST_SECOND) != OMX_ErrorNone)
return FALSE;
/* Need to allocate buffers to reach Idle state */
- if (gst_omx_port_allocate_buffers (self->enc_in_port, -1) != OMX_ErrorNone)
+ if (gst_omx_port_allocate_buffers (self->enc_in_port) != OMX_ErrorNone)
return FALSE;
/* And disable output port */
goto reconfigure_error;
}
- err = gst_omx_port_allocate_buffers (port, -1);
+ err = gst_omx_port_allocate_buffers (port);
if (err != OMX_ErrorNone) {
GST_AUDIO_ENCODER_STREAM_LOCK (self);
goto reconfigure_error;
if (needs_disable) {
if (gst_omx_port_set_enabled (self->dec_in_port, TRUE) != OMX_ErrorNone)
return FALSE;
- if (gst_omx_port_allocate_buffers (self->dec_in_port, -1) != OMX_ErrorNone)
+ if (gst_omx_port_allocate_buffers (self->dec_in_port) != OMX_ErrorNone)
return FALSE;
if (gst_omx_port_wait_enabled (self->dec_in_port,
5 * GST_SECOND) != OMX_ErrorNone)
return FALSE;
/* Need to allocate buffers to reach Idle state */
- if (gst_omx_port_allocate_buffers (self->dec_in_port, -1) != OMX_ErrorNone)
+ if (gst_omx_port_allocate_buffers (self->dec_in_port) != OMX_ErrorNone)
return FALSE;
/* And disable output port */
goto reconfigure_error;
}
- err = gst_omx_port_allocate_buffers (port, -1);
+ err = gst_omx_port_allocate_buffers (port);
if (err != OMX_ErrorNone) {
GST_VIDEO_DECODER_STREAM_LOCK (self);
goto reconfigure_error;
if (err != OMX_ErrorNone)
goto reconfigure_error;
- err = gst_omx_port_allocate_buffers (port, -1);
+ err = gst_omx_port_allocate_buffers (port);
if (err != OMX_ErrorNone)
goto reconfigure_error;
if (needs_disable) {
if (gst_omx_port_set_enabled (self->enc_in_port, TRUE) != OMX_ErrorNone)
return FALSE;
- if (gst_omx_port_allocate_buffers (self->enc_in_port, -1) != OMX_ErrorNone)
+ if (gst_omx_port_allocate_buffers (self->enc_in_port) != OMX_ErrorNone)
return FALSE;
if (gst_omx_port_wait_enabled (self->enc_in_port,
5 * GST_SECOND) != OMX_ErrorNone)
return FALSE;
/* Need to allocate buffers to reach Idle state */
- if (gst_omx_port_allocate_buffers (self->enc_in_port, -1) != OMX_ErrorNone)
+ if (gst_omx_port_allocate_buffers (self->enc_in_port) != OMX_ErrorNone)
return FALSE;
/* And disable output port */
goto reconfigure_error;
}
- err = gst_omx_port_allocate_buffers (port, -1);
+ err = gst_omx_port_allocate_buffers (port);
if (err != OMX_ErrorNone) {
GST_VIDEO_ENCODER_STREAM_LOCK (self);
goto reconfigure_error;