MediaPlane/PLAN.md

1.6 KiB

Maya Image Plane Node Project Plan

Team Structure

  • Team Lead: Architect (you)
  • Developer 1: FFmpeg and Maya Node
  • Developer 2: Viewport 2.0 and Post-effects
  • QA Engineer: Test plans and test cases

Project Structure

src/ MayaImagePlaneNode/ CMakeLists.txt src/ *.cpp, *.h include/ *.h resources/ (optional)

Tasks

  1. Project setup: Create directory structure, CMakeLists.txt, and find ffmpeg
  2. FFmpeg integration: Build ffmpeg or link against pre-built libraries, implement video decoding
  3. Maya node implementation: Create MPxNode plugin that handles video file input and frame output
  4. Viewport 2.0 integration: Implement MHWRender::MPxDrawOverride to display video frames in viewport
  5. Frame rate synchronization: Read Maya's frame rate and adjust playback speed accordingly
  6. User-adjustable playback rate: Add attribute to control video playback speed independently
  7. Post-effects: Implement crop, resize, flip operations on video frames
  8. Video frame caching: Cache decoded frames for smooth playback
  9. Module packaging: Create Maya module structure for easy installation
  10. QA: Write test plans and test cases for plugin loading and functionality
  11. QA: Test plugin loading using mayapy.exe
  12. QA: Test viewport display using maya.exe and MEL scripts
  13. QA: Verify all features (frame rate adjustment, user rate, post-effects, caching) and report bugs

Assignments

  • Developer 1: Tasks 1, 2, 3, 8 (project setup, FFmpeg, Maya node, caching)
  • Developer 2: Tasks 4, 5, 6, 7 (viewport, frame rate sync, user rate, post-effects)
  • QA Engineer: Tasks 9, 10, 11, 12, 13 (module packaging, test plans, testing)