iptv-api

Configuration Item Description Default Value
open_update Enable updates, used to control whether to update interfaces. If disabled, all working modes (getting interfaces and speed tests) stop. True
open_empty_category Enable empty category, channels without results will automatically be classified to the bottom. False
open_update_time Enable display of update time. True
open_url_info Enable to display interface description information, used to control whether to display interface source, resolution, protocol type and other information (content after $). The player uses this information to describe the interface. If some players (such as PotPlayer) do not support parsing and cannot play, you can turn it off. False
open_epg Enable EPG function, support channel display preview content. True
open_m3u_result Enable converting and generating m3u file type result links, supporting the display of channel icons. True
urls_limit Number of interfaces per channel. 5
update_time_position Update time display position, takes effect only when open_update_time is enabled. Optional values: top, bottom. top: display at the top of the result, bottom: display at the bottom. top
language Application language setting; Optional values: zh_CN, en zh_CN
update_mode Scheduled execution update mode, does not apply to workflow; Optional values: interval, time; interval: execute by interval time, time: execute at specified time point interval
update_interval Scheduled execution update interval, only takes effect when update_mode = interval, unit hours, set to 0 or empty to run only once 12
update_times Scheduled execution update time point, only takes effect when update_mode = time, format HH:MM, supports multiple time points separated by commas  
update_startup Execute update at startup, used to control whether to execute an update immediately after the program starts True
time_zone Time zone, can be used to control the time zone for scheduled execution or display update time; Optional values: Asia/Shanghai or other time zone codes Asia/Shanghai
source_file Template file path. config/demo.txt
final_file Generated result file path. output/result.txt
open_realtime_write Enable real-time writing of result files, you can access and use the updated results during the speed measurement process True
open_service Enable page service, used to control whether to start the result page service. If using platforms such as Qinglong with scheduled tasks, and you need the program to exit after update is finished, you can disable this. True
app_port Page service port, used to control the port number of the page service. 5180
public_scheme Public network protocol. Optional values: http, https. http
public_domain Public network Host address, used to generate access URLs in the result; uses local machine IP by default. 127.0.0.1
cdn_url CDN proxy acceleration address, used for accelerated access to subscription sources, channel icons and other resources.  
http_proxy HTTP proxy address, used for network requests such as obtaining subscription sources  
open_local Enable local source function, will use the data in the template file and the local source file (local.txt). True
open_subscribe Enable subscription source function. True
open_history Enable using historical update results (including interfaces from template and result files), merged into this update. True
open_headers Enable using request header authentication information contained in M3U, used for speed test and other operations. Note: only a few players support playing such interfaces with authentication info, so it is disabled by default. False
open_speed_test Enable speed test functionality to obtain response time, rate, and resolution. True
open_filter_resolution Enable resolution filtering. Interfaces below the minimum resolution (min_resolution) will be filtered. GUI users need to manually install FFmpeg; the program will call FFmpeg to obtain interface resolution. Recommended to enable: although it increases speed test time, it more effectively distinguishes playable interfaces. True
open_filter_speed Enable speed filtering. Interfaces below the minimum speed (min_speed) will be filtered. True
open_full_speed_test Enable full speed test, all interfaces under the channel (except for the whitelist) are speed tested, if turned off, when the number of valid speed test results reaches urls_limit, the remaining interfaces will stop speed testing False
open_supply Enable compensation mechanism mode. When the number of channel interfaces is insufficient, interfaces that do not meet the conditions (such as lower than minimum speed) but may still be available will be added to the result to avoid empty results. False
min_resolution Minimum interface resolution, takes effect only when open_filter_resolution is enabled. 1280x720
max_resolution Maximum interface resolution, takes effect only when open_filter_resolution is enabled. 3840x2160
min_speed Minimum interface speed (unit: M/s), takes effect only when open_filter_speed is enabled. 0.5
resolution_speed_map Resolution and rate mapping relationship, used to control the minimum rate requirements for interfaces of different resolutions, the format is resolution:speed, multiple mapping relationships are separated by commas 1280x720:0.2,1920x1080:0.5,3840x2160:1.0
speed_test_limit Number of interfaces to test at the same time. Controls concurrency in the speed test stage. Larger values shorten speed test time but increase load and may reduce accuracy; smaller values increase time but reduce load and improve accuracy. 5
speed_test_timeout Single interface speed test timeout duration in seconds. Larger values increase speed test time and number of interfaces obtained (but with lower average quality); smaller values reduce time and favor low-latency, higher-quality interfaces. 10
speed_test_filter_host Use Host address to de-duplicate speed tests. Channels with the same Host share speed test data. Enabling this can greatly reduce speed test time but may cause inaccurate results. False
request_timeout Query request timeout duration in seconds, used to control timeout and retry duration when querying interface text links. Adjusting this value can optimize update time. 10
ipv6_support Force treating the current network as IPv6-supported and skip detection. False
ipv_type Protocol type of interfaces in the generated result. Optional values: ipv4, ipv6, all. all
ipv_type_prefer Interface protocol type preference. Preferred type will be ordered earlier in the result. Optional values: ipv4, ipv6, auto. auto
location Interface location filter. Result will only contain interfaces whose location matches the given keywords (comma-separated). Leave empty to not restrict by location. Recommended to set near the end user to improve playback experience.  
isp Interface operator filter. Result will only contain interfaces whose operator matches the given keywords (comma-separated). Leave empty to not restrict by operator.  
origin_type_prefer Preferred interface source ordering. The result is sorted in this order (comma-separated). Example: local,subscribe. Leave empty to not specify and sort by interface speed instead.  
local_num Preferred number of local source interfaces in the result. 10
subscribe_num Preferred number of subscription source interfaces in the result. 10
logo_url Channel logo library URL.  
logo_type Channel logo file type. png
open_rtmp Enable RTMP push function. Requires FFmpeg installed, uses local bandwidth to improve playback experience. True
nginx_http_port Nginx HTTP service port, used for the HTTP service of RTMP push forwarding. 8080
nginx_rtmp_port Nginx RTMP service port, used for the RTMP service of RTMP push forwarding. 1935
rtmp_idle_timeout RTMP channel idle stop-streaming timeout in seconds. When no one watches for longer than this duration, streaming is stopped, helping reduce server resource usage. 300
rtmp_max_streams Maximum number of concurrent RTMP push streams. Controls how many channels can be pushed at the same time. Larger values increase server load; tune to optimize resource usage. 10