Not Completely Open Source, But…

Tinic has developed an interface that will allow developers to extend parts of the Linux Flash Player, most notably the audio output functionality. While Player 9 for Linux only supports ALSA output, this flashsupport mechanism will allow you to write output drivers for your own favorite pet audio API. Here are the full details:

Additional Interface Support for Linux

It’s all still rather experimental but we hope this will lay the groundwork for opening up more interfaces which will allow the Player to adapt to Linux’s natural evolution.

25 Responses to Not Completely Open Source, But…

  1. n3ldan says:

    Excellent!Sure, everyone hated you while you were developing Flash 9, but since the beta’s been out, you’ve been loved 😀

  2. Apage43 says:

    I do think it would be good to allow picking _which_ alsa device the plugin outputs to somehow, rather than, as it seem so to do, force to output to the default one. If there IS some way to do this already, I’d like to know.

  3. Matthew says:

    I dont know much, but this seems like quite a good idea to me. I hope it is useful to those unsupported by default flash.Keep up the good work, cant wait till linux flash 9 in Opera, is as sweet as it is in FF.

  4. TiCL says:

    I used it to switch back to OSS because I was having problem with audio stuttering/video freeze with ALSA. However, a/v is out of sync again :P. Just crossing my finger and waiting for beta 2.

  5. PWM says:

    Very nice !I hope you’ll eventually move all libraries etc. platform interfacing functionality to this same support library.

  6. Riddian says:

    “lay the groundwork for opening up more interfaces which will allow the Player to adapt to Linux’s natural evolution”Does this mean you can eventually foresee an open source flash player?

  7. Fred W says:

    I don’t know if this had anything to do with your decision to do this, but, I made a suggestion for this exact thing in a past post. Needless to say, I’m very happy to see this, since the Flash player as a whole can not be open sourced.

  8. Josh says:

    Wow! This is a great idea! Having used the beta for awhile now, my only issues have been related to sound output. If I could pipe flash through esd or arts (like everything else) I think I’d be golden! 🙂

  9. Gravis says:

    sweet… now i can have a really awesome visualization to the voice of Strong Bad! xDon a more serious side, an extension that utilized libao would be nice.

  10. James C says:

    Very nice, looks like this will address the BSD users’ complaints about ALSA.

  11. Crispibits says:

    See, you’ve confused all the whingers now, as they haven’t a clue what you’re talking about… 🙂 keep up the good work, and Flash is working to the extent of me not using FlashBlocker anymore, so it’s going well. Daisy (4) and Sam (2) also say thankyou for allowing them to play on and do more games on 🙂

  12. Havokmon says:

    FYI – I’ve got 16MB VRAM and it’s working fine for me so far.

  13. lmf says:

    I don’t think anyone hated you, but I know a lot of people hated Adobe management. You did a heck of a job with the Flash beta.I too suggested something along these lines. Flash won’t and shouldn’t be open sourced, and this is a step in the right direction to allowing other platforms to support themselves, without open sourcing the player itself.

  14. Weirdbro says:

    Does Adobe have a set specification for the math backend? I have tested a game I made on Windows, Mac, and Linux, but the sine/cosine calculations are giving slightly different results on Linux, and while I don’t need precision, I need consistency, or it won’t work.

  15. randomguy says:

    Weirdbro: You should report that inconsistency as a bug.

  16. Lars says:

    I’ve been having troubles with sound as posted in the labs forums, and I want to know if any of the programmers out there wants to team (I’ve got little alsa experience) to work in the wrappers source, to see the alsa that’s being used and debug it.So far I see the device is being opened non-blocking so I guess trouble is not that.I will try to do some tests with asyncronous opening, and with verifying the status of the interface pointer before pcm writes, if anybody got other ideas to try, please shout around and we’ll get in contact

  17. fnord says:

    Lovely! Maybe now someone will write a libao or ESD output plugin and I’ll have sound, which I don’t right now, since unfortunately my sound card is ALSA device 1, not 0, and there doesn’t seem to be any way of specifying which device to use.

  18. Lars says:

    fnord you can use tinic’s wrapper to change your sound card. If you only want to add sound just comment all the defines at the begining (specially comment out the OSS define) and uncoment the alsa one, then do a search in the file for the pcm_open command that uses hw:0,0 for the device and change it to hw:1,0 and follow the compile and install rules. it should work

  19. fnord says:

    Thanks for the tip! I’ll definitely try that out. 🙂

  20. Lars says:

    Well, to let you all know, by changing the way the alsa hardware is opened to async, and copying to /usr/lib I stopped receiving the audio problems I (and some others) describe on the labs forum. But I cannot certify if it was coincidence, if it was the prescence of the wrapper, or if it was my change indeed that solved this, so don’t expect utopia.Lars.

  21. Greg T. says:

    I want to thank you for your willingness to discuss, and respond to comments about, the development of Flash 9 for Linux. You’ve been open, even though the source code remains closed.I’ve installed the beta on my Ubuntu box, and it generally works well. (I initially had problems getting sound to work, but I deleted an apparently outdated asound.conf file and was in business.) The problem I’m currently up against is the snowflake-like fragility of the beta. If I place my system under any kind of load, running Flash content will stop. For instance, if I’m listening to streaming music on, I can’t open a large application (like OpenOffice) without the music coming to a sudden stop. Occasionally, it will sputter through and regain proper form, but more times than not it will fail.This problem has caused my to try all sorts of workarounds. For instance, I’ve overclocked my system (Athlon 64 3200+, 2GB memory) by 25%, hoping that a faster system would reduce the bottlenecks. I’ve also tried running Flash 9 for Windows using IE4Linux, hoping that I might have better luck with the Windows version on WINE. I’ve had no luck, although every other player I might use (mplayer, totem, XMMS, RealPlayer) is capable of playing streaming audio and video without hiccupping under load, even when the player is embedded in a web page.This is a problem with Flash 7 for Linux as well, so I’m writing to urge you to hold Flash 9 to a higher threshold of quality. It sounds obvious, but beta quality is fine only for a beta, not for a final release. I hope the upcoming final release can end some of the long-running problems with Flash on Linux. In the meantime, I’m looking forward to a refreshed version of the beta.Again, thanks. And we’re counting on you.

  22. H. says:

    Thought you’d like to know that at least my audio lockups were solved by using this. It still crashes occasionally, but now I can watch YouTube videos without deterministic lockups, using OSS sound (which is actually emulated by the OSS emulation of the ALSA drivers). So, looks like it would be a good idea to move ALSA code into libflashsupport as well, so that we could compile that ourselves (or rely on libflashsupport as shipped by distros) and not have to rely on OSS emulation.

  23. DannyStaple says:

    For those not able to get sound because hw:0 is not their actualy main card, have they thought about using an asoundrc file to reassign it, setting up a faked hw:0 with the pcm components of the sound system they want set up as slaves?This may also work.Anyway – well done..

  24. JordanM says:

    I also am fed up with the fact that there is no flash ported to 64 bit Linux distros. There are people in the world that use 64 bit systems to their advantage and would benefit from a 64-bit flash port. I know this may be easier said than done, but it’s obviously in demand, and if Adobe put forth the effort that people like us have in backing their products for years, they would have this done already.

  25. zdz says:

    Thanks for this libs. It allowed developers of PulseAudio to write support for PA.