Releases: Zcc09/SyncPlayer
Releases · Zcc09/SyncPlayer
Release list
SyncPlayer 1.6.13 - native Windows installer
Added
- The Windows installer is built with NSIS, so it is a native installer instead of a
packed application: the same components and the same wizard, about 96 MB instead of
157 MB for an identical payload, because the archive is a single solid stream rather
than per-file compression around a runtime. - NSIS switches alongside the existing ones:
/Sfor a silent install and/D=path
for the destination, which has to come last. Everything the Setup accepted before
(--silent,--install-dir,--no-mpv,--no-ytdlp,--no-ffmpeg,
--no-updater,--no-shortcuts,--no-desktop-shortcut,
--no-startmenu-shortcut,--startmenu-folder,--no-launch,--launch, and the
SYNCPLAYER_*environment variables) still works unchanged.
Removed
- The bundled Python runtime that the installer used to carry in order to bootstrap
itself. The installer no longer ships an interpreter.
SyncPlayer 1.6.12 - a crop window that shows a picture
Fixed
- A captured frame that is technically not blank but visually black (brightest content
below about 60 of 255) reached the crop window and looked like an empty box. Frames are
now judged on their brightest content rather than their average, and such frames are
lifted into a viewable range. A normal frame is left untouched. - The crop window no longer depends on a single configure event to draw its image: it also
draws when the window is mapped and shortly after opening. - The crop window reports what it is showing - frame size, average and brightest
luminance, items drawn, and the route that produced the frame - so an empty window can
be told apart from a failed capture.
SyncPlayer 1.6.11 - offset indicator, self-sufficient crop window
Added
- The alignment offset is shown in the status readout, so it can be read at a glance and
typed back in next session. - Capture frame and Grab screen buttons inside the visual crop window, so a frame can be
fetched from within it. Grab screen shows the video fullscreen, reads the frame off the
screen and restores the window afterwards. - The crop window opens with a placeholder instead of refusing when the first capture
fails, which keeps those two buttons reachable, and it reports which route produced the
frame on screen. - HDR and Dolby Vision handling: the transfer is detected and the capture is tone-mapped
for it, with the software route first; a frame that still comes back essentially black
is lifted so the picture can be seen.
Fixed
- The crop window could not display a frame fetched by its own buttons: the reload scaled
an attribute that does not exist.
SyncPlayer 1.6.10 - offset field fix, tidier status line
Added
- Settings option to hide the live Movie / Reaction / delta readout. Messages still
appear while it is hidden.
Removed
- The Align button: the Offset field sets an alignment directly, and typing 0 clears it.
- The shortcut hint row at the bottom of the window; the same hints are in Help.
Fixed
- Typing an offset and pressing Set did nothing. The field is synced from the live offset
many times a second, and it only paused that while the field itself had focus - clicking
the button moves focus to the button, so the typed value was replaced by the current one
just before it was read. - A captured frame is normalised to 8-bit RGB before the crop window opens, because a
16-bit PNG (what a 10-bit source produces) can render as an empty canvas in some Tk
builds.
SyncPlayer 1.6.9 - type an alignment offset
Added
- Offset field in the Master row: type a known delay between the two videos and press
Enter to apply it. Accepts seconds (12.5), a timecode (1:05), a comma decimal (0.5) and
negatives (-3.25); positive means the reaction is ahead of the movie. It moves the
reaction immediately and is remembered for that movie/reaction pair.
Fixed
- A leading minus was dropped when parsing the offset, so negative offsets behaved like
positive ones.
SyncPlayer 1.6.8 - visual crop captures a real frame
Fixed
- Visual crop accepted a blank frame as a success. A screenshot of a surface that has not
painted yet is a valid black PNG, so the crop window opened on nothing. Every capture
route is now verified for actual picture content, and an empty result is escalated past:
mpv's own screenshots (video, software, window), then ffmpeg reading the file directly,
then a window render that works while the player is covered, then hardware decoding
disabled for one attempt, and finally showing the window (fullscreen if needed) and
reading the frame off the screen. Anything the last route changes is restored. - A minimised or hidden player had no way back: the window lookup only matched visible
windows, so the last-resort route reported no window exactly when it was needed. - Two capture fallbacks called a helper that does not exist and silently did nothing.
- The wait for a first decodable frame is adaptive, so a stream that is still buffering
gets a chance, and the failure message names the routes that were tried.
SyncPlayer 1.6.7 - scrubbing that walks the timeline
Added
- Precise seek-bar dragging: the pointer's sideways movement is converted to time at a
fixed gain instead of jumping to the pointer. 0.5 s per pixel while on the bar, 0.02 s
per pixel once the pointer is lifted 24 px above it, which is finer than a single frame
at 30 fps. Playback holds while dragging and resumes on release, and the release lands
frame-exactly. A click without movement still seeks to the clicked position. - A setting to choose between Precise (default) and Direct (the pointer-following
behaviour). - The Download window keeps the connection count used.
Fixed
- The scrub drag never finished: its release handler was replaced by another binding on
the same event, which left the drag flag set, stopped playback from resuming and made
Direct mode appear inert.
SyncPlayer 1.6.6 - quality default, threaded downloads, finer seeking
Added
- YouTube playback quality setting: Best available, 2160p, 1440p, 1080p (default), 720p,
480p or 360p. A change applies to the next video loaded, without a restart. - Download connections: 1-16 (default 8) parallel fetches, using yt-dlp's concurrent
fragments plus chunked downloads, the way a download manager works. Adjustable per
download and remembered. - Settings dialog in the header for playback quality, download connections and the seek
distance. - The seek buttons step by the Jump distance instead of a fixed 10 seconds, and show the
distance on the button.
Removed
- The URL buttons beside the source fields: a link can be pasted or dropped straight into
the field.
SyncPlayer 1.6.5 - ffmpeg included, full-quality downloads
Added
- ffmpeg is bundled with the Windows installer, so downloads reach full quality: yt-dlp
needs it to merge the separate video and audio streams that anything above roughly
720p is published as. Unchecking it (or--no-ffmpeg) omits it, which caps downloads
at single-file quality. - The updater installs ffmpeg for installations that do not have it.
SyncPlayer 1.6.4 - update from inside the app
Added
- In-app updater: the header shows the version and doubles as a manual check, an Update
button appears when a newer release exists, and the dialog shows the release notes,
what will be installed, download progress and a restart button. Checks run in the
background at most once every six hours and stay silent when offline.
Fixed
- A failure in a secondary component no longer fails the whole update after the app
itself has been installed; each component is isolated and the results are reported. - A running executable that cannot be replaced is staged and installed on the next
start instead of aborting the update. - Short version tags (for example
v2.0) are compared correctly, so such a release is
offered.