Skip to content

About

LocalViewer is a fast and full-featured Android SMB/WebDAV/CBZ photo/comic/ebook viewer and video player with folder and library support.

Topics

Resources

Stars

171 stars

Watchers

0 watching

Forks

Repository files navigation

English | 简体中文 | 正體中文 | 日本語

EhViewer
LocalViewer

Github Actions LICENSE Release Issues

Github Actions LICENSE

Description

A High performance Android SMB/WebDAV image viewer/comic reader with network gallery folder support.

Based on EhViewer
With Material Design 3
and Dynamic Color Support.

Similar to Perfect Viewer and Kuro Reader, with Hi-Res images support (no downscaling), clean UI and good performance.

Build with Grok 4.5.

Get it on GitHub

Features

  • Webtoon gallery reader.
  • Local and network libraries for photo/video/comic/ebook.
  • Easy to use, just add your folders and done.
  • Window manager and folder tab, clean navigation flow between multiple sources.
  • Instant scanning and classification for media files in local and network folders.
  • One for all folder listing mode (Videos/Photos/Documents all with their own tags and filters).
  • Fully working on Meta Quest 3.
  • Open or share files like a file manager.
  • Fine-tuned page loader, image prefetch with no OOM crashes.
  • Gallery folder covers and reading progress.
  • Native Android app (Kotlin + Jetpack Compose).
  • Material Design 3 Navigation bar.
  • Highly optimized network image loading, with high-quality rendering.
  • HDR, Wide Color Gamut and 10-bit color mode support.
  • Instant local archive reading with mmap.
  • ZIP/RAR/CBZ/CBR/CBT/PDF/EPUB support over network share.
  • PDF/EPUB/MOBI/FB2/TXT/AZW3/Markdown Ebook support with text formatting.
  • JXL/JXR/JPG/AVIF/HEIC HDR support.
  • 14-Bit RAW formats decoding with true HDR output.
  • RAW formats support dng/cr2/cr3/nef/nrw/arw/raf/orf/rw2/pef/srw/raw.
  • Compatible with Oppo/OnePlus ProXDR HEIC format.
  • Nearest, Bilinear, B-Spline, Catmull-Rom, Mitchell-Netravali, Lanczos3 image scalers using GPU shader.
  • Open offline html website archive in your browser with built-in HTTP server.
  • Network folder playback for MPV/MX Player/VLC with subtitles and external autio track.
  • Optimized Async TCP connection poll.
  • Fast smbj client with concurrent connections.
  • SMB signing JCE AESCMAC hardware acceleration.
  • Ktor OkHttp WebDAV client with HTTP/2 (default) and CIO HTTP/1.1 fallback.
  • High performance reader with network cache from EhViewer.
  • Reader double tap to open previous/next gallery.
  • Reader allow full size image decode.
  • Reader auto rotate image.
  • Reader comic dual pages mode.
  • E-Ink mode support (ported from venera-next).
  • EasyTier support (ported from moonlight-vplus).

Performance

  • The custom SMBJ and WebDAV clients achieve 1 Gbps network speeds over Wi-Fi 7, so after v1.11.x the image reader defaults to have image caching disabled.
  • Windows 11 JXR HDR screenshots can be displayed directly in fp16 bitmaps without tone mapping, or transcode to Ultra HDR Jpeg. The prefetch and decode ahead is set to 1 for JXR format to avoid OOM crashed.
  • The image loader was tweaked for preloading and decoding 20MB jpg files without any OOM crashes, and smaller files should load instantly.
  • Accurate HDR presentation of RAW and JXR images (compared with DaVinci Resolve).

To use WebDAV

openssl req -x509 -newkey rsa:4096 -keyout server.key -out server.crt -days 365 -nodes
.\rclone.exe serve webdav "D:\" --addr :8443 --cert .\server.crt --key .\server.key --read-only --user admin --pass password

To use SMB3 encryption:

Get-SmbShare | Select-Object Name, EncryptData
Set-SmbShare -Name "Media" -EncryptData $true
Set-SmbServerConfiguration -RejectUnencryptedAccess $false -Force

while ($true) {
    Clear-Host
    $config = Get-SmbServerConfiguration
    $sessions = Get-SmbSession

    Write-Host "--- SMB SERVER ENCRYPTION STATUS ---" -ForegroundColor Cyan
    Write-Host "Global Server Encryption Enabled : $($config.EncryptData)"
    Write-Host "Reject Unencrypted Access       : $($config.RejectUnencryptedAccess)"
    Write-Host "Active Sessions                 : $(($sessions).Count)"
    Write-Host "Timestamp                       : $(Get-Date -Format 'HH:mm:ss')"
    Write-Host "------------------------------------`n"

    if ($sessions) {
        $sessions | Select-Object ClientComputerName, ClientUserName, Dialect, NumOpens | Format-Table -AutoSize
    }

    Start-Sleep -Seconds 1
}

Download

Flavor Minimum Android Version Features
Default 12 Basic
Default 14 (arm64-v8a, x86-64) HDR, GPU Shaders, RAW
EasyTier 12 (arm64-v8a) Basic, EasyTier
EasyTier 14 (arm64-v8a) HDR, GPU Shaders, RAW, EasyTier
Get it on GitHub

Screenshot

LocalViewer screenshot main page LocalViewer screenshot gallery reader LocalViewer screenshot window manager

Thanks

Here is the libraries

App libraries

Native codecs

License

Copyright 2014-2019 Hippo Seven
Copyright 2020-2022 NekoInverter
Copyright 2022-2023 Tarsin Norbin
Copyright 2023-2024 Foolbar

LocalViewer is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

LocalViewer is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with EhViewer. If not, see <https://www.gnu.org/licenses/>.

About

LocalViewer is a fast and full-featured Android SMB/WebDAV/CBZ photo/comic/ebook viewer and video player with folder and library support.

Topics

Resources

Stars

171 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages