Menu Close

Adobe Flash Player Version 20.0.0.228 Released

Adobe Flash Player ​version 20.0.0.228 has been released by Adobe Systems.  Adobe Flash Player is a cross-platform browser-based application runtime that is required for viewing of certain applications, content, and videos.

 

Flash Player

  • Flash Player fails to load the .SWF files that comprise much of com2Learn.com’s course content. [4087953]

  • Method URLLoader.load fails to load an xml file located within an MHT archive. [4085136

  • Unloaded SWFs with Dialogs:Flash player hangs on clicking “browse dialog” link [4084260

  • usflashmap.com – Flash Player gets hang after clicking on the List tab [4074925], [4081533

  • Embedded Flash objects stop working in SMART Notebook on Windows [4015165]

  • The candidate window displayed at wrong position when input some CCJK characters on Windows 10 Edge Browser [4021613]

 

New Features


Provide Video Rotation Information to Action Script as Meta Data

According ISO/IEC 14996-12:2008 standard, videos must provide information matrices like Track Header Box and Movie Header Box. But the Flash runtime doesn’t process the matrix field values in Track Header Box and Movie Head Box correctly. This results in incorrect positioning or sizing of videos.

This problem is now resolved with Flash Player version 20 by providing video matrix information to ActionScript as a part of meta data object of the onMetaData event (which is a property of NetStream.Client). ActionScript developers can use these matrices to render the videos as needed.

This feature can be used to apply matrix information to a video object. See below for an example:

var video:Video = new Video();

addChild(video);

var nc:NetConnection = new NetConnection();

nc.connect(null);

var ns:NetStream = new NetStream(nc);

ns.client = {};

ns.client.onMetaData = ns_onMetaData;

ns.client.onCuePoint = ns_onCuePoint;

video.attachNetStream(ns);

ns.play(“Demo.mp4”);

function ns_onMetaData(info:Object):void

{

trace(“metaData”);

video.x = 0,

video.y = 0;

video.width = info.width;

video.height = info.height;

var matrix:Matrix = video.transform.matrix; // Read old transform matrix of Video object.

var oldSize:Point = new Point(video.width, video.height);

var newSize:Point = new Point(Math.abs(info.matrix.transformPoint(oldSize).x),

Math.abs(info.matrix.transformPoint(oldSize).y));

matrix.translate(-(oldSize.x / 2), -(oldSize.y / 2));

if (info.hasOwnProperty(“trackHeaderBoxMatrix”))

matrix.concat(info.trackHeaderBoxMatrix[0]); // Apply the matrix of the Track Header Box of Video Track provided by this feature to the video object.

// trackHeaderBoxMatrix is an array of MatrixObject because there can be one or more video tracks.

if (info.hasOwnProperty(“movieHeaderBoxMatrix”))

matrix.concat(info.movieHeaderBoxMatrix); // Apply the matrix of the Movie Header Box provided by this feature to video object.

matrix.translate((newSize.x / 2), (newSize.y / 2));

video.transform.matrix = matrix; // Set new matrix to transform matrix of Video object.

}

function ns_onCuePoint(item:Object):void

{

trace(“cuePoint”);

}

This feaure will be available only for NetStream using Progressive Download.  It will not be available for NetStream using RTMP or appendBytes
etc.  Matrix information provided by this feature can only be applied to an instance of Video class .  It can not be applied to StageVideo Class.

Matrices’ information will only be available for videos which in accordance with the ISO/IEC 14996-12:2008 standard.


PPAPI Vector Printing

As of Flash Player version 19, Vector Printing has only been available for NPAPI while PPAPI supported only bitmap printing.  Hence there was an
observable difference in printing quality between NPAPI and PPAPI (with NPAPI being better).  Now in Flash Player version 20, we have introduced vector printing for PPAPI on Windows, thus giving a better printing experience from PPAPI supported browsers and applications. Bitmap printing is still supported for content that requests it.  

Flash Player “Enable Hardware acceleration” setting for Edge and IE on Windows 8/10

The “Enable Hardware acceleration” option has been introduced to support the manual switching between software and hardware accelerated operations for the following features:

Video playback

Stage3D rendering.

The option is intended to allow users to force a software fallback to resolve display problems caused by faulty GPU drivers.

Instanced drawing

Stage3D APIs has provided developers a great way to render graphics efficiently using a devices’ GPU.  Developers can render beautiful graphics
using these APIs, but a particular scenario may occur, where a developer wants to render a particular graphical entity, multiple time.  For example, what should a developer do if they want to create a forest, having thousands of trees.  They might have a few models of trees and from these, they want to create a vast forest consisting of thousands of individual trees.  One way to do it is to dispatch as many draw calls as there are trees while changing relevant variables in between. For example, each tree is located in a different spot, each tree can be larger or smaller than the average, etc.  Doing this with dispatching separate draw calls can be very inefficient and time consuming.

The new Instanced drawing feature can help if this situation arises.  Using instanced drawing, a developer can use a particular
model of graphical object and render it more than one time in single frame. This will reduce draw calls and hence rendering and overall
performance will be much smoother.

For solving instanced drawing problem we have basically introduced two new APIs one additional (iid) register in AGAL.  A device should support Standard Extended Profile to have this feature.

Context3D::createVertexBufferForInstances( numElements:int, data32PerElement:int, instancesPerElement:int, bufferUsage:String = “staticDraw”, ):VertexBuffer3D;

Use the VertexBuffer3D object to upload a set of instance data to the rendering context.  The vertex buffer contains the data needed to render each instance in the scene geometry.  Vertex Buffers with instance data provide attributes that are common to all the vertices of an instance and serve as the input to the vertex shader program.

Context3D::drawTrianglesInstanced( indexBuffer:IndexBuffer3D, numInstances, firstIndex:int=0, numTriangles:int=-1 ):void;

AGALv3 is also updated .New AGAL Register: “iid” is added to read the current instance id in the shader.  So “mov vt0.x, iid” would be an
example AGAL instruction to read instanceID to vt0.x.

AGALv3 is available at :
 

https://github.com/adobe-flash/graphicscorelib/tree/master/src/com/adobe/utils/v3

Assumptions and Dependencies

1) This feature will only be supported on devices which supports Standard Extended Profile
2) Currently this feature is only available in Mobile devices

 



Security Updates


Adobe has released security updates for Adobe Flash Player.  These updates address critical vulnerabilities that could potentially allow an attacker to take control of the affected system.

  • Adobe recommends users of the  Adobe Flash Player Desktop Runtime for Windows update to 20.0.0.228 (support for Internet Explorer) and 20.0.0.235 (support for Firefox and Safari).
  • Adobe Flash Player installed with Google Chrome will be automatically updated to the latest Google Chrome version, which will include Adobe Flash Player 20.0.0.228 for Windows.
  • Adobe Flash Player installed with Microsoft Edge and Internet Explorer for Windows 10 will be automatically updated to the latest version, which will include Adobe Flash Player 20.0.0.228. 
  • Adobe Flash Player installed with Internet Explorer for Windows 8.x will be automatically updated to the latest version, which will include Adobe Flash Player 20.0.0.228.

 

​Vulnerability Details
 
  • These updates resolve heap buffer overflow vulnerabilities that could lead to code execution (CVE-2015-8438, CVE-2015-8446).

  • These updates resolve memory corruption vulnerabilities that could lead to code execution (CVE-2015-8444, CVE-2015-8443, CVE-2015-8417, CVE-2015-8416, CVE-2015-8451, CVE-2015-8047, CVE-2015-8455, CVE-2015-8045, CVE-2015-8418, CVE-2015-8060, CVE-2015-8419, CVE-2015-8408).

  • These updates resolve security bypass vulnerabilities (CVE-2015-8453, CVE-2015-8440, CVE-2015-8409).

  • These updates resolve a stack overflow vulnerability that could lead to code execution (CVE-2015-8407, CVE-2015-8457).

  • These updates resolve a type confusion vulnerability that could lead to code execution (CVE-2015-8439, CVE-2015-8456).

  • These updates resolve an integer overflow vulnerability that could lead to code execution (CVE-2015-8445).

  • These updates resolve a buffer overflow vulnerability that could lead to code execution (CVE-2015-8415)

  • These updates resolve use-after-free vulnerabilities that could lead to code execution (CVE-2015-8050, CVE-2015-8049, CVE-2015-8437, CVE-2015-8450, CVE-2015-8449, CVE-2015-8448, CVE-2015-8436, CVE-2015-8452, CVE-2015-8048, CVE-2015-8413, CVE-2015-8412, CVE-2015-8410, CVE-2015-8411, CVE-2015-8424, CVE-2015-8422, CVE-2015-8420, CVE-2015-8421, CVE-2015-8423, CVE-2015-8425, CVE-2015-8433, CVE-2015-8432, CVE-2015-8431, CVE-2015-8426, CVE-2015-8430, CVE-2015-8427, CVE-2015-8428, CVE-2015-8429, CVE-2015-8434, CVE-2015-8435, CVE-2015-8414, CVE-2015-8454, CVE-2015-8059, CVE-2015-8058, CVE-2015-8055, CVE-2015-8057, CVE-2015-8056, CVE-2015-8061, CVE-2015-8067, CVE-2015-8066, CVE-2015-8062, CVE-2015-8068, CVE-2015-8064, CVE-2015-8065, CVE-2015-8063, CVE-2015-8405, CVE-2015-8404, CVE-2015-8402, CVE-2015-8403, CVE-2015-8071, CVE-2015-8401, CVE-2015-8406, CVE-2015-8069, CVE-2015-8070, CVE-2015-8441, CVE-2015-8442, CVE-2015-8447).

 

Adobe Flash Player is one of the applications that is managed and updated by ODS.  If you are a current customer, ODS will automatically update your version of Adobe Flash Player over the next few days.  ODS will deploy both the ActiveX version and the Plugin version.  This ensures that Adobe Flash Player will function with web browsers including Internet Explorer, Firefox, and Chrome.  The update will install silently.  No user interaction is required.  There are no additional fees or charges for ODS to update your version of Adobe Flash Player. 


If you would like assistance managing and deploying Adobe Flash Player for PCs, please contact H Tech Solutions using the URL below.
Creative Commons License
H Tech Solutions Blog by Harris Schneiderman is licensed under a Creative Commons Attribution 4.0 International License.
Permissions beyond the scope of this license may be available at https://htechsolutions.biz/contact-us