Watch Folder
The Watch Folder module provides automated transcoding capabilities by monitoring remote directories for uploaded files awaiting transcoding. The VMS Watch Dog service checks configured folders on FTP, SFTP, or WebDAV at regular intervals (default: 1 minute) and automatically creates transcoding jobs based on predefined settings.
The Watch Folder menu provides three core functions: Configuration Setup, Add Watch Folder, and File Upload to Watch Folder.
Watch Folder Configuration
Add New Watch Folder
Click + Add Watch Folder to launch the Watch Folder setup window.
Setting up a new Watch Folder requires four essential configuration steps:
![Figure Needed] Screenshot of Watch Folder creation interface
Step 1: Video Source Configuration
Configure the source location for automated video monitoring.
![Figure Needed] Screenshot of video source configuration for Watch Folder
Enter a name for the new Watch Folder configuration.
FTP Watch Folder Configuration
- Click Pull from FTP
- Select an available FTP configuration from Settings FTP
- Choose Strict Mode or No Strict Mode
- Enter the file path for monitoring
WebDAV Watch Folder Configuration
- Click Pull from WebDAV
- Select an available WebDAV configuration or add new WebDAV configuration
- Choose Strict Mode or No Strict Mode
- All WebDAV configurations are established in Settings Data Transmission
SFTP Watch Folder Configuration
- Click Pull from SFTP
- Select an available SFTP configuration or add new SFTP configuration
- Choose Strict Mode or No Strict Mode
- All SFTP configurations are established in Settings Data Transmission
Note: Strict Mode is mandatory for FairPlay or Widevine via Verimatrix Multi-rights DRM.
AWS S3 Watch Folder Configuration
- Click Pull from AWS S3
- Select an available S3 configuration or add new S3 configuration
- Choose Strict Mode or No Strict Mode
- All S3 configurations are established in Settings Data Transmission
Note: Select Path Check to verify VOD input availability before proceeding to the next step. This option can be disabled if verification is not required.
Click Next to proceed to Step 2.
Step 2: Output Format and Protection Settings
Configure transcoding presets and output format specifications for automated processing.
Preset Selection
- Select at least one Transcoding Preset or choose Transmuxing Only
- All available transcoding presets can be created via VOD Transcoding > Transcoding Presets
![Figure Needed] Screenshot of preset selection for Watch Folder
Output Format Configuration
Select one or more output formats: HLS, MPEG-DASH, Smooth Streaming, or MP4.
HLS Configuration Options
- Multiplex Video and Audio: Combine video and audio into single .ts files
- 2 Pass Encoding: Enhanced quality through two-pass compression
- Protection Settings:
- None: No security protection
- Verimatrix DRM: Verimatrix DRM protection on HLS
- AES: AES encryption protection
- FairPlay via Verimatrix Multi-Rights: Integrated FairPlay DRM service
Note: Strict Mode is mandatory when FairPlay via Verimatrix MultiRights is selected. All required FairPlay and Verimatrix MultiRights information will be collected via CSV file.
MPEG-DASH Configuration Options
- 2 Pass Encoding: Enhanced quality through two-pass compression
- Protection Settings:
- None: No security protection
- Widevine over Verimatrix Multi-Rights: Integrated Widevine DRM service
- PlayReady over Verimatrix Multi-Rights: Integrated PlayReady DRM service
Note: Strict Mode is mandatory when Widevine or PlayReady over Verimatrix MultiRights is selected. All required information will be collected via CSV file.
Smooth Streaming Configuration Options
- 2 Pass Encoding: Enhanced quality through two-pass compression
MP4 Configuration Options
- 2 Pass Encoding: Enhanced quality through two-pass compression
![Figure Needed] Screenshot of output format configuration
Additional Features
Thumbnail Generation
Enable Thumbnails for Seeking with JPG format support.
![Figure Needed] Screenshot of thumbnail configuration
GPU Transcoding
Enable GPU Transcoding for enhanced performance using dedicated Nvidia GPU resources.
![Figure Needed] Screenshot of GPU transcoding configuration
Click Next to proceed to Step 3.
Step 3: Output Distribution Configuration
Configure distribution methods for completed transcoding jobs.
Completed HLS, MPEG-DASH, Smooth Streaming, or MP4 output can be distributed through CDN, FTP, SFTP, or AWS S3.
CDN Distribution
- Select Upload to SwiftServe CDN or add new SwiftServe CDN host
- Enter Upload Path for content distribution
![Figure Needed] Screenshot of CDN distribution configuration
FTP Distribution
- Select Upload to FTP for FTP-based distribution
- Enter Upload Path for file placement
![Figure Needed] Screenshot of FTP distribution configuration
SFTP Distribution
- Select Upload to SFTP for secure FTP distribution
- Enter Upload Path for secure file transfer
![Figure Needed] Screenshot of SFTP distribution configuration
AWS S3 Distribution
- Enter S3 path for content upload
Click Next to proceed to Step 4.
Step 4: Notification Configuration
Configure job completion notification settings for automated processing.
Notification Function: Upon job completion, VMS sends comprehensive information (status, playback URLs, etc.) to pre-configured notification hosts. The notification host serves as an HTTP API endpoint in the user's Content Management System.
![Figure Needed] Screenshot of notification configuration
To add new notification settings, enter Name and Host URL.
![Figure Needed] Screenshot of notification setup
Click Finish to add the Watch Folder configuration to the monitoring system.
File Upload to Watch Folder
Strict Mode File Upload
VMS periodically checks Watch Folders for transcoding. Files must be manually uploaded to the watch folder via FTP, SFTP, or other configured methods.
Upload Process
-
Upload VOD File: Upload the main video file and any additional audio/subtitle files to the FTP path configured in the Watch Folder settings
-
Example Path:
ftp://admin:******@ftp.VMS.com.sg:/pub/WatchFolder/51
-
CSV File Requirement: In Strict Mode, a CSV file with the same base name as the video file must be created and uploaded after the video file upload
-
Example Files:
test.mp4
andtest.mp4.csv
MD5 Checksum Generation
Generate MD5 checksums for file integrity verification:
Windows: Use md5sums tool as described in job creation process
Linux: Use /usr/bin/md5sum filename
macOS: Use /sbin/md5 filename
CSV File Format
Enter or copy/paste [byte_size],[md5sum]
into the CSV file.
Example: 39004857820efec216d85dd696974d81bf98d13
Audio and Subtitle Integration
To add external audio or subtitles, include the following format in the CSV file:
[byte_size],[md5sum]
audio [language]:[audio_file_path]:[audio_file_size]
subtitle [language]:[subtitle_file_path]:[subtitle_file_size]
Example:
audio ENG:/demo/sample_eng.mp3:3647456,CHS:/demo/sample_chs.mp3:36645468
subtitle eng:/demo/sample_eng.srt:23478,chs:/demo/sample_chs.srt:24565
DRM Integration
For FairPlay or Widevine via Verimatrix Multi-Rights DRM, add the following format:
audio [language]:[audio_file_path]:[audio_file_size]
subtitle [language]:[subtitle_file_path]:[subtitle_file_size]
drm [siteId],[contentId]
Complete Example:
# Directory structure
sample.mp4 (83718758 bytes)
sample.mp4.csv
sample_eng.mp3 (6678507 bytes)
sample_chi.mp3 (6938910 bytes)
sample_eng.srt (3786 bytes)
sample_chi.srt (4516 bytes)
# MD5 generation
$ md5sum sample.mp4
66ac44c0b91ec828d92462a9bf4f58e4 sample.mp4
# CSV file content
$ cat sample.mp4.csv
83718758,66ac44c0b91ec828d92462a9bf4f58e4
audio eng:sample_eng.mp3:6678507,chi:sample_chi.mp3:6938910
subtitle eng:sample_eng.srt:3786,chi:sample_chi.srt:4516
drm 2818,sample_content
No Strict Mode File Upload
No Strict Mode differs from Strict Mode in three key aspects:
- CSV File Not Required: No CSV file creation necessary
- Same Directory Requirement: VOD, audio, and subtitle files must be in the same directory
- Naming Convention: Follow specific naming rules for audio and subtitle files
Naming Conventions
Audio File Naming: [VOD_base_name]_[language].[mp3 or aac]
Subtitle File Naming: [VOD_base_name]_[language].srt
Note: [language]
refers to ISO 639-2 language code (3-letter lowercase code).
Automatic Job Creation
A transcoding job will be automatically created within 1 minute of file upload. The job will be processed if no errors are detected; otherwise, the job will fail with error details displayed in the portal.