[PATCH 5/5] winegstreamer: Reimplement the WAVE parser on top of the wavparse plugin.

Zebediah Figura z.figura12 at gmail.com
Tue Sep 17 09:47:15 CDT 2019


On 9/17/19 9:04 AM, Akihiro Sagawa wrote:
> On Mon, 16 Sep 2019 19:29:47 -0500, Zebediah Figura wrote:
>> Signed-off-by: Zebediah Figura <z.figura12 at gmail.com>
>> ---
>> As might be implied by this patch, I also have patches to replace the AVI
>> splitter and the MPEG-1 splitter with avidemux and mpegaudioparse, respectively.
>>
>> This of course means requiring GStreamer to decode all media files. I'm not
>> particularly inclined to see this as a blocking problem, especially since the
>> required plugins are all in the "good" set, which as far as I'm aware has full
>> multiarch handling in all major distributions.
> I'm so exciting to hear this idea. This might be outside the scope of
> your improvements, but what do you think about decoding MPEG-1 video
> streams? GStreamer's mpegpsdemux and mpegvideoparse are in the "bad" set
> and have multi-arch issue in Ubuntu 18.04 LTS[1].

Well, that's essentially the problem we have already; this patch doesn't 
really change anything. But yes, implementing either PS or video parsing 
would be pretty easy to plug in in this manner.

(Side note: I'm not actually sure whether PS demuxing is still covered 
under patents. If it is, we don't have much of a choice anyway; we'd 
have to delegate to some library or another...)

Note also that it's extremely rare for applications to manually create 
decoders. Bug 9127 [2] has a lot of applications attached to it, but 
almost all of them use one of the autoplugging APIs (RenderFile(), 
Connect(), etc.) The only one I found that actually depends on the 
MPEG-1 stream splitter being able to split program streams is LEGO Drome 
Racers.

[2] https://bugs.winehq.org/show_bug.cgi?id=9127

> 
> Regarding the patch, it's very long. You might want to split into two
> parts, e.g. i) introducing init_gst member and make gstdecoder_init_gst,
> ii) move WAVE parser function to winegstreamer and add wave_parser_init_gst.

Yeah, that's probably a good idea.

> 
> Akihiro Sagawa
> 
> 



More information about the wine-devel mailing list