Why do I need Native Application (NA)?

Starting from version 57 Mozilla Firefox dropped support for all types of extensions, leaving only WebExtensions technology supported by the browser.

AVD version 2.x was built using Firefox XUL/XPCOM API. This API provided a lot of features to extensions. They could create, read, write, delete files on disk, launch other programs, had full access to network traffic in the browser, etc. In contrast, WebExtension technology limits possibilities of extensions. Now extensions have no access to the disk, and cannot launch any programs.


Part of WebExtensions API, called Native messaging, is designed to extend functionality of extensions. Native messaging allows extension to make calls to a specially designed program. The program can carry out some tasks and return data back to extension. Due to security reasons, the program cannot be installed automatically together with extension. An user must install it explicitly.


That program used by AVD is called Native application, and is used to perform the following tasks:

  • Download videos and video segments into temporary files on disk

  • Call FFMpeg executable to merge video segments into a single video

  • Show downloaded video on disk

  • Launch default video player to play downloaded video

  • Manage some settings UI such as selection of downloads folder or folder for temporary files


Native application instances are universal for all AVD extensions installed on different browsers. If you use two different browsers, like Chrome and Firefox, and installed AVD on both of them — they both will be using the same Native application.


Native applications can also be installed for all users on a particular computer (see How to install NA for details).