[PATCH v3 1/5] winegstreamer: Implement H264 decoder GetInputStreamInfo.

Nikolay Sivov nsivov at codeweavers.com
Wed Mar 23 00:10:13 CDT 2022



On 3/21/22 23:11, Rémi Bernon wrote:
>   
>   static HRESULT WINAPI transform_GetInputStreamInfo(IMFTransform *iface, DWORD id, MFT_INPUT_STREAM_INFO *info)
>   {
> -    FIXME("iface %p, id %#lx, info %p stub!\n", iface, id, info);
> -    return E_NOTIMPL;
> +    struct h264_decoder *decoder = impl_from_IMFTransform(iface);
> +
> +    TRACE("iface %p, id %#lx, info %p.\n", iface, id, info);
> +
> +    if (!decoder->input_type)
> +        return MF_E_TRANSFORM_TYPE_NOT_SET;
> +
> +    info->hnsMaxLatency = 0;
> +    info->dwFlags = MFT_INPUT_STREAM_WHOLE_SAMPLES | MFT_INPUT_STREAM_SINGLE_SAMPLE_PER_BUFFER | MFT_INPUT_STREAM_FIXED_SAMPLE_SIZE;
> +    info->cbSize = 0x1000;
> +    info->cbMaxLookahead = 0;
> +    info->cbAlignment = 0;
> +
> +    return S_OK;
>   }
>   
>   static HRESULT WINAPI transform_GetOutputStreamInfo(IMFTransform *iface, DWORD id, MFT_OUTPUT_STREAM_INFO *info)

Is it really using static size here, regardless of input stream 
parameters? Like frame size for example? Not sure how useful this field 
is in a first place for decoder input, maybe they set it to be non-zero.



More information about the wine-devel mailing list