( ! ) Warning: strtotime(): It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected the timezone 'UTC' for now, but please set date.timezone to select your timezone. in /chroot/home/liudnl/liud.nl/html/lib/Cake/Cache/CacheEngine.php on line 60
Call Stack
10.0008228472{main}( ).../index.php:0
20.0021231208include( '/chroot/home/liudnl/liud.nl/html/lib/Cake/bootstrap.php' ).../index.php:92
30.0115586704Configure::bootstrap( ).../bootstrap.php:177
40.0119588752include( '/chroot/home/liudnl/liud.nl/html/app/Config/core.php' ).../Configure.php:72
50.0133604272Cache::config( ).../core.php:367
60.0133605472Cache::_buildEngine( ).../Cache.php:151
70.0150622192FileEngine->init( ).../Cache.php:180
80.0150623352CacheEngine->init( ).../FileEngine.php:81
90.0151624744strtotime ( ).../CacheEngine.php:60

( ! ) Warning: strtotime(): It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected the timezone 'UTC' for now, but please set date.timezone to select your timezone. in /chroot/home/liudnl/liud.nl/html/lib/Cake/Cache/CacheEngine.php on line 60
Call Stack
10.0008228472{main}( ).../index.php:0
20.0021231208include( '/chroot/home/liudnl/liud.nl/html/lib/Cake/bootstrap.php' ).../index.php:92
30.0115586704Configure::bootstrap( ).../bootstrap.php:177
40.0119588752include( '/chroot/home/liudnl/liud.nl/html/app/Config/core.php' ).../Configure.php:72
50.0190623912Cache::config( ).../core.php:379
60.0190624792Cache::_buildEngine( ).../Cache.php:151
70.0190625160FileEngine->init( ).../Cache.php:180
80.0190626224CacheEngine->init( ).../FileEngine.php:81
90.0190627616strtotime ( ).../CacheEngine.php:60
Accessibility – Liud.nl

Flash mediaplayer accessibility  /

My graduation research

Over the years I developed an interest in the usability and accessibility of websites and webtechnologies, especially for people that have impairments. As a graduation project I researched the accessibility of Flash mediaplayers on websites for visually impaired people. It turns out accessibility is an often overlooked aspect by webdevelopers. It's looking like HTML 5 is paving the way for improved online acccessibility. I always try to develop websites that respect the W3C Standards. Below you can find the article I've written based on the literature research and qualitative research I've conducted.

Background Information

This article is about accessibility problems with Flash multimedia that are widely used on the Internet for people with vision disabilities. It covers some background information, the causes of the accessibility problems, why it is a problem and what can be done to improve the accessibility of such applications, and how the awareness of the problem in general can be increased.

Some background information:

I conducted a literature review that covers the accessibility problems Flash can create, the ways developers can create accessible content with Flash/Actionscript, studies that have been conducted investigating and improving the accessibility of multimedia Flash content, and (upcoming) technologies and frameworks that aim to better integrate multimedia/Flash in web pages, making them more accessible.

I also did a qualitative research which I conducted myself, with the aim of experiencing the accessibility of a small selection of popular players on the Internet as a user without sight, testing each player with a selection of assistive applications.

The players I’ve tested were the YouTube-player (not the embedded one, the one on the Youtube.com website), the latest version of the JW Player (version 5) and lastly, the SoundCloud-player. I tested each player with a total of four assistive applications, these being: the screen reader JAWS 11, the screen reader Windows Eyes 7, the Firefox plugin “Fire Vox” which transforms Firefox into a talking browser and lastly the “aiBrowser” which stands for “Accessibility Internet Browser”.


With the Internet playing an ever more important role in our lives, it’s difficult to imagine how our lives would look like without the Internet being everywhere, tightly woven into our society and every-day-life. The Internet brings the world to your computer, including traditional services and activities like doing your taxes and buying presents for Christmas. With a few clicks you can compare prices of products all over the world, and instantaneously know where you can get the best deal for your bucks. While virtual malls will probably never entirely replace the traditional shopping malls, it’s evident that the Internet causes a shift in services from being physical to virtual.

One of the areas this process is taking place at a fast rate is the music-industry. More and more people purchase music online and artists let their fans preview their upcoming singles on their website. This is most often accomplished by using media players that are developed in Flash. Since Flash is a very popular technology (according to Adobe it’s installed on 99% of the computers worldwide that have an Internet-connection1) with a powerful scripting language (Actionscript) and powerful multimedia handling capabilities and streaming audio and video support, it’s a popular choice for developers to create players for use on the Internet with. There are numerous players out there, the most popular players being the YouTube player and the JW Player. Interesting fact: the first player YouTube used was in fact the JW Player which they purchased for 30 dollars! They’ve since developed their own player, but the JW Player is still a very popular online solution, because it’s free to use for non commercial purposes and the flexibility the player offers to developers is very great.

This shifting of the way traditional services and activities are performed by people is a cause of the natural evolution of the Internet, and often we don’t realize this consciously because it’s a continuous process. People who are probably more conscious of these changes are people with disabilities, for example visually impaired people. Accessible online services and websites can greatly reduce the amount of time and money these people would otherwise spend getting to town halls and navigating around shopping malls. Visually impaired users often rely on assistive technologies like screen readers to work with computers, and the effectiveness of these technologies is dependent on developers who take accessibility into account when developing applications and websites. Studies have shown that Flash often is inaccessible for people with disabilities, especially people with vision impairment. Since Flash is often used as a means to let users preview music, or just listen to music online, the question that can be asked is “How accessible are these (embedded) music players to blind and visually impaired users, for whom audio often plays a more important role in life than users with eyesight?"

It’s an awareness issue

Seen the fact that there is an accessibility-framework present in the Flash IDE (Integral Development Environment) and similar features in its scripting language Actionscript, and the fact that recent versions of popular screen readers support Flash content in web pages, the foundation for creating accessible Flash content in web pages is there. The sad thing is that most of the Flash content doesn’t contain any meaningful accessibility information for the screen reader, and thus for the visually impaired user. These facts point out that the tools are available to create accessible Flash content and popular assistive software has support to decode and convey this information to the user. Where it goes wrong is the step in-between: the actual development process. There is not enough awareness of the accessibility-issues that Flash content can create amongst developers. This despite it being a relatively simple and quick process to add such information in most cases.

Reasons Flash-based media players are often inaccessible

So why is this a problem then, one might ask, especially when it comes to media players on the web? Surely people with vision disabilities won’t use those? Why bother making them accessible in the first place? Those are valid questions, and I’ll try to explain why I think it’s important to make these players accessible.

People with vision disabilities don’t use media players on web pages?

There is some truth in this statement, but it’s not because people with vision disabilities don’t want to use them. They don’t use media players on web pages or avoid them because the players don’t let them. More often than not they don’t contain any comprehensible information for the player-buttons that are vital for interacting and manipulating the player and its contents. If you’re blind and the screen reader reads the play-button as “button”, the stop-button as “button” and the volume-button and slider as “button”, would you know what element of the player you were dealing with if you were blind?

Next to that, these players often begin playing their contents automatically, and since screen readers use synthesized speech to ‘read the screen’, the audio of the content interferes with the speech of the screen reader. If a situation like this is encountered by a visually impaired user, it’s likely that the user will close the page and avoid it in the future, rendering the usability of the page to nil.

Another reason for not being able to use these players are players that are embedded in a way that makes the whole player invisible to screen readers. The player will be visibly present on the screen, but there’s no way the user can focus the player and get access to it. It’s simply invisible to the screen reader. Similar problems can arise with players that are embedded after the page has loaded, using Javascript to accomplish the embedding.

The importance of accessible Flash-based media players

So I asked the question “Why bother making (Flash based) media players on web pages accessible for people with vision disabilities?”. There are many reasons this is important. First of all, there is the following statement from Tim Berners Lee (the ‘inventor’ of the Internet): "The power of the Web is in its universality. Access by everyone regardless of disability is an essential aspect."2. The technology Flash is infamous for the accessibility problems it can cause, and since it’s a technology that is installed on almost any computer connected to the Internet, it get’s used a lot. Though the technology exists to make everything accessible, it’s often not – caused by the lack of awareness.

Secondly, we’re getting older and older. The World Health Organization (WHO) says the following on the matter: “Increasing numbers of people are at risk of age-related visual impairment as the global population grows and demographics shift to a higher proportion of older people, even in developing countries.”.3 That means that a great number people who grew up with the Internet and are used to incorporating it in their everyday life, will eventually have to deal with visual impairments. Although they might not see the media player anymore, they would like to use it in a way they have control over it. Just like visually impaired users nowadays would like to, but in many cases cannot.

Thirdly, since audio plays an important role in the life of visually impaired people, it would be very ironic if they haven’t got control over the audio they encounter online. Visually impaired users of the Internet should be able to listen to, stop, and control the volume of music like any other user on the web, without the process of doing it being rocket science.

Ways to improve the awareness of accessibility-problems with Flash

So where does it all boils down to? Awareness. Since there is not enough of it, the logical next step is to improve this awareness level. How can this be done? Well, this is one of the most difficult questions that can be asked, and a very tough nut to crack.

 Integrate accessibility more into the design and workflow of the Flash IDE that comes with Flash (the workspace)

When I researched the accessibility of Flash, one thing that I noticed was the obscurity of the accessibility-panel in the IDE (I used CS3 during my research). It’s tucked away with some really obscure panels under the menu Window -> Other panels -> Accessibility or it can be requested with the quick keys SHIFT + F11. That’s not really a position where it gets noticed a lot, don’t you think? Also when publishing content from within the workspace there are no questions asked if there’s no accessibility information present for content of the Flash movie. In my opinion, to improve the awareness of accessibility-issues with Flash it needs to get more closely integrated in the workflow of the IDE.

 Visually impaired people and related organizations must be more vocal about these problems

I also think it would be a good idea if visually impaired Internet users and organizations would be more vocal about the problems they encounter with multimedia in web pages. Do not only communicate these problems to Flash developers, or developers of screen reader software, but make efforts to get it onto the national news for example

 Let time run its course

Like I pointed out in the previous section, a great number people who grew up with the Internet and are used to incorporating it in their everyday life, will eventually have to deal with visual impairments. Also the developers of today. We get older in general, and we’re used to the Internet in our lives. Because more and more people that are comfortable with technology and Internet will get old, they probably will communicate problems with contents like multimedia on web pages more vocally, and in greater numbers.

Improving the accessibility of online (Flash) media players

Aside from the awareness issue, here’s an overview of methods that can improve the accessibility of existing players or players that yet have to be developed.

 Integrate the accessible development process better into the standard workflow of the Flash IDE

Because of the obscure placement of the accessibility panel it’s likely a contributing factor of missing accessibility information. This is not the case with Flash that is developed with external software or is developed purely in Actionscript. Giving accessibility a more prominent role in the workflow of the IDE will increase the accessibility of a lot of Flash content that was created with the IDE. For example, when the developer publishes content, show a window to the developer specifically asking to test the published content for accessibility and generate a rapport or score based on this findings.

 Adoption of the HTML 5 media elements, <audio> and <video>

The still being developed HTML 5 introduces new elements that are designed specifically to handle audio and video (multimedia) on the web. This will eliminate the need for using both the <object> and <embed> tags, and browsers can expect what content they can expect. It also gives browser developers the opportunity to let users set their own preferences on what to do when media is encountered on the web, like disabling autoplay functionality of players, or setting a predefined volume level. Next to that, the DOM(Document Object Model) integration is better. Also, these elements can contain other elements inside them. The design document of HTML 5 states that this functionality may only be used by developers to include legacy audio-plugins if the system of the user cannot playback the element as it is. If all that fails, a text may be included informing the user of the problem.

 Add some basic accessibility information to playercontrols of existing players

The popular Youtube player doesn’t even have labels with accessibility information attached to it’s buttons, causing screen readers to read all the buttons as “button”. The same is the case for the widely used JW Player. It would really not be that much of an effort to add some labels to the used buttons, be it in the IDE or be it with Actionscript.

 Try to prevent embedding a Flash media player with JavaScript

In the qualitative research I conducted, I found that screen readers have difficulties with detecting and reading a Flash media player that was embedded with Javascript (specifically, a JS-library swfObject). This is probably because of the way Javascript tends to work. As soon as the page is loaded, the Javascript is executed, and the DOM is enhanced by the Javascript to embed the Flash content. Recent versions of screen readers say they support this type of updates, but it looks like they have problems with dynamic updates with Javascript that update the DOM to include a Flash-object.

 Make “accessibility extensions” for players part of the basic player

The JW Player 5 was found to be very inaccessible to screen readers. This player does have an accessibility extension/plugin that can be used by developers to increase the accessibility of the player, or at least their contents. I didn’t research this extension, so I’m assuming here.

However, I would like to vow for not making basic accessibility enhancing extensions/plugins optional, but making them an integral part of ‘out-of-the-box’ players.


In this article I pointed out that the possibilities are there to create accessible Flash media players, only that it’s not implemented by developers. This is an awareness problem. Technologies are being improved and getting more advanced to integrate multimedia better into web pages, eliminating some of the accessibility problems users with visual impairments run into. I personally think the workflow of publishing Flash content can be improved, and next to that, it’s a matter of letting time run its course. When the developers of today will be old and have eyesight problems, the awareness of the accessibility problems with multimedia in web pages could reach it’s tipping point.


  1. http://www.adobe.com/products/player_census/flashplayer/version_penetration.html
  2. http://www.w3.org/WAI/
  3. http://www.who.int/mediacentre/factsheets/fs282/en/index.html