summaryrefslogtreecommitdiffstats
path: root/media/omx/1.0/IOmxBufferSource.hal
diff options
context:
space:
mode:
authorPawin Vongmasa <pawin@google.com>2016-10-06 19:01:51 -0700
committerIliyan Malchev <malchev@google.com>2016-11-17 15:32:03 +0000
commit6ec37b9e507df9de9cb9608a44c44b4a3efd34ac (patch)
treef3ade68268f5783937bb02edb5b7a94e3fa69dbf /media/omx/1.0/IOmxBufferSource.hal
parent4a9f187d9fee9595e28ff3bca800a966c6dfdc16 (diff)
downloadplatform_hardware_interfaces-6ec37b9e507df9de9cb9608a44c44b4a3efd34ac.tar.gz
platform_hardware_interfaces-6ec37b9e507df9de9cb9608a44c44b4a3efd34ac.tar.bz2
platform_hardware_interfaces-6ec37b9e507df9de9cb9608a44c44b4a3efd34ac.zip
Start media.omx HIDL project.
Test: None Bug: 31399200 Change-Id: I2fb1a6758ccc001c5631be1c642ad537d1ff5a10
Diffstat (limited to 'media/omx/1.0/IOmxBufferSource.hal')
-rw-r--r--media/omx/1.0/IOmxBufferSource.hal68
1 files changed, 68 insertions, 0 deletions
diff --git a/media/omx/1.0/IOmxBufferSource.hal b/media/omx/1.0/IOmxBufferSource.hal
new file mode 100644
index 0000000000..94c43fcfab
--- /dev/null
+++ b/media/omx/1.0/IOmxBufferSource.hal
@@ -0,0 +1,68 @@
+/*
+ * Copyright (C) 2016 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package android.hardware.media.omx@1.0;
+
+import android.hardware.media@1.0::types;
+
+/**
+ * Ref: frameworks/av/media/libmedia/aidl/android/IOMXBufferSource.aidl
+ *
+ * IOmxBufferSource is an interface for a listener for certain events from an
+ * IOmxNode instance. Use IOmxNode::setInputSurface() to attach an
+ * IOmxBufferSource instance to an IOmxNode instance.
+ *
+ * @see OMX_STATETYPE in the OpenMax IL standard.
+ */
+interface IOmxBufferSource {
+
+ /**
+ * onOmxExecuting() is invoked when the node state changes to
+ * OMX_StateExecuting state.
+ */
+ oneway onOmxExecuting();
+
+ /**
+ * onOmxIdle() is invoked when the node transitions from OMX_StateExecuting
+ * to OMX_StateIdle.
+ */
+ oneway onOmxIdle();
+
+ /**
+ * onOmxLoaded() is invoked when the node transitions from OMX_StateIdle or
+ * OMX_StateExecuting to OMX_StateLoaded.
+ */
+ oneway onOmxLoaded();
+
+ /**
+ * onInputBufferAdded() is invoked after a new input buffer is added to the
+ * node. This may happen within IOmxNode::allocateSecureBuffer() or
+ * IOmxNode::useBuffer().
+ *
+ * @param[in] buffer is the id of the added buffer.
+ */
+ oneway onInputBufferAdded(BufferId buffer);
+
+ /**
+ * onInputBufferEmptied() is invoked after an input buffer is emptied. This
+ * may happen within IOmxNode::emptyBuffer().
+ *
+ * @param[in] buffer is the id of the emptied buffer.
+ * @param[in] fence is the fence associated with the buffer.
+ */
+ oneway onInputBufferEmptied(BufferId buffer, Fence fence);
+};
+