edcb-bridge
A bridge server that lets KonomiTV's recording reservation features for the EDCB backend work with EPGStation or mirakc.
KonomiTV configuration (config.yaml)
general:
backend: EDCB
# Live viewing is received directly from mirakc (required)
always_receive_tv_from_mirakurun: true
edcb_url: tcp://127.0.0.1:4510/
mirakurun_url: http://127.0.0.1:40772/
Restart KonomiTV after making changes (sudo pm2 restart KonomiTV).
Running (docker compose)
With setup_mirakc_and_epgs_on_nanopi.sh,
add the following under services: in ~/_tv/compose.yaml.
edcb-bridge:
build: ./edcb-bridge
container_name: edcb-bridge
restart: unless-stopped
ports:
- 4510:4510
environment:
TZ: Asia/Tokyo
MIRAKC_URL: http://mirakc:40772
RECORDER: epgstation # epgstation | mirakc
EPGSTATION_URL: http://epgstation:8888
RECORDED_DIR: /mnt/hdd1/recorded # recording folder as seen from KonomiTV
depends_on:
- mirakc
- epgstation
docker compose up -d --build edcb-bridge
docker compose logs -f edcb-bridge
Environment variables
| Variable | Default | Description |
|---|---|---|
LISTEN_HOST / LISTEN_PORT |
0.0.0.0 / 4510 |
CtrlCmd listen address |
MIRAKC_URL |
http://127.0.0.1:40772 |
Source of service and program information |
RECORDER |
epgstation |
Recording backend (epgstation / mirakc) |
EPGSTATION_URL |
http://127.0.0.1:8888 |
EPGStation |
RECORDED_DIR |
/mnt/hdd1/recorded |
Recording folder as seen from KonomiTV. Used to convert between EDCB's destination folder (absolute path) and EPGStation's directory (relative path) |
MIRAKC_CONTENT_PATH_TEMPLATE |
{start:%Y%m%d%H%M}_{sid}_{title}.m2ts |
File name used when RECORDER=mirakc ({start} {onid} {sid} {eid} {title}) |
START_MARGIN / END_MARGIN |
0 |
Margins shown on KonomiTV's recording settings screen (display only) |
EPG_CACHE_TTL |
60 |
Program information cache lifetime in seconds |
LOG_LEVEL |
INFO |
DEBUG logs every command |
Using mirakc as the recording backend
Add the recording settings to mirakc's config.yml and mount the recording folder.
recording:
basedir: /var/lib/mirakc/recording
mirakc:
volumes:
- /mnt/hdd1/recorded:/var/lib/mirakc/recording
With RECORDED_DIR=/mnt/hdd1/recorded in this setup, the destination subfolder specified in KonomiTV is
reflected in contentPath.
Limitations
- EPGStation
- Manual reservations cannot be disabled (EPGStation has no disabled state; they can still be deleted)
- Deleting a reservation created by a rule leaves it behind as a "skipped (disabled)" reservation, due to how EPGStation works
- EDCB-specific settings such as priority, margins, program tracking, exact-time recording, and post-recording actions are ignored
- Automatic reservations do not save "fuzzy search", "genre/time exclusion", "paid programs only", or the memo field
- Day-of-week and time ranges are rounded to whole hours
- Only subfolders under
RECORDED_DIRcan be used as the destination. File name templates are passed through as-is in EPGStation'srecordedFormatsyntax (e.g.%TITLE%)
- mirakc: Only program-based reservations are supported (time-based reservations, automatic reservations, and changing settings are not supported; disabling is treated as deletion)
- mirakc does not return the TSID, so it is derived from the NID for terrestrial channels and from the channel
name (
BS15_1/CS4) for BS/CS - Past programs (
EnumPgArc), recorded information (EnumRecInfo), and station logos return empty results (KonomiTV falls back to its bundled logos)
License
Metadata
Release files for edcb-bridge 0.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| edcb_bridge-0.0.0.tar.gz | 30.9 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| edcb_bridge-0.0.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 69.0 kB
Release files / edcb_bridge-0.0.0.tar.gz
| Download URL | edcb_bridge-0.0.0.tar.gz |
|---|---|
| Size | 30.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
196d6720d8697ef91be8b98d9842c097b5c20d53def5048dd7a5a7828ca87b18
|
|
BLAKE2b-256 checksum How to use checksums |
383fac6796548956be7a15c372b504f767f5139d1055c4f7be899be2733985ed
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.23 {"installer":{"name":"uv","version":"0.12.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / edcb_bridge-0.0.0-py3-none-any.whl
| Download URL | edcb_bridge-0.0.0-py3-none-any.whl |
|---|---|
| Size | 38.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
8a31982390f6344be4fa4d39e35b04d372351ef6e1a7e9367a1f32107908fd9e
|
|
BLAKE2b-256 checksum How to use checksums |
2a9da508cd55b80f50e9370580b7d179510d2c9d5df6208b5d197b634a9c49dd
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.23 {"installer":{"name":"uv","version":"0.12.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|