[PATCH 2/7] winegstreamer: Support MPEG-1 audio in wg_transform.

Zebediah Figura (she/her) zfigura at codeweavers.com
Thu May 5 15:56:23 CDT 2022


On 5/4/22 03:32, Rémi Bernon wrote:
>>> diff --git a/dlls/winegstreamer/wg_transform.c 
>>> b/dlls/winegstreamer/wg_transform.c
>>> index dca85e7366e..3af9822b016 100644
>>> --- a/dlls/winegstreamer/wg_transform.c
>>> +++ b/dlls/winegstreamer/wg_transform.c
>>> @@ -114,6 +114,10 @@ static GstElement 
>>> *transform_find_element(GstElementFactoryListType type, GstCap
>>>       for (tmp = transforms; tmp != NULL && element == NULL; tmp = 
>>> tmp->next)
>>>       {
>>>           name = 
>>> gst_plugin_feature_get_name(GST_PLUGIN_FEATURE(tmp->data));
>>> +        /* Ignore mpg123audiodec for now, as it has issues with 
>>> frame delay,
>>> +         * e.g. it does not output any data until it receives 2 
>>> frames. */
>>> +        if (!strcmp(name, "mpg123audiodec"))
>>> +            continue;
>>
>> I'd really rather not do this. Does this end up being a problem in 
>> practice, and if so, how? (E.g. if all it does is break tests, I'd 
>> rather just make the tests less restrictive, or mark things as 
>> todo_wine.)
>>
>> Actually, I find this surprising anyway. IIRC mpg123 acted completely 
>> synchronously when I wrote the mp3dmod tests, and just looking at the 
>> GStreamer source I don't see any reason why mpg123audiodec wouldn't 
>> work synchronously. (Maybe it's different for layer 3, but I can't 
>> imagine why...)
>>
> 
> FWIW I intend to do a similar thing to disallow vaapi codecs for H264. 
> They are prioritized over avdec_h264, when both are available, but they 
> have issues and won't let us implement correct plane alignment easily.
> 
> It's a bit pointless to use them anyway as we don't support GPU buffers 
> yet, and they could be re-enabled later when we do and for that case 
> only, assuming the alignments are correct, or when they get fixed.
> 

Disabling vaapi is a bit more reasonable, although it'd also be nice if 
we can find a way to work around vaapi's bugs that doesn't require 
blacklisting the filters entirely. Better yet if we can find a way to 
avoid using vaapi if and only if it's broken.



More information about the wine-devel mailing list