As promised couple of days ago – download link below:
Please note that this is still prerelease mostly due to Android at this point, the rest of platforms were tested & gotten rid of most serious issues reported by various users – those issues mostly popped up with the new 2.4 API. Of course there are still issues expected & known.
The next 2.4 release is going to be standard (no more pre-releases). Android will stay in alpha though until we manage to stabilize even more & have enough proof its working reliably accross variety of devices. We’ll provide standard support for Android but including this in your product will be still at your own risk. At this point we’re looking forward working with anyone interested to include FW Android ANE in testing it & giving us feedback to fix issues.
Whats planned for the final 2.4 release?
- Android – stabilizing audio & making grabbing GLES context more reliable.
- Android – better error handling & start work on graceful exits, handle app suspension.
- Android – whatever issues pile up within the next ~2 weeks.
- iOS & Android – Fixing progress bar to not show 100% all the time but reflect the actual progress a bit better.
- iOS – addSoundtrack ability to supply custom track time (in ms).
- iOS – won’t be included in 2.4 but will begin to see how to implement the new native iOS9 video recording API.
- There won’t be many changes in 2.4, which will be mostly Android focused again.
- Website overhaul: Updated roadmap, pricing, features, adding support comments / forum.
Changelog for PR2 release:
FlashyWrappers 2.4 Prerelease 2 (unofficial) -------------------------------------------- - !! All platforms: start was made async. As a result of that, you need to implement "started" status event. You need to catch it after start has been called and move any code which you called after start into this code block. In Flash, making start async helps to reduce the startup lag by ~80%. - All platforms: Fixed various bugs involving things going wrong when re-initializing the recordings (connected to the changes in 2.3->2.4 API) - All platforms: Added better logging & ability to influence logging levels (LOGGING_BASIC or LOGGING_VERBOSE) for improved debugging (still working on this). - All platforms: Added the option to override PTS calculation mode (forcePTSMode) with the option to specify either PTS_AUTO, PTS_MONO or PTS_REALTIME. This allows to mix realtime mode features(OpenGL fullscreen capture, multithreading) with non-realtime mode or vice versa. - All platforms: Added the option to override frame dropping mode (forceFramedropMode) with the option to specify FRAMEDROP_AUTO, FRAMEDROP_OFF or FRAMEDROP_ON. This allows to mix realtime mode features(OpenGL fullscreen capture, multithreading) with non-realtime mode or vice versa. - Windows: Fixed a bug which caused the new MediaFoundation based Windows ANE crashing on Windows 7. - Windows: Added better error handling and logging when unexpected error happens. - Android: Added capturing individual DisplayObjects in the new FW Android. You can also use addVideoFrame with ByteArray. - Android: Added non-realtime mode in the new FW Android. This influences the pts calculations and frame dropping. - Android: Added logging to separate log file on sd card, and verbose mode for more detailed logging. - Android: Added AUDIO_MICROPHONE audio mode. This mode uses Android native microphone recording (not AIR microphone recording as on other platforms) for faster and reliable microphone & video recording. - Android: Added AUDIO_MONO and AUDIO_STEREO. Beware, these are experimental. When adding audio don't add buffers larger than 32768 bytes! Currently, when adding audio using these modes the app might freeze(its a known issue with audio). - Android: Rewritten code extensively to support draining the audio & video encoders in separate threads (ie. improved overall performance) - Android: Fixed Android 4.4+ issue - the video file is by default saved to apps folder on sd card now instead of the device internal storage. - Android: Improved error handling, many Java errors(including unexpected errors) will now propagate to AS3 console in addition to the device log, making it easier to spot more serious issues instantly. - Android: The ANE class wrapper was united with the rest of the platforms, so internally they are all using the same code now (previously Android used separate class). - Android: FW FFmpeg Android is not being supported anymore. It will be still provided upon request (with FW 2.3 API). - Flash: The domain memory is being reset after unloading the FW SWF. You need to "load" the SWFBridge with each recording for this to work(it automatically unloads the previously loaded SWFBridge including clearing all the domain memory). This prevents any possible memory leaks / growing memory usage caused by Crossbridge & Flash memory fragmentation. - Flash: Fixed a bug which didn't reset multithreading to false when initializing the encoder for second time with realtime = false after realtime = true. - Flash: Added "RAM guard", which is able to modify the recording fps dynamically depending on whenever the encoder is keeping up with the frames being sent to prevent accumulation of raw frames in RAM. - Flash: Added the ability to control how much domain memory will be preallocated when initializing FW (in getInstance as second argument, in AIR this doesn't affect anything).