==============================================================================================================

Google Chrome (NaCl) (Windows | Linux | MacOS | Chromium | Chromebook)

    * Google announced it will discontinue the support for (P)NACL apps in late December 2022, but it is still supported (June 2023).
    * Latest supported Chrome version is 113 (June 2023)

    * Download the .zip file (movianM7-7.0.xxx-nacl-chrome.zip) and extract it in your current (or new) Movian NACL installation folder
    * Download and use Chrome-113-Portable-64bit.zip on your Windows PC (or any version prior to Chrome 113 for your platform)

    * To manage/install the application follow these steps in Google Chrome 113:

        ** chrome://extensions
           ** click [Load unpacked] and select the folder where you extracted the .zip archive into

        ** chrome://flags
           ** Enable: "Native Client"              -> chrome://flags/#enable-nacl
           ** Enable: "WebGL Developer Extensions" -> chrome://flags/#enable-webgl-developer-extensions
           ** Enable: "WebGL Draft Extensions"     -> chrome://flags/#enable-webgl-draft-extensions

        ** chrome://components
           ** Make sure that latest pnacl version is installed [Check for update]
           ** pnacl - Version: 0.57.44.2492

        ** chrome://apps
           ** Start M7 and click [Open anyway] to ignore the "unsupported" warning
           ** Be careful *not* to click [Remove app] - you will have to reinstall and reconfigure M7 from scratch!
           ** Create a Desktop Shortcut for M7 - right-click on the M7 icon - [Create shortcuts...]
           ** Wait for a minute or two for M7 to load/start (it takes some time after the initial install or after an update)

==============================================================================================================

== 600
* General / Bittorent settings:
	* Max peers: 200 / Torrent peers: 150
	* Max usage of free space: can be set to 0% (use ONLY memory)
* Video Settings:
	* Video buffer: max 768MB
	* Added Video Pre-buffer Setting
	* Changed Video Buffer Max Size
	* Added Up/Down keys can change PREV/NEXT channel
	* Added "HLS Live Playback Mode" option (Standard / Large Pre-Buffer / From Start / Standard with Rewind)

* HLS playback LIVE/VOD: Video buffer is now used up to "Video Buffer Size" in seconds
* HLS playback LIVE: Check for new segments when less than 18 seconds bufferred
* HLS playback: It is now possible to seek forward in the buffered video
* HLS support for MPEG1/MPEG2/HEVC video and EAC3 audio (hls/m3u8 playback)

* Added support for ISO DVD playback from local/network locations (no torrent:// support for DVD ISO)

=== 609
Settings/Video Playback:
* Added: HLS Bitrate: [Highest (Best Quality)] / [Default] - It will always select the highest bitrate and avoid switching/blank screen

=== 611
* Added: Option in General Bittorrent: Maximum Number of Connections (20-300). Useful to lower the number of connections for some routers / WiFi setups.

=== 612
* Fixed rare crashes during HLS playback when remote server disconnects unexpectedly.
* Improved HLS playback

=== 613
Improved HLS playback and buffering.
Some other bug-fixes.

=== 616
Added: Support for DVB Subtitles in HLS/ts container.

=== 701/702
Improved OSD (On Screen Display). 
Added support for 'description', 'image', 'startts', 'endts' and 'trackinfo' videoparams parameters for page.type='video' (plugins)
Fixed: HLS Bitrate/Quality switching
Fixed: Metadata language for thevdb and themoviedb
Added: OSD/Info Banner options under Settings / Look and Feel

=== 703/704/705
Added: Two preinstalled fonts (useful for Chrome/NACL version)
Fixed: Country detection at startup (ifconfig site)
Added: Bounding box opacity setting in Subtitle settings
Fixed: Bounding box background with colored text/subtitles
Added: Better timing processing for SRT and embedded text subtitles

=== 706/707
Fixed: Handling of 502/504 HTTP errors for live HLS streams
Fixed: Crash during HLS playback with broken segments
Updated: Bulgarian translation

=== 711/712
Added: Option to auto-start a plugin when Movian starts (Settings/General/Launch plugin on Movian start)
Fixed: Some issues with HLS playback

=== 714-715
Fixed: Crash during AAC audio stream probe (HLS secondary streams)

=== 716
Fixed: Time-shift/chase-play mode during HLS live playback when [From Start] or [Standard with Rewind] is selected for 'HLS Live Playback Mode' in Video settings

=== 717-718
Added: Home & Settings shortcuts in the ||| Page Settings menu
Added: HLS support for supplementary subtitle variants (WEBVTT)
Added: HLS subtitles (WEBVTT) support for MPEGTS tag
Added: Support for live YouTube broadcasts in HLS format and WEBVTT subtitles
Fixed: HLS subtitles can be turned off

=== 720
Improved: SRT/WEBVTT subtitle processing
Changed: Screensaver appearance and timings
Fixed: HLS WEBVTT subtitles crash; All-caps CCs converted to sentence case (English) and long lines split
New: Plugin for Nebula subscribers (http://nebula.app)

=== 721/722/723/724
Improved: Instant fast-forward / seek in buffered data
Changed: Loading throbber size, color and speed
Changed: Video playback will do pre-buffer on load *and* seek
Improved: Instant fast-forward / seek in buffered data for live HLS streams

=== 730
* Google announced it will discontinue the support for NACL apps in late December 2022.
* Latest supported Chrome version is 113 (June 2023)

=== 736
Fixed: TMDB now uses https
Fixed: Screensaver transitions will not show background video (paused or playing)
Fixed: Screensaver now works
Changed: Home screen hover/selected animation
Changed: Video-details page to accommodate more lines for description
Added: Option in Settings/Languages 'Time offset' to correct current displayed time (-12/+12 hours)

=== 737
Added: page.openurl for plugins (similar to page.redirect, but keeping the current page)
Added: Support for <u> <s> {y:u} {y:s} {\an8} subtitle tags
Updated: Bulgarian translation (by PROXIMO)
Updated: HLS logic

== 738-753
Added: Support for [dvh1 & dvhe] fourCC tags for Dolby Vision detection
Improved: Handling of {\an1}-{\an9} tags in subtitles (no repositioning if subtitle setting 'Ignore embedded styling' is enabled)
Fixed: Subtitle/Audio/Video options saved per title/folder & added 'Reset to defaults' for current title
Added: 'Remove SDH commentary' option in Subtitle settings
Added: 'Source priority' for subtitle providers (restart after change!)
Updated: HLS logic and BG translation
Fixed: Subtitles (SSA/ASS) now have bounding-box and proper size/colors

==============================================================================================================

2023-12-23:
Movian MOD 5.0.x is now M7

New: M7 (Movian 7) replaces Movian 5.0.x MOD
New: M7 with new Android app-id will install as a separate application
New: Removed obsolete "libav" from 2015 and replaced with latest ffmpeg (4.4.4 2023-12-23)
New: 7 years of ffmpeg updates for audio and video decoders/parsers
libav: Thank you! ( https://en.wikipedia.org/wiki/Libav )

M7 initial version: 7.0.0
movianDRM7 initial version: 7.7.0

==============================================================================================================

=== 7.0.0 - 7.0.2
Updated: Duktape to 1.8.0 (important)
Fixed: Video thumbnails properly created, stored and loaded from cache (important)

=== 7.0.3 - 7.0.4
Fixed: AV Sync after data underruns (video/audio/subtitles going out-of-sync)
Fixed: Bittorrent cache management (read/write/seek) when cache file exceeds 2GB (important)
Fixed: Throbber animation, video-page buttons, seekbar & loading indication during underrun pause

=== 7.0.5 - 7.0.9
Fixed: Large buffers for audio-only & DVD-video playback
Added: Option in Look&Feel 'Debug Log'
Added: Option in Bittorrent 'Hash check'
Fixed: Torrent startup on slow connections
Added: SDH processing for text in brackets ()
Added: Simple ASS/SSA subtitle decoding for embedded subtitles
Added: Seek buttons (forward/rewind) for video pages
Fixed: Do not create multiple decoders for the same codec type
Fixed: Early init debug logging
Added: Support for MM:SS.MLS WEBVTT/SUBRIP time format

=== 7.0.12 - 7.0.13
Fixed: Support for rawDTS audio files with metadata
Fixed: Displaying of SVG images without xml header
Changed: Reverted all bittorrent changes (hash check/2GB limit)

=== 7.0.17
Fixed: Crash when trying to control another M7 (stpp) when 'Remote control' is disabled on the other side
Fixed: Bittorrent cache management - 2GB limit and correct calculation of used space (another attempt)
Added: Bittorrent option to change tracker protocol (TCP/UDP/both)

=== 7.0.19
Fixed: Correct metadata for series/episodes from thetvdb.com for non-English languages
Added: Settings/General/Clear cached files - will also clear HTTP cookies (restart required)
Changed: Plugin categories (added separate folder for TV/Video RU)

=== 7.0.24
New: Domain name change - movian.eu - all services transferred
Fixed: BitTorrent memory usage
Fixed: Memory leak (thumbnail extract/create/save to blobcache)
Improved: Media probe
Changed: About page

=== 7.0.31
Added: Speed, memory use and active pieces information in Media Info for torrents
Updated: Tracker list for magnet torrent links
Changed: BT memory management (free active pieces when limits are reached)
Changed: Max number of BT active pieces - 128, memory limit (goal) 128MB
Changed: Do not allow for multiple probe threads to run (metadata and thumbnail extraction)
Changed: Smaller Media Info and System Info displays

=== 7.0.38 (2024-03-11)
Added: HW Accelerated Video decoding (AVC/H.264, VP8 and VP9)
Added: Options in Settings/Video to toggle AVC/VP8/VP9 HW decoding
Added: Info in Media Info when HW decoding is used - (HW) suffix
Fixed: Do not seek beyond video duration
Fixed: Do not stop playback when minimized or behind other windows / lost focus
Added: Attempt to restart after crash (blue screen will flash between attempts)
Fixed: Less NaCl module crashes
Fixed: [About] icon
Improved: BT memory management

=== 7.0.75 (2024-05-11)
Improved: Subtitles bounding box matches the size of each text line
Added: Slide-in animation for video page - top (title) and bottom (seekbar/controls)
Fixed: Hide OSD when ||| side-menu is open
Added: Custom context menu for plugins (onEvent - itemMenu - customInfo)

=== 7.0.78 (2024-08-05)
Updated: Video page controls and layout
Updated: List of blacklisted plugins

=== 7.0.79 (2024-08-07)
Added: Support for image/logo in notifications (popup.notify(text, time, logo);)
Updated: Video page controls and layout for live streams

=== 7.0.84 (2024-08-14)
Fixed: Flickering seek-bar during fast-forward
Improved: Notifications layout (icon/text)
Improved: Subtitle offset/animation when showing playback controls
Improved: System log display
Updated: Throbber colors and animation (loading indicator)
Added: [SD/HD/FHD/4K] information in the video playback screen ($self.media.video.user_video_q for glw views)

=== 7.0.93 (2024-08-31)
Fixed: BitTorrent general performance, changed our client ID ('Movian' may have been blocked on some trackers), changed max number of connections and removed injected trackers. This should fix issues with some torrent sites.
Added: Option to change Loading Indicator: [Colors/Blue/White] (Look & feel)
Changed: Debug log format and timestamp (time of day)
Changed: Video Buffer Range [96MB-768MB] and Default [160MB]

=== 7.0.111 (2024-12-22)
Improved: BT Prioritize critical pieces needed for video decoding over the read-ahead pieces
Added: BT Option 'Max concurrent requests per peer'
Added: Our own udp BT tracker (tr.movian.eu)
Fixed: BT Crash when following base64-encoded URLs
Fixed: BT Better timeouts (do not drop piece download until deadline exceeds 30 seconds)
Added: BT Option 'Inject additional trackers' (uses trackerslist/ngosang and newtrackon)
Fixed: Correct detection of audio codecs for audio-only titles (PCM/DTS in WAV container)
Added: Current torrent cache size in MediaInfo
Changed: New BT cache-per-torrent default limit, new cache-magic to clean old cache files
Fixed: Correct video buffer calculations (important!), now M7 can buffer up to the Video buffer size correctly
Added: FTP client/protocol support for STOR and DELE commands (ftp_unlink, ftp_write) - copy/paste to remote FTP server now works
Fixed: BT cache clean-up
Added: Option to set BT Max memory for active transfers (96 - 384 MB)
Added: Option to set BT Max cache size per torrent (160 - 2000 MB)
Changed: BitTorrent section is now in main Settings page
Changed: MediaInfo now shows additional info about buffered data in MB and kbit/s
Improved: New BitTorrent read-ahead logic, probe and timeouts, better performance on slow connections
BT: Changed defaults for peers, speed, timeouts; Process piece download timeouts (unblock UI/navigator).
Pop-up notification and playback stop when network playback fails to start due to missing data/peers timeout.
Fixed piece timeouts and magnet links
Memory in MediaInfo is now in MB, System Free shows Available/Cached and Free memory
Support for larger HLS playlists (up to 1MB - was 100KB)
Updated BG translation
Improved: BitTorrent performance (memory, read-ahead, speed)
Added: HLS fMP4 support (experimental, AV desync after seek!) WIP
Fixed: Playback/seek for music titles (audio files)
Added: FF/REW buttons in playdeck and ||| menu for music titles
HLS playback can buffer up to the video-buffer limit (previously 120s only)
HLS variants check every 30s (was 60s) when enough buffered data
HLS start segment offset changed for LIVE broadcasts
HLS fMP4 log error instead of crashing (fMP4 support is WIP)
Fixed: Display embedded subtitles when seeking back (rewind)
Show loading indicator *only* while buffering
Do not load multiple audio streams for better buffer usage
Fixed: Missing last subtitle line for text subtitles
Added: [2.0/5.1/7.1] audio channel information in the video playback screen
Added: Options in Settings / Look and Feel to hide Search bar, Settings, Plugins and Local Network icons from Home screen (you can access Settings from the ||| menu if you hide 'Settings' or type 'settings:' in the search bar)

=== 7.0.135 (2025-02-20)
Added initial fMP4 support (HLS v4)
HLS: fMP4 static/VOD playlists feature is now functional (play, pause, seek, resume)
Seek to HLS segment boundary for out-of-mux variants
Added [HLS Resolution Limit]: [No Limit/SD/720p/1080p/1440p/4K]/[AVC]
fMP4 supports AVC/HEVC video with (ext) AAC audio and subtitles (tested with Nebula streams AVC 1080p@60fps)
Added support for HLS WebVTT MM:SS.MLS format

=== 7.0.136 (2025-02-22)
SYSTEM/HTTP: Added support for HTTP header 'Range: bytes=X-Y' set/used by plugins
HLS fMP4: Implemented mp4 box parser and added more video/audio flavors (AAC, DD/AC3 and DD+/EAC3 audio)
Added handling of specific time scales to play successfully any video from YouTube (MP4/DASH) (AVC/HEVC upto 4K)
M7 can handle fMP4 with mp4-dash files as input (DASH to HLS on-the-fly)
fMP4 support allows for the other M7 platforms (Linux, PlayStation3, Chrome/NaCl, MacOS) to play DASH content without DRM7 (unencrypted)
dashTEST: Plugin for [DASH to HLS] on-the-fly conversion and playback of supplied mp4 video/audio tracks (all platforms)
Sample plugin to demonstrate DASH to HLS on-the-fly done in a plugin: https://movian.eu/Android/movianDRM/dashTEST/
Updated dashTEST to detect video framerate if not provided
fMP4 support for all timescales for non-fragmented MPEG-DASH inputs

=== 7.0.137 (2025-02-25)
HLS: Added support for BYTERANGE:SIZE header syntax (without @OFFSET)
Init video demuxer first and pre-load data before audio demuxer starts
Set restart position to segment boundary timestamp
Restart playback directly from restart-position segment (do not load segment 0)
fMP4: Added fall-back/checks for framerate from the manifest/variant
SUBTITLES: Fixed detecting and loading of WEBVTT (HLS and standard)

=== 7.0.143 (2025-03-28)
HLS: More accurate and faster seek to segment boundaries
Fixed BYTERANGE:SIZE[@OFFSET] with offsets larger than 2GB
fMP4: Improved audio sample decoding granularity, faster seek, restart and AV-sync improved, better memory management, seek in buffered data and now behaves like the standard HLS TS mode, added indication in Media Info, fixed default sample duration
Improved detection of video framerate for fMP4 (non-fragmented) and updated dashTEST plugin
Added movian/mp4dash module (built-in) to be used by plugins like dashTEST
Faster fMP4 probe, loading times and lower memory usage
HTTP: Changes to TCP buffer and streaming limit switch (faster loading)
UI/FONTS: Fixed changing main User Interface Font (was not working since Movian 5.0.0)
Added: Bittorrent icon
SUBTITLES: Fixed crash caused by malformed/unsupported subtitle timings

=== 7.0.148 (2025-04-25)
HLS fMP4: Added support for live broadcasts (F1 plugin can be used without DRM7 on all platforms)
HLS: Enable seek (ff/rewind) for live broadcasts as default, improved A/V sync, fixes

=== 7.0.154 (2025-05-18)
HLS: (TS/fMP4) Added functionality for manual video quality and variant selection
HLS: Added support for negative live edge offset (#EXT-X-START:TIME-OFFSET)
UI: New [Audio tracks] icon and selection screen - added HLS video tracks with w/h/bw/codec info
INFO: Updated MacOS version to 7.0.154

=== 7.0.168 (2025-07-01)
HLS: (fMP4) Fixed wrong framerate/timescale for 50/60 fps live HEVC (hev1)
HLS: Select best resolution/bitrate (prefer lower bitrate with matching resolutions)
BT: Fixed detection of trackerless .torrent files
INFO: Updated Android, Playstation 3, Linux and Chrome/NaCl versions to 7.0.168

=== 7.0.185 (2025-08-06)
HLS: Completely rewritten HTTP communication (TS and fMP4) (important)
-- One http request per segment (previously 16000+ 188-byte requests per 3MB segment)
-- Major speed improvement in downloading/processing segments (muxed and out-of-mux streams)
-- Fixed loading of HLS subtitles (previously cut to the first 1316 characters)
-- Improved initial TS PMT/PAT/ES-PID processing (better AV-sync)
-- Faster quality/resolution switch and faster playback resume
HLS: Added [HDR] indication for VIDEO-RANGE
HTTP: Allow for more parked and concurrent connections
FFMPEG: libav/ffmpeg is now compiled with pthreads support
SYSTEM: Improved font handling
SYSTEM: Updated [movian/mp4dash] module (faster probing for very long videos)
UI: Changed background
INFO: Updated Playstation 3, Linux and Chrome/NaCl versions to 7.0.185

=== 7.0.221/227 (2025-11-23)
SYSTEM: Updated [movian/mp4dash] module
HLS: Fixed frame timings/durations (fMP4)
HLS: Sorted by codec video quality list, indication of initial selection

=== 7.0.231
* HLS-TS+MUX: Detection of DD, DD+ and DTS audio descriptors in PMT with correct channel layout, bitrate and sample rate for muxed-in audio tracks (as specified by 2024 DVB BlueBook A038r17)
* HLS-TS+RAW: Added support for raw (out-of-mux) DD/AC3 and DD+/EAC3 audio (supported: AAC, AC3 and EAC3)
* HLS-TS: Sync streams with large GOPs or muxing interleave (DVB TS DD/DD+/MP3 audio or interlaced video)
* Option in Settings/Dev to set max HLS SD resolution (when Settings/Video HLS Resolution Limit: [SD])
SYSTEM: Updated [movian/mp4dash] module (use memory only)

=== 7.0.239 (2026-02-16)
* Fixed: HLS live playback when video PID changes
* Fixed: HLS live playback crash when no segments are available
* Fixed: HLS fMP4 Correct timescale (video/audio) for some special broadcast cases
* Fixed: Wrong audio timescale/sample-rate with some fMP4 44.1 kHz sources
* Added: Support for fs.funlink in plugins (require('native/fs').funlink(path);)
* Changed: URL_MAX to 4KB (from 2KB)

=== 7.0.241 (2026-03-10)
HLS TS/fMP4:
- Remember user-selected audio and subtitle tracks
- Detect and display Stereo/Multichannel/Dolby Digital in Audio/Video menu
- Display audio codec for all tracks in A/V menu based on the manifest
- Auto-select audio track based on 'AUTOSELECT=YES' variant property
- Use 'CHARACTERISTICS=...' property to signal audio codec name/type
- Skip same-bitrate variants which only differ in AUDIO/SUBTITLE GROUP-IDs

=== 7.0.256 (2026-04-24)

HLS:
- Properly detect master playlists (when [hls:] url prefix is not supplied)
- Improved seek - merge seeks in one, e.g. from TV remote long-press
- Probe first segment (or fMP4 map) to detect video properties (W/H/FPS/SAR)
- Do not fall-back to 1920x1080 and try to probe segment/map first (simple playlists)
VIDEO: Fixed SKIP/PLAY NEXT title to correctly start from 0 seconds (SW decoder)
UI Core: Added support for horizontal scroll of [list_x] glw/view elements
PAGE: Added support for [epg] node for videoparams (epg[{t/d/s/e}]) for live streams with EPG
BT: Changed PEER_ID / client version

=== 7.0.262 (2026-06-07)
Support M7 - https://paypal.me/webpluginsBG

UI: Redesigned video page, UI elements at the bottom of the page, added time remaining
