{
  "id": 18037232,
  "title": "I missed the days of channel surfing, so I recreated the experience with Jellyfin",
  "url": "https://urgent.news/2026/11/03/i-missed-the-days-of-channel-surfing-so-i-recreated-the-experience",
  "topic": "tech",
  "section": "Tech",
  "published": "2026-11-03T23:00:21.000Z",
  "source": {
    "name": "XDA Developers",
    "slug": "xda-developers",
    "url": "https://www.xda-developers.com/i-missed-days-of-channel-surfing-so-i-recreated-experience-with-jellyfin/"
  },
  "original_language": "en",
  "account": "Channel surfing was a cherished pastime for the author, a nostalgic ritual where they encountered new shows and discovered hidden gems. Nowadays, with the advent of on-demand streaming, the author no longer enjoys the surprise element of channel surfing. Jellyfin, a media server, allows the author to recreate this experience by creating custom channels. The tool Ersatz.tv enables the author to build channels from their Jellyfin library, reminiscent of traditional cable TV. With ErsatzTV, the author can create a channel of comfort shows, playing in random order, for tasks like cleaning or doing dishes. However, syncing content from Jellyfin to ErsatzTV requires an additional step, which the author almost missed initially. Once connected, the author can set up custom channels using schedules. This process involves selecting the shows to include and assigning the schedule to a specific channel. ErsatzTV offers various scheduling options, such as Shuffle or Season, Episode, providing flexibility in creating diverse channels. After setting up the channels, the author can enjoy a nostalgic, on-demand TV experience without the need for conscious decision-making. While ErsatzTV may not surprise the author with new shows, it offers an enjoyable alternative to traditional TV, allowing the author to rediscover old favorites and find interesting content they hadn't considered before.",
  "summary": "ErsatzTV recreates mindless channel hopping, and it's great.",
  "key_points": [],
  "editors_take": null,
  "illustration": null,
  "coverage": {
    "outlets": 1,
    "also_reported_by": []
  },
  "ai_generated": true,
  "disclaimer": "Summaries, key points and the editor’s take are written by software from other outlets’ reporting and may contain errors — always check the linked original."
}