Jellyfin is a free software media system that manages, organizes, and streams personal media libraries (movies, TV shows, music, photos, books, live TV). The backend server is written in C# using ASP.NET Core and provides a REST API, WebSocket support, and a plugin system. It handles media metadata aggregation from multiple external providers (TMDB, MusicBrainz, AudioDB, etc.), transcoding via FFmpeg, user authentication and authorization, and real-time session synchronization (SyncPlay). The architecture is modular with separate packages for API controllers, database persistence (EF Core with SQLite), media file naming/parsing, metadata providers, and background scheduled tasks. Key entry points include the main server startup (Jellyfin.Server), API controllers (Jellyfin.Api), and the plugin system (MediaBrowser.Providers.Plugins). External dependencies include FFmpeg for transcoding, SQLite for the database, and various third-party metadata APIs. The codebase demonstrates strong engineering practices with extensive unit and integration tests, a custom event-driven architecture, and a well-defined authorization handler pattern for fine-grained access control. While there are some legacy namespaces and a large number of database migrations indicating schema evolution, the overall structure is clean and maintainable.
This repository is an Android TV application (役čŚTV) that provides a comprehensive media center experience for streaming Video-on-Demand (VOD) and live television. It features a plugin-based content aggregation system using spiders written in Java, Python (via Chaquopy), and JavaScript (via QuickJS), allowing users to browse and play content from multiple external sources. The application supports multiple player engines (ExoPlayer and mpv), hardware/software decoding, subtitle and danmaku (bullet comment) overlays, DLNA casting (both sender and renderer), and a local HTTP server for remote control and file sharing. Architecturally, the project is a multi-module Gradle build with a shared core library (catvod) providing network utilities, cryptography, and data models. The main app module contains two UI tracks: 'leanback' for TV remote control navigation and 'mobile' for touch-based phone interaction, both sharing common logic under app/src/main. The system uses an event-driven architecture with EventBus, a Room-based SQLite database for persistence, and a ViewModel pattern for reactive UI updates. External content sources are integrated through a standardized Spider interface, with loaders for JAR, Python, and JavaScript plugins. Key features include a sophisticated playback controller with fallback policies, preloading, and history management; extensive audio/video effect pipelines (equalizer, loudness normalization, color adjustment); danmaku search and display; EPG (Electronic Program Guide) with timezone-aware parsing; and a comprehensive settings system covering player, decoding, subtitles, and network configuration. The project also includes a documentation website built with Next.js, providing developer guides for the spider API and local HTTP API.
This repository is a large-scale, community-curated collection of free IPTV (Internet Protocol Television) live stream URLs, organized as standardized M3U playlist files by country and platform (e.g., Pluto TV, Samsung TV Plus, local broadcasters). The project functions as a data pipeline: raw stream URLs are contributed via GitHub issues, validated, formatted, and aggregated into categorized playlists (by country, language, category, region, and source) which are deployed to GitHub Pages and a JSON API. Supporting TypeScript scripts handle playlist parsing, stream testing, metadata enrichment from an external database (iptv-org/database), and automated updates via GitHub Actions. While the primary deliverable is the curated dataset, the repository includes a well-structured automation framework that could be adapted for similar data aggregation tasks. The codebase is actively maintained with daily workflows, though the underlying stream URLs are inherently unstable and subject to geo-blocking or link rot.
This repository is a curated collection of live TV and radio channel playlists (M3U format) along with supporting web tools. It provides direct-access channel logos, an EPG (Electronic Program Guide) via Cloudflare Workers, a web-based HLS player, a streaming download proxy using ServiceWorker, and a TXT-to-M3U converter. The architecture is a static site hosted on GitHub Pages and Cloudflare CDN, with serverless functions for data aggregation. The primary data flows involve fetching EPG from external sources (112114.xyz, celetor/epg) and radio metadata from radio.cn, then serving them through Workers. The playlists aggregate hundreds of Chinese and international channels, but rely on third-party stream URLs that may become stale. The codebase is functional and well-documented, but contains some outdated vendored libraries (Vue.js 2.6.10) and external dependencies that introduce drift risk. It is not a software library but a practical toolset for IPTV enthusiasts.
This repository aggregates, validates, and serves Chinese TV live stream URLs (m3u8). It uses a Flask web server to expose a curated list of channels, and a set of Python scripts to discover and test stream sources. The main search script (Tv_search/search_Tv.py) leverages Selenium to scrape the tonkiang.us website for channel links, then downloads short video segments to measure speed and filter viable streams. Additional scripts process Henan TV API data and replace sections of the output with ffmpeg-tested sources. The project is a practical, community-driven IPTV source aggregator with a focus on speed and reliability, but the codebase is a collection of tightly coupled scripts with minimal abstraction, making it more of a functional tool than a reusable library.
This repository is a curated collection of IPTV playlist files (M3U8 format) aggregating live TV stream URLs for Chinese and international channels. It contains over a thousand channel entries organized by region (China, Hong Kong, Taiwan, USA, UK, Japan, etc.) and category (news, sports, movies, adult content). The most notable files are auto-updated playlists (e.g., cnTV_AutoUpdate.m3u8) that are regenerated periodically from external live sources. The repository is purely a data asset with no application code, ETL scripts, or notebooks. It is intended for use with media players like VLC or Kodi. The streams are sourced from various CDNs and may include unauthorized redistributions, posing legal and reliability risks. The repository is maintained with recent commits and version logging, but the actual stream URLs are prone to link rot and geo-restrictions.