[PATCH v4 3/3] winegstreamer: Implement IMFMediaStream::GetStreamDescriptor.

Derek Lesho dlesho at codeweavers.com
Thu Sep 24 15:56:22 CDT 2020


On 9/24/20 12:27 PM, Zebediah Figura wrote:
>>       enum
>>       {
>>           STREAM_STUB,
>> +        STREAM_INACTIVE,
> What's the difference between these two states? There doesn't seem to be
> a difference in this patch.
I think it's just a vestige of a prior version of the patchset, I'll 
merge STREAM_STUB into STREAM_INACTIVE.
>   
> +static HRESULT media_stream_init_desc(struct media_stream *stream)
> +{
> +    GstCaps *current_caps = gst_pad_get_current_caps(stream->their_src);
> +    IMFMediaTypeHandler *type_handler;
> +    IMFMediaType *stream_type = NULL;
> +    HRESULT hr;
> +
> +    if (!current_caps)
> +    {
> +        hr = E_FAIL;
> +        goto fail;
> +    }
> Can that happen?
I don't think so, I'll remove it since you don't think so either.
>
> Note that this "goto" and a couple others below could be replaced with
> "return hr". In general I'm inclined to think goto isn't worthwhile when
> there's only one line of cleanup.
I agree, however the cleanup gets more advanced in future patches. Shall 
I just defer the label cleanup until then?
>> +        g_signal_emit_by_name(object->streams[i]->appsink, "pull-preroll", &preroll);
> Calling gst_app_sink_pull_preroll() directly seems a little less
> confusing (i.e. in the sense that I wouldn't have had to look up how
> G_SIGNAL_ACTION works).
Doesn't this require linking the libgstapp library?  Seems like a lot of 
effort to go through to make a few lines prettier.




More information about the wine-devel mailing list