# Amount of import jobs to execute in parallel
concurrency: 1
+ # Set a custom video import timeout to not block import queue
+ timeout: '2 hours'
+
# Classic HTTP or all sites supported by youtube-dl https://rg3.github.io/youtube-dl/supportedsites.html
http:
# We recommend to use a HTTP proxy if you enable HTTP import to prevent private URL access from this server
# Amount of import jobs to execute in parallel
concurrency: 1
+ # Set a custom video import timeout to not block import queue
+ timeout: '2 hours'
+
# Classic HTTP or all sites supported by youtube-dl https://rg3.github.io/youtube-dl/supportedsites.html
http:
# We recommend to use a HTTP proxy if you enable HTTP import to prevent private URL access from this server
'transcoding.resolutions.0p', 'transcoding.resolutions.144p', 'transcoding.resolutions.240p', 'transcoding.resolutions.360p',
'transcoding.resolutions.480p', 'transcoding.resolutions.720p', 'transcoding.resolutions.1080p', 'transcoding.resolutions.1440p',
'transcoding.resolutions.2160p', 'video_studio.enabled',
- 'import.videos.http.enabled', 'import.videos.torrent.enabled', 'import.videos.concurrency', 'auto_blacklist.videos.of_users.enabled',
- 'trending.videos.interval_days',
+ 'import.videos.http.enabled', 'import.videos.torrent.enabled', 'import.videos.concurrency', 'import.videos.timeout',
+ 'auto_blacklist.videos.of_users.enabled', 'trending.videos.interval_days',
'client.videos.miniature.display_author_avatar',
'client.videos.miniature.prefer_author_display_name', 'client.menu.login.redirect_on_single_external_auth',
'defaults.publish.download_enabled', 'defaults.publish.comments_enabled', 'defaults.publish.privacy', 'defaults.publish.licence',
IMPORT: {
VIDEOS: {
get CONCURRENCY () { return config.get<number>('import.videos.concurrency') },
+ get TIMEOUT () { return parseDurationToMs(config.get<string>('import.videos.timeout')) },
HTTP: {
get ENABLED () { return config.get<boolean>('import.videos.http.enabled') },
'video-file-import': 1000 * 3600, // 1 hour
'video-transcoding': 1000 * 3600 * 48, // 2 days, transcoding could be long
'video-studio-edition': 1000 * 3600 * 10, // 10 hours
- 'video-import': 1000 * 3600 * 2, // 2 hours
+ 'video-import': CONFIG.IMPORT.VIDEOS.TIMEOUT,
'email': 60000 * 10, // 10 minutes
'actor-keys': 60000 * 20, // 20 minutes
'videos-views-stats': undefined, // Unlimited
private static instance: AbstractScheduler
- protected schedulerIntervalMs = SCHEDULER_INTERVALS_MS.YOUTUBE_DL_UPDATE
+ protected schedulerIntervalMs = SCHEDULER_INTERVALS_MS.GEO_IP_UPDATE
private constructor () {
super()