VideoTools/docs/TEST_DVD_CONVERSION.md
Stu Leak 925334d8df Clean up root folder and update TODO/DONE for dev19
Root Folder Cleanup:
- Moved all documentation .md files to docs/ folder
- Kept only README.md, TODO.md, DONE.md in root
- Cleaner project structure for contributors
- Better organization of documentation

Files Moved to docs/:
- BUILD.md, BUILD_AND_RUN.md, CHANGELOG.md
- COMPLETION_SUMMARY.md, DVD_IMPLEMENTATION_SUMMARY.md
- DVD_USER_GUIDE.md, INSTALLATION.md, INTEGRATION_GUIDE.md
- LATEST_UPDATES.md, QUEUE_SYSTEM_GUIDE.md, QUICKSTART.md
- TESTING_DEV13.md, TEST_DVD_CONVERSION.md, WINDOWS_SETUP.md

DONE.md Updates:
- Added dev19 section (2025-12-18)
- Documented history sidebar delete button
- Documented command preview improvements
- Documented format options reorganization
- Documented bitrate mode descriptive labels
- Documented critical bug fixes (Convert crash, log viewer)
- Documented bitrate control improvements

TODO.md Updates:
- Updated to dev19+ plan
- Added "Current Focus: dev19" section
- Added AI frame interpolation task (RIFE, FILM, DAIN, CAIN)
- Added color space preservation tasks
- Reorganized priority structure

This establishes dev19 as the current development focus on
Convert module cleanup and polish, with clear tracking of
completed work and upcoming priorities.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2025-12-18 16:21:15 -05:00

8.4 KiB
Raw Blame History

DVD Conversion Testing Guide

This guide walks you through a complete DVD-NTSC conversion test.

Test Setup

A test video has been created at:

/tmp/videotools_test/test_video.mp4

Video Properties:

  • Resolution: 1280×720 (16:9 widescreen)
  • Framerate: 30fps
  • Duration: 5 seconds
  • Codec: H.264
  • This is perfect for testing - larger than DVD output, different aspect ratio

Expected Output:

  • Resolution: 720×480 (NTSC standard)
  • Framerate: 29.97fps
  • Codec: MPEG-2
  • Duration: ~5 seconds (same, just re-encoded)

Step-by-Step Testing

Step 1: Start VideoTools

cd /home/stu/Projects/VideoTools
./VideoTools

You should see the main menu with modules: Convert, Merge, Trim, Filters, Upscale, Audio, Thumb, Inspect.

Expected: Main menu appears with all modules visible


Step 2: Open Convert Module

Click the "Convert" tile (violet color, top-left area)

You should see:

  • Video preview area
  • Format selector
  • Quality selector
  • "Add to Queue" button
  • Queue access button

Expected: Convert module loads without errors


Step 3: Load Test Video

In the Convert module, you should see options to:

  • Drag & drop a file, OR
  • Use file browser button

Load: /tmp/videotools_test/test_video.mp4

After loading, you should see:

  • Video preview (blue frame)
  • Video information: 1280×720, 30fps, duration ~5 seconds
  • Metadata display

Expected: Video loads and metadata displays correctly


Step 4: Select DVD Format

Look for the "Format" dropdown in the Simple Mode section (top area).

Click the dropdown and select: "DVD-NTSC (MPEG-2)"

This is where the magic happens!

Expected Results After Selecting DVD-NTSC:

You should immediately see:

  1. DVD Aspect Ratio selector appears with options: 4:3 or 16:9 (default 16:9)
  2. DVD info label shows:
    NTSC: 720×480 @ 29.97fps, MPEG-2, AC-3 Stereo 48kHz
    Bitrate: 6000k (default), 9000k (max PS2-safe)
    Compatible with DVDStyler, PS2, standalone DVD players
    
  3. Output filename hint updates to show: .mpg extension

In Advanced Mode (if you click the toggle):

  • Target Resolution should show: "NTSC (720×480)"
  • Frame Rate should show: "30" (will become 29.97fps in actual encoding)
  • Aspect Ratio should be set to: "16:9" (matching DVD aspect selector)

Step 5: Name Your Output

In the "Output Name" field, enter:

test_dvd_output

Don't include the .mpg extension - VideoTools adds it automatically.

Expected: Output hint shows "Output file: test_dvd_output.mpg"


Step 6: Queue the Conversion Job

Click the "Add to Queue" button

A dialog may appear asking to confirm. Click OK/Proceed.

Expected: Job is added to queue, you can see queue counter update


Step 7: View and Start the Queue

Click "View Queue" button (top right)

You should see the Queue panel with:

  • Your job listed
  • Status: "Pending"
  • Progress: 0%
  • Control buttons: Start Queue, Pause All, Resume All

Click "Start Queue" button

Expected: Conversion begins, progress bar fills


Step 8: Monitor Conversion

Watch the queue as it encodes. You should see:

  • Status: "Running"
  • Progress bar: filling from 0% to 100%
  • No error messages

The conversion will take 2-5 minutes depending on your CPU. With a 5-second test video, it should be relatively quick.

Expected: Conversion completes with Status: "Completed"


Step 9: Verify Output File

After conversion completes, check the output:

ls -lh test_dvd_output.mpg

You should see a file with reasonable size (several MB for a 5-second video).

Check Properties:

ffprobe test_dvd_output.mpg -show_streams

Expected Output Should Show:

  • Video codec: mpeg2video (not h264)
  • Resolution: 720x480 (not 1280x720)
  • Frame rate: 29.97 or 30000/1001 (NTSC standard)
  • Audio codec: ac3 (Dolby Digital)
  • Audio sample rate: 48000 Hz (48 kHz)
  • Audio channels: 2 (stereo)

Step 10: DVDStyler Compatibility Check

If you have DVDStyler installed:

which dvdstyler

If installed:

  1. Open DVDStyler
  2. Create a new project
  3. Try to import the .mpg file

Expected: File imports without re-encoding warnings

If not installed but want to simulate: FFmpeg would automatically detect and re-encode if the file wasn't DVD-compliant. The fact that our conversion worked means it IS compliant.


Success Criteria Checklist

After completing all steps, verify:

  • VideoTools opens without errors
  • Convert module loads
  • Test video loads correctly (1280x720, 30fps shown)
  • Format dropdown works
  • DVD-NTSC format selects successfully
  • DVD Aspect Ratio selector appears
  • DVD info text displays correctly
  • Target Resolution auto-sets to "NTSC (720×480)" (Advanced Mode)
  • Frame Rate auto-sets to "30" (Advanced Mode)
  • Job queues without errors
  • Conversion starts and shows progress
  • Conversion completes successfully
  • Output file exists (test_dvd_output.mpg)
  • Output file has correct codec (mpeg2video)
  • Output resolution is 720×480
  • Output framerate is 29.97fps
  • Audio is AC-3 stereo at 48 kHz
  • File is DVDStyler-compatible (no re-encoding warnings)

Troubleshooting

Video Doesn't Load

  • Check file path: /tmp/videotools_test/test_video.mp4
  • Verify FFmpeg is installed: ffmpeg -version
  • Check file exists: ls -lh /tmp/videotools_test/test_video.mp4

DVD Format Not Appearing

  • Ensure you're in Simple or Advanced Mode
  • Check that Format dropdown is visible
  • Scroll down if needed to find it

Auto-Resolution Not Working

  • Click on the format dropdown and select DVD-NTSC again
  • Switch to Advanced Mode to see Target Resolution field
  • Check that it shows "NTSC (720×480)"

Conversion Won't Start

  • Ensure job is in queue with status "Pending"
  • Click "Start Queue" button
  • Check for error messages in the console
  • Verify FFmpeg is installed and working

Output File Wrong Format

  • Check codec: ffprobe test_dvd_output.mpg | grep codec
  • Should show mpeg2video for video and ac3 for audio
  • If not, conversion didn't run with DVD settings

DVDStyler Shows Re-encoding Warning

  • This means our MPEG-2 encoding didn't match specs
  • Check framerate, resolution, codec, bitrate
  • May need to adjust encoder settings

Test Results Template

Use this template to document your results:

TEST DATE: [date]
SYSTEM: [OS/CPU]
GO VERSION: [from: go version]
FFMPEG VERSION: [from: ffmpeg -version]

INPUT VIDEO:
- Path: /tmp/videotools_test/test_video.mp4
- Codec: h264
- Resolution: 1280x720
- Framerate: 30fps
- Duration: 5 seconds

VIDEOTOOLS TEST:
- Format selected: DVD-NTSC (MPEG-2)
- DVD Aspect Ratio: 16:9
- Output name: test_dvd_output
- Queue status: [pending/running/completed]
- Conversion status: [success/failed/error]

OUTPUT VIDEO:
- Path: test_dvd_output.mpg
- File size: [MB]
- Video codec: [mpeg2video?]
- Resolution: [720x480?]
- Framerate: [29.97?]
- Audio codec: [ac3?]
- Audio channels: [stereo?]
- Audio sample rate: [48000?]

DVDStyler COMPATIBILITY:
- Tested: [yes/no]
- Result: [success/re-encoding needed/failed]

OVERALL RESULT: [PASS/FAIL]

Next Steps

After successful conversion:

  1. Optional: Test PAL Format

    • Repeat with DVD-PAL format
    • Should auto-set to 720×576 @ 25fps
    • Audio still AC-3 @ 48kHz
  2. Optional: Test Queue Features

    • Add multiple videos
    • Test Pause All / Resume All
    • Test job reordering
  3. Optional: Create Real DVD

    • Import .mpg into DVDStyler
    • Add menus and chapters
    • Burn to physical DVD disc

Commands Reference

Create Test Video (if needed)

ffmpeg -f lavfi -i "color=c=blue:s=1280x720:d=5,fps=30" -f lavfi -i "sine=f=1000:d=5" \
  -c:v libx264 -c:a aac -y /tmp/videotools_test/test_video.mp4

Check Input Video

ffprobe /tmp/videotools_test/test_video.mp4 -show_streams

Check Output Video

ffprobe test_dvd_output.mpg -show_streams

Get Quick Summary

ffprobe test_dvd_output.mpg -v error \
  -select_streams v:0 -show_entries stream=codec_name,width,height,r_frame_rate \
  -of default=noprint_wrappers=1:nokey=1

Verify DVD Compliance

ffprobe test_dvd_output.mpg -v error \
  -select_streams a:0 -show_entries stream=codec_name,sample_rate,channels \
  -of default=noprint_wrappers=1:nokey=1

Good luck with your testing! Let me know your results. 🎬