Stream custom live channels using your own media
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
Jason Dove 8bf6fce0d0
downmix ac3 to stereo to match output layout
7 months ago
.config upgrade to dotnet 10 (#2667) 8 months ago
.github more fixes 7 months ago
ErsatzTV optimize searching for shows, seasons and movies (#2768) 7 months ago
ErsatzTV-macOS@8dbe1e22f2 more dependency updates (#2629) 9 months ago
ErsatzTV.Application fix issue reading xmltv fragments (#2771) 7 months ago
ErsatzTV.Core fix failing unit tests (#2772) 7 months ago
ErsatzTV.Core.Nullable more dotnet 10 updates (#2676) 8 months ago
ErsatzTV.Core.Tests add day_of_week to channel stream selector content_condition (#2766) 7 months ago
ErsatzTV.FFmpeg downmix ac3 to stereo to match output layout 7 months ago
ErsatzTV.FFmpeg.Tests alternate schedule and template consistency (#2757) 7 months ago
ErsatzTV.Infrastructure optimize searching for shows, seasons and movies (#2768) 7 months ago
ErsatzTV.Infrastructure.MySql optimize check for orphaned artwork (#2760) 7 months ago
ErsatzTV.Infrastructure.Sqlite optimize check for orphaned artwork (#2760) 7 months ago
ErsatzTV.Infrastructure.Tests optimize searching for shows, seasons and movies (#2768) 7 months ago
ErsatzTV.Scanner more jf episode scanning improvements (#2753) 7 months ago
ErsatzTV.Scanner.Tests fix nvenc playback when color metadata changes mid-stream (#2740) 7 months ago
ErsatzTV.Tests Add select all controls to media lists (#2738) 7 months ago
api add v2 ffmpeg profile page (#768) 4 years ago
artwork update dmg icon (#2630) 9 months ago
docker more dotnet 10 updates (#2676) 8 months ago
scripts fix interlaced check again (#2623) 9 months ago
.dockerignore Initial commit 6 years ago
.editorconfig fix editorconfig and run code cleanup (#2324) 12 months ago
.gitattributes Used a UUID in HDHomeRun config to allow multiple instances on a same network (#1810) 2 years ago
.gitignore ui updates (#2109) 1 year ago
.gitmodules update submodule [no ci] 3 years ago
CHANGELOG.md downmix ac3 to stereo to match output layout 7 months ago
Directory.Build.props fix duplicate smart collection names (#2720) 8 months ago
Directory.Build.targets improve build time by only running analyzers explicitly (#2710) 8 months ago
ErsatzTV.sln Add select all controls to media lists (#2738) 7 months ago
ErsatzTV.sln.DotSettings use hardware-accelerated tonemapping with vaapi (#2028) 1 year ago
LICENSE rework windows launcher build process (#2758) 7 months ago
README.md fix link [no ci] 10 months ago
global.json upgrade to dotnet 10 (#2667) 8 months ago
mkdocs.yml fix github repo links (#1378) 3 years ago

README.md

ErsatzTV

ErsatzTV lets you transform your media library into a personalized, live TV experience - complete with EPG, channel scheduling, and seamless streaming to all your devices. Rediscover your content, your way.

discord roadmap community

epg-example

How It Works

  1. Install ErsatzTV: Download and set up the server on your system.
  2. Add Your Media: Connect your media libraries and collections.
  3. Create Channels: Design and schedule your own live channels.
  4. Stream Anywhere: Watch on any device with IPTV and EPG support.

Key Features

  • Custom channels: Create and schedule your own live TV channels.
  • IPTV & EPG: Stream with IPTV and Electronic Program Guide support.
  • Hardware Transcoding: High-performance streaming with hardware acceleration (NVENC, QSV, VAAPI, AMF, VideoToolbox)
  • Media Server Integration: Connect Plex, Jellyfin, Emby and more.
  • Music & Subtitles: Mix music videos and enjoy subtitle support.
  • Open Source: Free, open, and community-driven project.

Documentation

Documentation is available at ersatztv.org.

License

This project is inspired by pseudotv-plex and the dizquetv fork and is released under the zlib license.