Beam is an open-source local media player for Samsung Tizen TVs. It browses and plays video, audio, images, and sidecar subtitles from USB storage and compatible media servers on the same local network.
The project has two parts:
- Beam TV: a remote-friendly Tizen web application.
- Beam Companion Server: an optional Electron application that shares folders from a Mac or Windows computer over the local network.
Beam has no accounts, cloud service, advertising, analytics, or DRM.
Try the browser preview · Download the latest release
- USB folder browsing with video, audio, image, and subtitle detection
- Local-network media browsing through Beam Companion Server or compatible DLNA/UPnP servers
- Direct local-file and HTTP media playback
- Sidecar SRT-to-WebVTT conversion and native WebVTT support
- Resume history stored locally on the TV
- Samsung remote and media-key navigation
- HTML picture-in-picture overlay
- Read-only access to selected media
Beam v1.0.0 is usable, but there is meaningful work left for contributors. Please comment on an issue before starting so two people do not solve the same problem independently.
| Job | Area | Difficulty | Issue |
|---|---|---|---|
| Run companion-server tests in GitHub Actions | Tooling | Starter | #2 |
| Test HTTP byte-range media streaming | Companion server | Starter | #3 |
| Correct ASS/SSA subtitle handling | TV app | Intermediate | #4 |
| Design IPv6-capable local discovery | TV + companion | Advanced | #5 |
| Complete an accessibility and navigation audit | TV app | Intermediate | #6 |
| Add localization infrastructure and Hindi | TV app | Intermediate | #7 |
More work is tracked under
help wanted
and
good first issue.
.
├── config.xml Tizen application manifest
├── index.html Public product landing page
├── tv.html Tizen TV application entry point
├── css/ TV user interface styles
├── icons/ TV application icons
├── js/ TV application source
└── beam-server/
├── main/ Electron process and local media server
├── renderer/ Companion desktop interface
└── icons/ Desktop application icons
- Samsung Tizen Studio
- Samsung TV certificate profile for installing on physical hardware
- A Samsung Tizen TV with developer mode enabled, or the Tizen TV emulator
To enable developer mode on the TV: open the Apps screen, select any app that
isn't installed, then enter 12345 on the remote and confirm. On newer
remotes with a dedicated 123 button, press that first, then enter
1-2-3-4-5. Toggle Developer Mode on, enter your PC's IP address when
prompted, and restart the TV.
The application manifest currently targets Tizen 6.0 or newer.
As an alternative to Tizen Studio, apps2samsung.com is a third-party, open-source (MIT) tool that sideloads apps onto Samsung TVs using the same official developer/certificate mechanism, without the full Tizen Studio install. It is not affiliated with Samsung or this project.
- Node.js 20 or newer
- npm
- macOS or Windows
The browser preview uses mock Tizen APIs and sample data:
python3 -m http.server 8790Open http://localhost:8790/tv.html.
The browser preview is useful for interface work, but USB, remote-control, and real Tizen platform behavior must be tested on a TV or emulator.
Import the repository as an existing Tizen web project, select a valid Samsung TV certificate profile, and build the signed package in Tizen Studio.
From a configured Tizen CLI environment, the equivalent flow is:
tizen build-web
tizen package -t wgt -s YOUR_CERTIFICATE_PROFILE -- .Do not commit generated .wgt files, build output, or signing artifacts.
cd beam-server
npm ci
npm startIn the desktop application:
- Add one or more folders to share.
- Start the server.
- Put the computer and TV on the same trusted local network.
- Open Network Media Servers in Beam.
- Discover the server, or add its description URL manually.
The companion server exposes shared media to devices on the local network. Only share folders you are comfortable making accessible on that network.
cd beam-server
npm ci
npm run dist:macFor Windows, run npm run dist:win from a supported Windows build environment.
Beam recognizes common containers and extensions, including MP4, MKV, AVI, MOV, WebM, MPEG-TS, WMV, MP3, FLAC, WAV, AAC, OGG, M4A, WMA, JPEG, PNG, GIF, WebP, BMP, SRT, and WebVTT.
Actual codec support depends on the Samsung TV model, firmware, and its native HTML media decoder. Recognition by Beam does not guarantee that every TV can decode every file.
Beam processes USB, playback, and local-network information on the TV. Saved servers and resume history remain in local app storage. The project does not include analytics, advertising SDKs, or a developer-operated cloud backend.
See the English privacy policy or the Korean privacy policy.
Beam Companion Server is designed for trusted home or office networks. It does not provide authentication or Internet-facing hardening. Do not expose its port directly to the public Internet.
Please report security issues according to SECURITY.md.
Bug reports, design proposals, translations, testing, and pull requests are welcome. Beam is opted into Hacktoberfest and accepts meaningful contributions throughout the year. See CONTRIBUTING.md and the Code of Conduct before submitting a change.
Beam is available under the MIT License.