Flash Player 10.1 came out yesterday, and I decided to translate the article by Paul Betlem from the Flash Player development team about what was implemented in the new version.
Today I am very pleased to announce that Adobe Flash Player 10.1 is now available for Windows, Mac and Linux. Flash Player 10.1 for the Android platform will be available later, in the coming months - a beta version is currently available in the Android Market.
In this post I would like to share a description of the new features of the player for the PC. In this post, I will talk about the work we have done to improve performance, power management and video, as well as discuss new multi-touch and private viewing technologies, as well as talk about our work to improve the performance of Flash Player for Mac.
Performance and Power Management
As noted above, the team spent most of the time optimizing memory usage. Tabbed browsing is common for users, who often have many pages open in the browser at the same time. This is very convenient for saving time, but uses a lot of memory. In Flash Player 10.1, we added a new functionality that allows you to track when memory is coming to an end. Now, when applications use too much memory, Flash Player automatically terminates their execution.
')
The development team has made a number of improvements to save resources in order to reduce power consumption and extend battery life. For example, Flash Player can now reduce power consumption by suspending the execution of applications running in inactive browsers tabs. In the case of background sound playback, the execution will continue.
Some significant changes were made to Flash Player 10.1 that changed the architecture of the time and event management system. Without going deep into the details, the end result is that the applications for Flash Player and Adobe AIR use significantly less processor resources when the content is idle and consume less energy in the execution process. These enhancements are most pronounced on the Mac platform.
Video playback enhancements
Hardware decoding, improved buffering, p2p video transmission, multicast and http broadcasting are a big part of the improvements in Flash Player 10.1 in terms of video delivery and playback. For the desktop platform, Flash Player 10.1 allows you to use hardware decoding of H.264 video to provide smoother playback and higher quality with minimal use of resources on all supported operating systems (Windows and Mac OS X using a special Flash Player build -
Gala ). Using hardware decoding allows you to transfer the execution of this task from the processor, improving playback speed and reducing the use of system resources.
In addition, dynamic streaming via http protocol (HTTP Dynamic Streaming) extends the delivery options for high-quality live video and video on demand with the ability to adapt the bit rate to the user's channel. This option allows publishers to use the standard HTTP network infrastructure, which improves the potential of coverage and quality of services for video delivery based on the MP4 packet standard.

Opportunities for p2p interaction became available in Flash Player 10.1 thanks to the Real Time Media Flow Protocol (RTMFP) protocol that allows users to interact with Flash Player in real time. Support for user groups is also implemented, allowing you to transfer messages and data within a group. Application level broadcasting allows you to organize one-to-all live streaming, for example, to create audio / video chats.
Improved RTMP broadcasting and buffering capabilities significantly improve the quality of video playback for users of Flash Player. Connection recovery available for RTMP streams allows you to continue playing using the buffer even if the connection is interrupted. When the connection is restored, the stream resumes playback. Developers can add logic to reconnect to a stream in ActionScript to reconnect to the server in case of problems with the network.

The new smart rewind system allows you to achieve the capabilities of digital video players (DVR). Smart rewind allows the user to rewind using the new reverse (back) buffer, so viewers can easily rewind the video backward or forward without requesting the server, which significantly reduces the rewind time. Smart rewind can speed up rewind and realize the effects of slow or fast playback, as well as the replay of interesting moments (instant replay) for streaming video. It also became possible to specify the delay limit of live video, which allows you to speed up video playback when the delay exceeds this limit by synchronizing the video time over a long period of playback. Finally, changing the bitrate for dynamic streaming over the RTMP protocol (RTMP Dynamic Streaming) to improve switching between bitrates, reducing the time to receive video data using the available bandwidth and processing speed (similar to SmoothStreaming in Silverlight).
Multi-touch
Many companies began to manufacture mobile devices with the support of this functionality, and not only smartphones, but also a tablet-PC or PC like the HP Touchsmart. With Flash Player 10.1, you can take advantage of the latest equipment and operating systems, with the ability to interact with the user using the new ActionScript 3 API, for Multi-Touch technology and create the ability to interact with several objects at the same time, or work with basic gestures such as scaling, scrolling, rotating, scaling, and a two-finger tap. Multi-touch can be one of the most important characteristics for developers and designers who are creating new applications for the Flash platform.
Private browsing
Flash Player 10.1 fully supports private browsing in browsers (when local data is not cached and user activity is not saved) by implementing a compatible private browsing mechanism between SWF and HTML content. Private local objects (LSOs) are traditional local objects (analogous to cookies) created during private browsing, and deleted as soon as the user returns to normal browsing mode. Existing local objects exist during private browsing, but are not available.
Improvements for Mac platform
Our Mac developers, with the help of the Safari development team, have made significant changes to the Flash Player for Mac. Here is a partial list of the work we did for Argo. First, Flash Player 10.1 is a full-fledged Cocoa application (although Carbon support remains for some browsers that need it). Cocoa events are now used, using the Cocoa interface for dialogs, using Core Audio for audio, Core Graphics for printing support, and using the Core Foundation for text.
We have made one of the improvements to support double-buffering of the OpenGL context, which allows for improved full-screen playback. We also explored a series of compile-time optimizations using Xcode to improve the overall speed of the Flash Player on Mac. Rendering performance has been improved by using Core Animation. For Mac computers using Mac OS X 10.6 or later, it is possible to use hardware acceleration in Core Animation to increase the efficiency of displaying web pages that combine both SWF and HTML content. The overall performance boost of Flash Player for Mac users will lead to faster video playback and more efficient processor utilization.
In my opinion, the Flash Player development team has taken quite good steps to improve the player, and perhaps the moment will come when the developers will come to Steve Jobs, and as he said, a well-functioning Flash Player will show.