# 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)