Created AUTHOR_MODULE.md covering all features in detail: Chapter Detection: - How scene detection works (FFmpeg filter threshold) - Sensitivity slider guide (0.1-0.9 range explained) - Visual preview feature with thumbnails - Use cases for different video types - Technical implementation details DVD Timestamp Correction: - SCR backwards error explanation - Automatic remux solution (-fflags +genpts) - Why it's needed and how it works - Performance impact (negligible) Authoring Log Viewer: - Tail behavior (last 100 lines) - Performance optimizations explained - Copy Log and View Full Log buttons - Memory usage improvements (O(1) vs O(n)) Complete Workflows: - Single movie to DVD - TV series multi-title disc - Concert with manual chapters Troubleshooting: - SCR errors - Too many/few chapters detected - UI lag issues (now fixed) - ISO burning problems - Playback stuttering Technical Details: - Full encoding pipeline with commands - Chapter XML format - Temporary file locations - Dependencies and installation - File size estimates for NTSC/PAL Also updated DVD_USER_GUIDE.md: - Removed branding footer - Added reference to AUTHOR_MODULE.md for technical details
12 KiB
Author Module - Complete Guide
Overview
The Author module creates DVD/Blu-ray compliant disc structures from video files. It handles encoding, chapter management, and ISO generation with automatic timestamp correction for maximum compatibility.
Quick Start
Single File to ISO
- Select Files Tab → Click "Select File" → Choose your video
- Settings Tab → Configure output settings:
- Output Type: DVD or Blu-ray
- Region: NTSC (29.97fps) or PAL (25fps)
- Aspect Ratio: 4:3 or 16:9
- Disc Size: DVD5 (4.7GB) or DVD9 (8.5GB)
- Generate Tab → Click "Generate DVD/ISO"
- Output will be VIDEO_TS folder or .iso file
Multiple Files to Single Disc
- Clips Tab → Click "Add Video" → Add multiple files
- Enable "Treat as Chapters" to merge into single title
- Settings Tab → Configure as above
- Generate Tab → Create multi-title or chaptered disc
Features
Automatic Chapter Detection
Detects scene changes and creates chapter markers automatically.
How It Works:
- Load video in Files or Clips tab
- Chapters Tab → Adjust "Detection Sensitivity" slider
- Lower (0.1-0.2): Detects subtle changes, many chapters
- Medium (0.3-0.4): Balanced, good for most videos
- Higher (0.5-0.7): Only major scene changes
- Click "Detect Scenes"
- Visual Preview:
- Thumbnail grid shows first 24 detected chapters
- Each thumbnail displays frame at chapter timestamp
- Verify detection quality visually
- Click "Accept Chapters" to use, or "Reject" to try different sensitivity
Technical Details:
- Uses FFmpeg scene detection filter:
select='gt(scene,threshold)' - Threshold 0.30 = scene score must exceed 30% for detection
- Thumbnails extracted at 320x180, stored in temp directory
- Preview limited to 24 chapters for UI performance
Use Cases:
- Movies: Detect major scene changes (use 0.5-0.6)
- Documentaries: Detect segment breaks (use 0.4-0.5)
- TV Shows: Detect act breaks (use 0.3-0.4)
- Music Videos: Detect shot changes (use 0.2-0.3)
Chapter Management
Load Embedded Chapters:
- Click "Load Embedded" to extract chapters from MKV/MP4 files
- Preserves original chapter titles and timestamps
Manual Chapter Addition:
- Click "+ Add Chapter" to insert custom chapter point
- Set timestamp and title manually
Export Chapters:
- Click "Export Chapters" to save chapter list
- Formats: XML, OGM, or text file
DVD Timestamp Correction
Problem Solved: DVD authoring tools (dvdauthor) require perfectly sequential MPEG-2 timestamps. FFmpeg direct encoding sometimes produces backwards-moving SCR (System Clock Reference) values, causing errors:
ERR: SCR moves backwards at inoffset 0, remultiplex input
Solution: VideoTools automatically remultiplexes encoded MPEG files:
ffmpeg -fflags +genpts -i encoded.mpg -c copy -f dvd output.mpg
-fflags +genpts: Regenerate presentation timestamps-c copy: No re-encoding (fast, no quality loss)-f dvd: Ensure DVD format compliance
Result:
- 100% dvdauthor compatibility
- Fixes SCR errors on AVI, MKV, MP4 sources
- Adds ~5 seconds per title (negligible)
UI Features
Authoring Log Viewer
Real-time log display during DVD generation.
Performance Optimizations:
- Displays last 100 lines only (tail behavior)
- Prevents memory bloat on long encodes
- Full log written to file for reference
Controls:
- Copy Log: Copies full log from file to clipboard
- View Full Log: Opens complete log in dedicated viewer
- Shows "Authoring Log (last 100 lines)" label
Technical:
- Circular buffer maintains fixed 100-line limit
- O(1) memory usage vs O(n) unbounded growth
- Rebuilds display text from buffer on each append
- Log file path tracked for full viewing
Progress Tracking
- Real-time progress bar (0-100%)
- Status messages: "Encoding 1/3", "Authoring DVD structure", etc.
- Current operation displayed above progress bar
Output Formats
VIDEO_TS Folder Structure
output/
VIDEO_TS/
VIDEO_TS.IFO # DVD table of contents
VIDEO_TS.VOB # Menu video (if applicable)
VTS_01_0.IFO # Title 1 information
VTS_01_1.VOB # Title 1 video data
VTS_02_0.IFO # Title 2 information (if multiple)
VTS_02_1.VOB # Title 2 video data
AUDIO_TS/ # Empty (required by DVD spec)
ISO Image
- Single .iso file containing complete VIDEO_TS structure
- Burnable to DVD-R/DVD-RW
- Mountable in virtual drives
- Playable in VLC, Kodi, standalone players
Configuration Options
Output Type
- DVD: DVD-Video format (MPEG-2, AC-3 audio)
- Blu-ray: Not yet implemented
Region
- NTSC: 29.97fps, 720x480, North America/Japan
- PAL: 25fps, 720x576, Europe/Asia/Africa
Aspect Ratio
- 4:3: Standard (old TV format)
- 16:9: Widescreen (modern format)
- AUTO: Detect from source video
Disc Size
- DVD5: Single-layer, 4.7GB capacity
- DVD9: Dual-layer, 8.5GB capacity
Create Menu
- Enable to generate simple title selection menu
- Requires additional processing time
- Menu background uses first frame of first title
Treat as Chapters
- Merge multiple clips into single title with chapter points
- Chapter timestamps auto-calculated from clip durations
- Useful for episodic content or multi-part videos
Encoding Settings
Video
- Codec: MPEG-2 Video
- Resolution: 720x480 (NTSC) or 720x576 (PAL)
- Bitrate: 6000kbps (NTSC) / 8000kbps (PAL)
- Max Bitrate: 9000kbps (NTSC) / 9500kbps (PAL)
- GOP Size: 15 frames
- Pixel Format: YUV 4:2:0
- Interlacing: Enabled with ILME+ILDCT flags
Audio
- Codec: AC-3 (Dolby Digital)
- Bitrate: 192kbps
- Sample Rate: 48kHz
- Channels: Stereo (2.0)
Filters
- Scale to target resolution with aspect preservation
- Pad with black bars if needed to maintain aspect
- Force constant frame rate (CFR)
Workflow Examples
Example 1: Single Movie to DVD
Scenario: Convert vacation.mp4 to playable DVD
- Author Module → Files Tab
- Click "Select File" → Choose vacation.mp4
- Settings Tab:
- Output Type: DVD
- Region: NTSC
- Aspect Ratio: 16:9
- Disc Size: DVD5
- Chapters Tab:
- Adjust sensitivity to 0.40
- Click "Detect Scenes"
- Preview thumbnails, verify chapter points
- Accept chapters
- Generate Tab:
- Title: "Family Vacation"
- Output Path: ~/Videos/vacation.iso
- Click "Generate DVD/ISO"
- Monitor progress in authoring log
- Burn vacation.iso to DVD-R
Result: Playable DVD with auto-detected chapters
Example 2: TV Series Disc (Multi-Title)
Scenario: Combine 3 episodes onto one DVD
- Author Module → Clips Tab
- Add Videos:
- episode1.mkv
- episode2.mkv
- episode3.mkv
- Do NOT enable "Treat as Chapters"
- Settings Tab:
- Output Type: DVD
- Region: NTSC
- Create Menu: Yes
- Generate Tab:
- Title: "Series S01"
- Output Path: ~/Videos/series_s01.iso
- Generate
- Result: 3 separate titles with menu selection
Example 3: Concert with Manual Chapters
Scenario: Concert video with chapters for each song
- Author Module → Files Tab
- Select concert.mp4
- Chapters Tab:
- Manual chapter addition:
- 00:00 - "Opening"
- 03:45 - "Song 1"
- 07:30 - "Song 2"
- etc.
- Manual chapter addition:
- Settings Tab → Configure as DVD
- Generate → Create ISO with song navigation
Troubleshooting
"SCR moves backwards" Error
Cause: MPEG-2 timestamps not DVD-compliant
Solution: Automatic as of latest version
- Remux step added after encoding
- Regenerates timestamps with
-fflags +genpts - Error should not occur anymore
If Still Occurring:
- Verify you're using latest VideoTools build
- Check if source video has corruption
- Try re-downloading source file
Chapter Detection Finds Too Many Chapters
Cause: Sensitivity too low (detects minor changes)
Solution:
- Increase sensitivity slider (0.5-0.7)
- Re-run "Detect Scenes"
- Preview thumbnails to verify
- Aim for 8-15 chapters per 90-minute video
Chapter Detection Finds Too Few Chapters
Cause: Sensitivity too high (only detects major changes)
Solution:
- Decrease sensitivity slider (0.2-0.3)
- Re-run detection
- Verify with visual preview
Authoring Log Causes UI Lag
Cause: Large log files (thousands of lines)
Fixed: As of latest version
- Only last 100 lines displayed in UI
- Full log accessible via "View Full Log" button
- Memory usage capped
If Still Slow:
- Click "View Full Log" to open in separate viewer
- Main UI will remain responsive
ISO File Won't Burn to Disc
Cause: File size exceeds disc capacity
Solution:
- Check ISO size: Should be <4.7GB for DVD5
- If larger, use DVD9 disc or split content
- Reduce video bitrate in Settings if needed
Video Playback Stutters on DVD Player
Cause: Framerate conversion or interlacing issues
Solution:
- Verify source video is Constant Frame Rate (CFR)
- If Variable Frame Rate (VFR), convert to CFR first
- Try enabling/disabling interlacing flags
Technical Implementation
Encoding Pipeline
-
Source Analysis
- Probe video with ffprobe
- Detect resolution, framerate, codec
- Identify interlacing mode
-
MPEG-2 Encoding
ffmpeg -i input.mp4 \ -vf "scale=720:480,setdar=16:9,setsar=1,fps=30000/1001" \ -c:v mpeg2video -r 30000/1001 \ -b:v 6000k -maxrate 9000k -bufsize 1835k \ -g 15 -pix_fmt yuv420p -flags +ilme+ildct \ -c:a ac3 -b:a 192k -ar 48000 -ac 2 \ output.mpg -
Timestamp Remux
ffmpeg -fflags +genpts -i output.mpg \ -c copy -f dvd output_remux.mpg -
DVD Structure Creation
- Generate dvdauthor XML with chapter markers
- Run:
dvdauthor -o VIDEO_TS -x dvd.xml - Finalize:
dvdauthor -o VIDEO_TS -T - Create AUDIO_TS folder
-
ISO Generation (if requested)
- Detect ISO tool: mkisofs, genisoimage, or xorriso
- Create ISO:
mkisofs -dvd-video -o output.iso VIDEO_TS/
Chapter XML Format
<dvdauthor>
<vmgm />
<titleset>
<titles>
<video format="ntsc" aspect="16:9" />
<pgc>
<vob file="title_01.mpg" chapters="0:00,3:45.5,7:30.2" />
</pgc>
</titles>
</titleset>
</dvdauthor>
Temporary Files
Location: System temp + VideoTools prefix
videotools-author-XXXXXX/: Encoding workspacetitle_01.mpg: Initial encodetitle_01_remux.mpg: Timestamp-corrected versiondvd.xml: DVDAuthor configuration
videotools-dvd-XXXXXX/: VIDEO_TS structure (if making ISO)videotools-chapter-thumbs/: Chapter preview thumbnails
Cleanup: Automatic on completion or error
Dependencies
Required
- ffmpeg: Video encoding and analysis
- dvdauthor: DVD structure creation
Optional
- mkisofs or genisoimage or xorriso: ISO generation
- Only needed if creating .iso files (not needed for VIDEO_TS folders)
Installation
Fedora/RHEL:
sudo dnf install ffmpeg dvdauthor genisoimage
Ubuntu/Debian:
sudo apt install ffmpeg dvdauthor genisoimage
Arch:
sudo pacman -S ffmpeg dvdauthor cdrtools
Performance Tips
- Use SSD for Output: Faster read/write during authoring
- Limit Concurrent Jobs: DVD encoding is CPU-intensive
- Preview Before Full Encode: Test 5-minute segment first
- Batch Similar Files: Use same settings for multiple encodes
- Monitor Log File Size: Large logs indicate potential issues
File Size Estimates
NTSC (6000kbps video + 192kbps audio)
- 30 minutes: ~1.3 GB
- 60 minutes: ~2.6 GB
- 90 minutes: ~3.9 GB (fits DVD5)
- 120 minutes: ~5.2 GB (requires DVD9)
PAL (8000kbps video + 192kbps audio)
- 30 minutes: ~1.7 GB
- 60 minutes: ~3.4 GB
- 90 minutes: ~5.1 GB (requires DVD9)
- 120 minutes: ~6.8 GB (requires DVD9)
Keyboard Shortcuts
None specific to Author module. Use main application shortcuts.
Related Documentation
- DVD_USER_GUIDE.md: Creating DVD-compliant video files
- QUEUE_SYSTEM_GUIDE.md: Job queue management
- MODULES.md: Overview of all VideoTools modules