Am Samstag, den 20.09.2008, 13:01 -0700 schrieb John Gilmore > We need to design a *simple*, *fast*, and *backward compatible* way > that a Flash movie can know what codecs are available to it in Gnash. > Then they can feed their Flash movie a list of URLs and the > corresponding codecs, and the flash movie can pick the best fit from > the list. > > By *backward compatible* I mean that if you run the same Flash movie > on Adobe Flash, it fails cleanly (the interface isn't there), so the > movie can assume it should play an FLV file in that case. I've discussed this a few times with other devs. As far as we know, the proprietary Flash player doesn't offer a way in Flash to find out what codecs are available. It does in Flash Lite, but that's unfortunately not available in the usual Adobe Flash player.
There are at least two obvious ways to do it: 1. implement a class / object in Gnash that Adobe Flash doesn't have, e.g. in System.capabilities. If this object is undefined, the SWF can load an FLV, otherwise the object can reveal what codecs are available (provided this is at all possible from both media handler interfaces, which I haven't investigated). This option clearly can't be taken lightly, as it would be an add-on to the established technology, and, once implemented, can't really be unimplemented. There's no guarantee that Adobe wouldn't implement a class with the same name, and then we'd be in a mess. Also, other free players, particularly swfdec, would have to be involved, or there's no great advantage over the second way: 2. look at the player version string ($version in AS, amongst other things). If it's Gnash, assume it can play whatever gstreamer or ffmpeg can - which should certainly include OGG Theora and other free formats. There's no media handler information in the version string now, but it could be added. Of course this player string can be overridden by the user. Flash Player version detection relies on this information. (2) has the advantage of being very easy and can be implemented straight away. (1) needs discussion within and outside of the Gnash team, so is not a quick solution. A third way, though, could be to implement the codec information class from Flash Lite, as Adobe is unlikely to make the two versions of flash incompatible. I think the decision needs time, whatever the case. bwy
signature.asc
Description: Dies ist ein digital signierter Nachrichtenteil
_______________________________________________ Gnash-dev mailing list [email protected] http://lists.gnu.org/mailman/listinfo/gnash-dev

