Files
video_probe/test_workflow.sh
accusys f3e2d2dca7 Initial implementation of video_probe (Rust)
Core modules:
- probe.rs: ffprobe execution logic
- parser.rs: JSON parsing logic
- output.rs: Output formatting
- lib.rs: Library interface
- main.rs: CLI entry point

Features:
- Extract video metadata using ffprobe
- Parse video/audio/subtitle streams
- Save to JSON file
- Console summary output

Documentation:
- Added QUICKSTART.md
- Added ENVIRONMENT_SETUP_REPORT.md
2026-03-07 10:10:19 +08:00

54 lines
2.5 KiB
Bash
Executable File

#!/bin/bash
# Test script for Video YOLO Player workflow
echo "======================================"
echo "Video YOLO Player - Workflow Test"
echo "======================================"
echo ""
# Check dependencies
echo "1. Checking dependencies..."
python3 --version || { echo "ERROR: Python3 not found"; exit 1; }
ffprobe -version &> /dev/null || { echo "ERROR: ffprobe not found"; exit 1; }
ffplay -version &> /dev/null || { echo "ERROR: ffplay not found"; exit 1; }
echo " ✓ All dependencies installed"
echo ""
# Check Python packages
echo "2. Checking Python packages..."
python3 -c "import cv2; print(' ✓ opencv-python installed')" || exit 1
python3 -c "import numpy; print(' ✓ numpy installed')" || exit 1
python3 -c "from ultralytics import YOLO; print(' ✓ ultralytics installed')" || exit 1
echo ""
# Check scripts
echo "3. Checking scripts..."
[ -f "video_probe.py" ] && echo " ✓ video_probe.py found" || { echo "ERROR: video_probe.py not found"; exit 1; }
[ -f "video_yolo_object_prescan.py" ] && echo " ✓ video_yolo_object_prescan.py found" || { echo "ERROR: video_yolo_object_prescan.py not found"; exit 1; }
[ -f "video_yolo_player.py" ] && echo " ✓ video_yolo_player.py found" || { echo "ERROR: video_yolo_player.py not found"; exit 1; }
echo ""
# Test script syntax
echo "4. Testing script syntax..."
python3 -m py_compile video_probe.py && echo " ✓ video_probe.py syntax OK" || exit 1
python3 -m py_compile video_yolo_object_prescan.py && echo " ✓ video_yolo_object_prescan.py syntax OK" || exit 1
python3 -m py_compile video_yolo_player.py && echo " ✓ video_yolo_player.py syntax OK" || exit 1
echo ""
# Test help messages
echo "5. Testing help messages..."
python3 video_probe.py 2>&1 | grep -q "Usage:" && echo " ✓ video_probe.py help OK" || { echo "ERROR: video_probe.py help failed"; exit 1; }
python3 video_yolo_object_prescan.py 2>&1 | grep -q "Usage:" && echo " ✓ video_yolo_object_prescan.py help OK" || { echo "ERROR: video_yolo_object_prescan.py help failed"; exit 1; }
python3 video_yolo_player.py 2>&1 | grep -q "Usage:" && echo " ✓ video_yolo_player.py help OK" || { echo "ERROR: video_yolo_player.py help failed"; exit 1; }
echo ""
echo "======================================"
echo "✓ All tests passed!"
echo "======================================"
echo ""
echo "Next steps:"
echo " 1. Run: python3 video_probe.py <your_video.mp4>"
echo " 2. Run: python3 video_yolo_object_prescan.py <your_video.mp4> yolov8n.pt"
echo " 3. Run: python3 video_yolo_player.py <your_video.mp4> yolov8n.pt"
echo ""