Repolode
Chinachu

Chinachu/Mirakurun

A TypeScript API server that manages Japanese digital TV tuner devices on Linux and Docker, exposing streams, EPG and IPTV playlists.

Stars
789
Forks
134
Open issues
10
Last commit
12 hours ago

What is it?

Mirakurun is a server that controls digital TV tuner hardware in Japan and exposes it over an HTTP API. It is designed to run as a middleware layer between tuner devices and client applications, handling tuner process management so that several consumers can share one tuning.

The server supports various tuner devices, including DVB and ISDB-T, ISDB-S and DVB-S2 hardware through character devices. It parses MPEG-2 TS streams and real-time EPG data, performs automatic channel scanning, and can broadcast multiple streams from a single tuning with stream priority control.

Beyond the RESTful API, which is documented with Swagger / OpenAPI 2.0, it includes a Web admin UI and an IPTV output that provides M3U8 playlists and XMLTV. Several client applications, such as Chinachu γ and EPGStation, use it as their tuner backend.

Key features

  • 01Exposes an HTTP RESTful API documented with Swagger / OpenAPI 2.0.
  • 02Manages tuner processes and allows multiple stream outputs from one tuning.
  • 03Supports stream priority between clients.
  • 04Parses MPEG-2 TS streams and real-time EPG data.
  • 05Performs automatic channel scanning.
  • 06Provides an IPTV server with M3U8 playlists and XMLTV.

Use cases

  • Running a home DVR or TV recording backend for Japanese digital broadcasts on a Linux server.
  • Feeding live TV and program guide data to IPTV clients on a local network.
  • Sharing one tuner card among several client applications.
  • Deploying the tuner server in a Docker container.

Quick start

  1. 1

    Pull the Docker image chinachu/mirakurun from Docker Hub

  2. 2

    Follow the Setup Guide (doc/Platforms.md) to configure your tuner devices

Things to know

  • Built for Japanese digital TV tuners, so it is of little use without compatible tuner hardware.
  • Setup targets Linux and Docker, and the README gives no Windows or macOS path.
  • Setup requires configuring tuner devices, and the detailed guide lives in a separate document.

In collections

Topics

#dvb#isdb#tv-tuner#epg#iptv#dvr#streaming#typescript#chinachu#dtv

FAQ

What is Mirakurun?
A TypeScript API server that manages Japanese digital TV tuner devices on Linux and Docker, exposing streams, EPG and IPTV playlists. Mirakurun is a server that controls digital TV tuner hardware in Japan and exposes it over an HTTP API. It is designed to run as a middleware layer between tuner devices and client applications, handling tuner process management so that several consumers can share one tuning.
Is Mirakurun free to use? What license does it have?
Mirakurun is open source under the Apache-2.0 license. Check the license terms before using it in commercial products.
Is Mirakurun still maintained?
Actively maintained. The last commit to Mirakurun was on Nov 6, 2026.
What can I use Mirakurun for?
Running a home DVR or TV recording backend for Japanese digital broadcasts on a Linux server. Feeding live TV and program guide data to IPTV clients on a local network. Sharing one tuner card among several client applications. Deploying the tuner server in a Docker container.
How do I install Mirakurun?
Pull the Docker image chinachu/mirakurun from Docker Hub Follow the Setup Guide (doc/Platforms.md) to configure your tuner devices
Where can I get Mirakurun?
The source code and installation instructions are on GitHub: https://github.com/Chinachu/Mirakurun

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects