Develop

The Bevara series of IDEs use  a proprietary algorithm to analyze an input data file to determine an optimal Accessor for the file. An Accessor is a pipeline composed of one or more code elements (filters), that handle operations such as reading, decoding or interpreting, displaying or playing back, and controlling the playback of the file.
Once determined, the selected set of filters is packaged into a set of required libraries with associated Javascript control code, and a framework for code integration into websites or applications is produced.
Each IDE also provides the capability of user-selection of filters from the available library. Warning: when selecting or changing any filters to build the Required libraries, you should always confirm by using the Preview pane that your file is being played back/displayed correctly.
The free Bevara Access IDE includes a set of open-source libraries with the capability or selecting between available libraries. It further provides selection of Accessor options, such as caching and web-codecs.
The Bevara Access Premium IDE provides a larger set of open-source libraries, supporting a wider range of formats. It further adds the capabilities of editing the existing open-source libraries and adding additional  licensed or proprietary libraries to the set of available libraries. The IDE supports development and addition of libraries with a number of debug tools, including displaying the filter chain, and decoding/interpretation statistics. All Bevara Access Premium IDE licenses come with Bevara support for conversion of proprietary decoders/interpreters into Wasm-based framework.
The Bevara Preserve IDE packages the Accessor and original data file into a contained format useful for long-term archiving. The Bevara container format preserves the file in its native format, while enabling one-click display in a browser or application.
Additional Bevara IDE packages include frameworks for batch file processing and preservation and pipeline generation for fast transcoding.
Contact the Bevara Sales team for upgrade options.

Pipeline Construction

The Accessor pipeline is composed of one or more WebAssembly filter components with one or more associated Javascript (or other language) wrappers for user-interface and pipeline control. Each filter component and control file is labelled with a version number, e.g., solver_1.0.2.
Each filter has a strict number of inputs and outputs to enable successful filter chaining to form the complete Accessor. This also enables straightforward filter substitution via one of the Filter Selection methods. However, the Accessor pipeline must be verified after filter changes to ensure it continues to operate as expected.
Bevara Access Premium IDE subscribers can also edit filters in the IDE library and create and add filters to the IDE library.

Filter Selection

There are two ways to modify the set of selected filters that form the Accessor pipeline. After any modification, the pipeline selection must be verified for suitability using the Preview pane.
Method 1: The delete, plus, minus, and reset buttons from the Required Libraries section of the Accessor Pane provide for fast filter selection.
Method 2:  Navigate to the Develop pane.
Each of the available filters is listed within the Develop pane . With the Bevara Access IDE you have the option of adding a filter or removing a filter from the set of Required libraries using the Add to library or Remove from library buttons. Note that every time you generate a new set of Required libraries, you must confirm that  the set is performs the correct playback or display of the associated data file.

Pipeline Verification

After a pipeline is modified by deleting, adding, or exchanging filters, it is necessary to verify that the new Accessor pipeline correctly displays or plays back the associated data file. Navigate to the Preview pane and verify the display/playback, including the functionality of any controls.
The message tabs, one or more of Console, Media info, Graph, Stats, and Unused, at the bottom of the Preview pane are use for verification and debugging. These may display any error messages, text-based or graphical filter chains, and decoding/interpreting statistics.

Console

The Console tab displays messages generated during file analysis, including progress and filter status messages.

Media Info

The Media Info tab includes messages about the media format.

Graph

The Graph tab shows a filter flowgraph.

Stats

The Stats tab includes detailed information about each filter.

Unused

The Unused tab lists any filters that are selected for, but are not used in, generating the current file Preview.

Site or App Integration

To use an Accessor the Accessor pipeline code and instructions must be integrated into website or application that supports Wasm and JS (or alternate control language).  The Bevara Access IDEs automatically generate an integration code framework for an HTML-based application, including the selected pipeline filters and supported optional controls.
The Integration code and the Required libraries, including the auto-suggested and any manually-selected filters, are displayed in the Preview pane.
Use the Integration option buttons to switch between display of the one or more available options: Universal tags (HTML); Script (JavaScript); and ArtPlayer format integration code.
Use the Download required libraries button to package and download the filters and wrapper code. Use the Copy code to clipboard button to copy the Integration code.
To use the Accessor in a website or an application. Place the  downloaded libraries onto your server or in your application package. Insert the Integration code framework into your website or application and then modify the placeholder script-directory or scriptDirectory URI to point to your downloaded libraries. Finally, modify the placeholder src, data-url, or data tag URI to point to the file to be accessed.

HTML Integration Code

For multimedia Bevara uses standard HTML elements and tags: img, audio, video, and canvas.
However, the attributes specify the interface, the extension to the tags, the underlying decoder/interpreter, the location of the data file, and additional performance-related flags.
Tag/Attribute
Status
Type/Value
is
mandatory
String. One of:
“universal-img”, “universal-audio”, “universal-video”,”universal-canvas”
using
mandatory
String. “solver_1.0.2”
src
mandatory for image, video, audio formats
String. A valid URI.
data-url
mandatory for canvas
String. A valid URI.
script-directory
optional; use only if the scripts are in a location other than the one specified by src or data-url
String. One or more valid URIs separated by semi-colons
with
mandatory
String. One or more Wasm accessor components separated by semi-colons, e.g., png_1.0
out
optional; sets output format
String. One of available output formats, e.g., rgba
data-autoplay
optional
Boolean. True = autoplay
use-cache
optional (not available with canvas); stores the interpreted result in the browser cache for fast refresh or reloading.
connections
optional; displays the filter chain
controls
optional; used only for video/audio for HTML 5 player controls
use-worker
optional ( not available with canvas); decode the file in separate thread to eliminate interference with page loading
use-webcodec
optional; when available use WebCodecs API  to improve performance