| /* |
| * 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); |
| }; |
| |