Where is winegstreamer used?

Bruno Jesus 00cpxxx at gmail.com
Thu Aug 4 15:35:14 CDT 2016


On Thu, Aug 4, 2016 at 10:19 AM, Andrew Eikum <aeikum at codeweavers.com> wrote:
> On Wed, Aug 03, 2016 at 02:50:07PM -0300, Bruno Jesus wrote:
>> After looking for gstreamer related source code in Wine I could not
>> find a place that calls winegstreamer to actually do something like
>> video/audio decode/output. I think it should be somewhere
>> amstream/quartz related but I'm not sure.
>>
>
> quartz is crazy complicated. The short version is Wine calls
> winegstreamer's DllRegisterServer during prefix creation because it's
> present in <loader/wine.inf.in>. Applications which use directshow
> (quartz and friends) eventually will load winegstreamer, usually via
> IGraphBuilder::Connect in quartz.
>
> winegstreamer itself subclasses the implementations in strmbase, which
> handles a lot of the actual moving of data between filter graph
> components.
>
>> My question is basically what I need to do (preferably with source
>> example or documentation) to get a mpg movie to play and that ends up
>> using winegstreamer, for example. For example with AVI files I can
>> simply do some avifil32/msvfw32 calls and get the video output to a
>> window.
>>
>
> AVI has a decoder built into Wine, as you found. Other formats that
> don't have a built-in decoder should go through winegstreamer, though
> the connection will fail if your gstreamer installation can't decode
> it. Very few distros ship useful 32-bit gstreamer libraries.
>
> You can use a program called Graph Studio[1] to explore dshow graphs.
> The "File->Render Media File" function is basically a front-end to
> IGraphBuilder::RenderFile, which should build a complete graph to play
> back a media file.
>
> [1] http://blog.monogram.sk/janos/tools/monogram-graphstudio/
>
> Hope that helps,
> Andrew

Hi, thank you very much for your response. I downloaded the app but as
expected it looks like I don't have the required codecs for the test
videos I got.

#Test 1
fixme:gstreamer:unknown_type Could not find a filter for caps:
video/mpeg, mpegversion=(int)4, systemstream=(boolean)false,
framerate=(fraction)10000000/333667, width=(int)704, height=(int)396

#Test 2
fixme:gstreamer:unknown_type Could not find a filter for caps:
audio/mpeg, mpegversion=(int)4, framed=(boolean)true,
stream-format=(string)raw, level=(string)2, base-profile=(string)lc,
profile=(string)lc, codec_data=(buffer)1210, rate=(int)44100,
channels=(int)2

#Test 3
fixme:gstreamer:unknown_type Could not find a filter for caps:
video/mpeg, systemstream=(boolean)true, mpegversion=(int)2

The application crashed in tests 1 and 3, test 2 plays audio only. Not
sure if it was supposed to crash or not.

I tried installing some extra i386 packages here in Debian x86_64 but
apt-get wants to uninstall basically everything else if I do so I
guess I'm stuck for now. Currently I have plugins-base, plugins-good
and fluendo-mp3.

Best regards,
Bruno



More information about the wine-devel mailing list