MediaCodec.BufferFlagDecodeOnly Campo
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Cuidado
This constant will be removed in the future version. Use Android.Media.MediaCodecBufferFlags enum directly instead of this field.
Isso indica que o buffer é decodificado e atualiza o estado interno do decodificador, mas não produz nenhum buffer de saída.
[Android.Runtime.Register("BUFFER_FLAG_DECODE_ONLY", ApiSince=34)]
[System.Obsolete("This constant will be removed in the future version. Use Android.Media.MediaCodecBufferFlags enum directly instead of this field.", true)]
public const Android.Media.MediaCodecBufferFlags BufferFlagDecodeOnly = 32;
[<Android.Runtime.Register("BUFFER_FLAG_DECODE_ONLY", ApiSince=34)>]
[<System.Obsolete("This constant will be removed in the future version. Use Android.Media.MediaCodecBufferFlags enum directly instead of this field.", true)>]
val mutable BufferFlagDecodeOnly : Android.Media.MediaCodecBufferFlags
Valor do campo
Value = 32- Atributos
Comentários
Isso indica que o buffer é decodificado e atualiza o estado interno do decodificador, mas não produz nenhum buffer de saída.
Quando um buffer tiver esse sinalizador definido OnFrameRenderedListener#onFrameRendered(MediaCodec, long, long) e Callback#onOutputBufferAvailable(MediaCodec, int, BufferInfo) não for chamado para esse buffer fornecido.
Por exemplo, ao procurar um determinado quadro, esse quadro pode precisar referenciar quadros anteriores para que ele produza saída. Os quadros anteriores podem ser marcados com esse sinalizador para que sejam decodificados apenas e seus dados sejam usados ao decodificar o último quadro que deve ser inicialmente exibido após a busca. Outro exemplo seria a reprodução de truques, a reprodução de truques é quando um vídeo é encaminhado rapidamente e apenas um subconjunto dos quadros deve ser renderizado na tela. Os quadros a não serem renderizados podem ser marcados com esse sinalizador pelo mesmo motivo que o acima. Marcar quadros com esse sinalizador melhora o desempenho geral da reprodução de um fluxo de vídeo, pois menos quadros precisam ser passados de volta para o aplicativo.
Em CodecCapabilities#FEATURE_TunneledPlayback, os buffers marcados com esse sinalizador não são renderizados na superfície de saída.
Um quadro não deve ser marcado com esse sinalizador e #BUFFER_FLAG_END_OF_STREAM , simultaneamente, isso produzirá um InvalidBufferFlagsException
Java documentação para android.media.MediaCodec.BUFFER_FLAG_DECODE_ONLY.
Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Project Open Source do Open Source e usadas de acordo com os termos descritos na Creative Commons 2.5.