[squeak-dev] Re: GStreamer
Joshua Gargus
schwa at fastmail.us
Wed Aug 13 23:06:27 UTC 2008
John M McIntosh wrote:
>
> On Aug 13, 2008, at 8:01 AM, Yoshiki Ohshima wrote:
>
>> Hello, Josh and John and list,
>>
>> I'm playing with the GStreamer stuff on Fedora. With the latest
>> stuff, and some changes (attached), I managed to play a .ogg file that
>> *only* has video track. But there are a few questions:
>>
>> * I needed to use the subclasses of GstElemFakeSink to play back,
>> assuming that GStreamerElementForSqueak... are being obsoleted.
>> Is it right?
It turns out that we don't have time to spend on GStreamer, so I'm not
carrying on with the work right now. I tried to not disturb code that
was already working, so the other GStreamerElementForSqueakEtc classes
should continue to work. In other words, you should be able to revert
the implementors of #makeFakeSinkElement: to JMM's versions using the
"old" classes. However, I think that instantiating the GstElemEtc
classes is significantly nicer, especially for ad-hoc creation of
pipelines in a Workspace. If I had time to spend, I would continue in
this direction.
>>
>> * #checkDimension is only sent but not implemented.
You are seeing sends of #checkDimension in #videoFrameHeight/Width/Rate,
right? Sorry, my fault... I thought that I removed all senders (but
these were in the GStreamer-UI package, which must be why I missed them).
It should be safe to remove those sends of #checkDimension. In fact, I
went ahead and did this; the changes are checked in.
Let me know if this works, or if other bugs pop up (quite possible,
since I apparently only tested the latest updates with Workspace
snippets and unit tests, not the Morphic UI).
>> I assumed that
>> it wants to check whether the dimension of video is sane, and I
>> thought that "sane-ness" is just checking both width and height
>> are bigger than zero. Is it right?
#checkDimension used to look like this:
checkDimension
self width ifNotNil: [^self].
width := self squeakerVideo getWidth.
height := self squeakerVideo getHeight.
fps := (self squeakerVideo getFrameRateNumerator) /
(self squeakerVideo getFrameRateDenominator).
However, it doesn't make much sense to retrieve the width, height, and
frame-rate each time you want to access one of the three.
Cheers,
Josh
>
> Joshua was refactoring all that, I'll look later tonight
>
>>
>>
>> * #openFile: was written under the assumption that .ogg file is
>> either "video and audio" or "audio only" but I have a file that
>> is "video only". If I open a video only file with older
>> definition, it basically forever paused and wait until it is
>> ready and doesn't play it back. #openFile: should check the type
>> of tracks and call a proper #oggHookupToSqueak... method. But is
>> there a simple way to query it when I have the filesrc element?
>
> Yes there is a problem there, I was looking at "typefind" to see if we
> could decide what type of file it is, but
> that might require a plugin change in order to get the CAPS element
> back. I was also trying to see if you
> could resolve pipeline setup as always both setup with audio/video and
> work with that, but haven't gotten
> around to testing it, however you are welcome to try. In this case you
> could ask the elments for attribute data to see
> if there are frames, or audio?
>
>>
>>
>> Thank you!
>>
>> -- Yoshiki
>>
>> People are often on vacation around this time of year, so have
>> fun... but at your convenient time, please think about Squeak stuff^^;
>>
>> <GSTAug11-yo.2.cs>
>
> --
> ===========================================================================
>
> John M. McIntosh <johnmci at smalltalkconsulting.com>
> Corporate Smalltalk Consulting Ltd. http://www.smalltalkconsulting.com
> ===========================================================================
>
>
>
More information about the Squeak-dev
mailing list
|