MediaCodec.QueueInputBuffers(Int32, ArrayDeque) 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
向編解碼器提交多個存取單元,並附上多個 MediaCodec.BufferInfo 描述緩衝區內容的資訊。
[Android.Runtime.Register("queueInputBuffers", "(ILjava/util/ArrayDeque;)V", "", ApiSince=35)]
public void QueueInputBuffers(int index, Java.Util.ArrayDeque bufferInfos);
[<Android.Runtime.Register("queueInputBuffers", "(ILjava/util/ArrayDeque;)V", "", ApiSince=35)>]
member this.QueueInputBuffers : int * Java.Util.ArrayDeque -> unit
參數
- index
- Int32
先前在呼叫時 #dequeueInputBuffer回傳的客戶端擁有輸入緩衝區的索引。
- bufferInfos
- ArrayDeque
ArrayDeque MediaCodec.BufferInfo 會描述緩衝區中的內容。 ArrayDeque 與 BufferInfo 物件可由呼叫者回收再利用。
- 屬性
備註
向編解碼器提交多個存取單元,並附上多個 MediaCodec.BufferInfo 描述緩衝區內容的資訊。 此方法僅支援非同步模式。 雖然此方法可用於所有編解碼器,但它主要用於緩衝區批次處理,而緩衝區批次僅支援於宣稱FEATURE_MultipleFrames的編解碼器。 其他編解碼器不會透過 onOutputBuffersAvailable 輸出大型輸出緩衝區,而是透過 onOutputBufferAvailable 輸出單接取單元的輸出。
輸出緩衝區大小可使用以下 MediaFormat 鍵值進行設定。
MediaFormat#KEY_BUFFER_BATCH_MAX_OUTPUT_SIZE 和 MediaFormat#KEY_BUFFER_BATCH_THRESHOLD_OUTPUT_SIZE。 緩衝區中每個存取單元的細節應以 MediaCodec.BufferInfo來描述。 通道單元必須連續且有序排列。 如果輸出中存在多重存取單元,則在單一存取單元輸出或輸出中沒有任何緩衝區(如旗標)時,也會提供Callback#onOutputBuffersAvailableCallback#onOutputBufferAvailable。
其他填充 MediaCodec.BufferInfo 細節與 中 #queueInputBuffer所述相同。
此頁面的部分是根據 Android 開放原始碼專案所建立和共用的工作進行修改,並根據 Creative Commons 2.5 屬性授權中所述的詞彙使用。