0 Replies Latest reply on Sep 25, 2017 7:54 AM by Milind.Jha

    09/25/2017 - Beta - Flash 27.0.0.154

    Milind.Jha Adobe Employee (Admin)

      Welcome to the updated Flash Runtime version 27 beta!  We've been working on new features and fixing important bugs for Flash Player and we're looking forward to receiving feedback from our Flash Player community.

       

      This beta release includes enhancements and bug fixes related to security, stability, performance, and device compatibility for Flash Player 27.  For full details, please see our release notes.

       

      Note:

      • The ActiveX Flash Player in this release is not compatible with Windows® 8.x or 10
      • Flash Player for Windows® 8.x/10 is available as part of the generally available Windows® 8.x/10 update
      • Flash Player Linux builds have not been updated on Adobe Labs

      New and Updated Features

      Support Audio Output Selection in Flash Player

      Starting with Flash Player version 27, the user can select an audio device directly from the Flash Player Settings dialog through a newly added audio output tab.

      Here is the screenshot of the Audio Output user interface: 

      AudioSettings.png

      All the attached audio output devices of the system are listed in the drop-down menu. The user can select any of the available devices and once the settings dialog is closed, audio starts playing from the selected device. The selected device will be the current audio playback device for all Flash Player instances. For non-Pepper platforms, audio output selection setting is global among all browser tabs of the same process. When it is changed, all other tabs of the same process are affected.

      Restriction in Chrome:

      Audio Output device shares the same permissions with Microphone. So, if microphone permission is denied, audio output tab does not show the available audio devices. Also, “https:” must be used to enumerate Microphone and Audio Output devices after Chrome M60.

      You can show the device names on Chrome (or Chromium based browsers such as Opera) in the following ways:

      1. If the current flash content tries to use Microphone, and user grants the permission, then device names will be shown when the user opens "Audio Output" tab in Settings UI dialog.
      2. In Settings UI dialog, user can click Microphone tab, and grant the permission, then close and re-launch Settings UI dialog.

      This feature is supported in Standalone and Plugin on Win/Mac/Linux except Chromebook.

      Support ActionScript API for Audio Device Manager

      With the release of Flash Player 27, developers can now select the audio output from ActionScript using the new ActionScript API - “AudioDeviceManager”. It is in sync with Flash Player's audio output settings. A UIA (User Invoked Action) restriction is applied to this API keeping in view user privacy concerns. The API can only be invoked by a user invoked action. If it is not invoked by user action, Flash Player throws a runtime error "IllegalOperationError" with error code 2176.

      Use the AudioDeviceManager class to list down the audio output devices attached to a system using the property, deviceNames(). This returns an array of the attached devices. The index of the selected device from that array can then be retrieved using the selectedDeviceIndex() property. A new event introduced with this API, named AudioOutputChangeEvent.AUDIO_OUTPUT_CHANGE is dispatched to ActionScript listeners when the audio output changes. It is dispatched when the user selects a different audio device from Flash Player's setting UI (Audio Output), content setting (AudioDeviceManager.selectedDeviceIndex), or when adding/ removing the device from the system. The ActionScript client can check how the audio output change is triggered through “AudioOutputChangeEvent.reason” class.

      The two reason codes are "AudioOutputChangeReason.USER_SELECTION" and "AudioOutputChangeReason.DEVICE_CHANGE".

      Here is the general workflow of the API:

      1. The content provides a control such as a button that indicates that the user should click to select an audio device.
      2. When the user selects the control, a separate UI is presented to the user to handle the click event. It uses the new AudioDeviceManager API to enumerate Audio Output device names, and the UI setup work.
      3. When the user selects a device, the content uses the new AudioDeviceManager  API to set the new device in handling the user's selection.

      Sample Snippet:

      Access the system available audio device names
      var audio_device_manager:AudioDeviceManager = AudioDeviceManager.audioDeviceManager;
      var status_ta:mx.controls.TextArea;
      status_ta.html = false;
      status_ta.setStyle("fontSize", 9);
      var audio_output_device_array:Array = audio_device_manager.deviceNames;
      var selected_audio_device:String = audio_output_device_array[audio_device_manager.selectedDeviceIndex];
      status_ta.text = "The default device is: "+selected_audio_device+newline+newline;
      status_ta.text += "You have "+audio_output_device_array.length+" device(s) available."+newline+newline;
      for (var i = 0; i<audio_output_device_array.length; i++) {
          status_ta.text += "["+i+"] "+audio_output_device_array[i]+newline;
      }
      

       

      Select an audio output device
      var audio_device_manager:AudioDeviceManager = AudioDeviceManager.audioDeviceManager;
      audio_device_manager.selectedDeviceIndex = desired_audio_output_index;
      
      Monitor audio output change
      function audioOutputChangeHandler(evt:AudioOutputChangeEvent):void
      {
       if (evt.reason == AudioOutputChangeReason.USER_SELECTION) {
       [do something]
       } else if (evt.reason == AudioOutputChangeReason.DEVICE_CHANGE) {
       [do something]
       }
      }
      

       

      Known Issues

      • Memory leak is observed when using baseline_constrained profile on Firefox (FP-4198562)
      • Invalid stageWidth and stageHeight is observed on Firefox with render mode as direct and async drawing enabled.
      • EVENT.ACTIVATE not triggered on chrome when a tab is dragged in and out of the Chrome's window(FP-4198532)
      • Flash Player settings panel become unresponsive when hardware acceleration is turned off on Firefox

      Fixed Issues

      • Audio device selection not working when there are multiple devices with same name(FP-4198585)
      • Content freezes while switching the tabs on Firefox (FP-4198571, FP-4198555)
      • Video stops rendering after minimizing/restoring the Firefox browser window.

       

      Authoring for Flash Player 27 and AIR 27

      • Update application descriptor namespace to 27
      • SWF version should be 38

      System Requirements

      For system requirements of the current release of Flash Player in production, please visithttp://www.adobe.com/products/flashplayer/systemreqs/

      About the Beta Channel

      To get the latest Beta build of Flash Player visit Adobe labs