173 lines
4.9 KiB
Markdown
173 lines
4.9 KiB
Markdown
# Maya Image Plane Node - Implementation Guide
|
|
|
|
## Getting Started
|
|
|
|
This guide helps the development team begin work on the Maya Image Plane Node project.
|
|
|
|
## Team Assignments
|
|
|
|
### Developer 1 (FFmpeg & Maya Node)
|
|
- Implement FFmpeg video decoder class
|
|
- Create Maya MPxNode plugin
|
|
- Implement video frame caching
|
|
- Handle thread-safe frame delivery
|
|
|
|
### Developer 2 (Viewport & Post-effects)
|
|
- Implement MHWRender::MPxDrawOverride
|
|
- Add frame rate synchronization
|
|
- Implement user-adjustable playback rate
|
|
- Create post-effects (crop, resize, flip)
|
|
|
|
### QA Engineer
|
|
- Create test plan
|
|
- Create and execute test cases
|
|
- Verify functionality and report bugs
|
|
|
|
## Development Setup
|
|
|
|
### Prerequisites
|
|
- Maya 2023 installed
|
|
- Visual Studio 2017 (matching Maya 2023's compiler)
|
|
- CMake 3.14+
|
|
- FFmpeg development libraries (or use vcpkg)
|
|
|
|
### Build Instructions
|
|
1. Clone/download the repository
|
|
2. Ensure MAYA_LOCATION environment variable is set to Maya 2023 installation
|
|
3. Run CMake to generate project files:
|
|
```
|
|
mkdir build
|
|
cd build
|
|
cmake .. -G "Visual Studio 15 2017"
|
|
```
|
|
4. Build the solution in Visual Studio
|
|
5. The plugin will be output as MayaImagePlaneNode.mll
|
|
|
|
### Working with Specifications
|
|
All detailed technical specifications are available in the `docs/` directory:
|
|
- FFmpeg_Integration_Spec.md
|
|
- Maya_Node_Implementation_Spec.md
|
|
- Viewport_2_0_Integration_Spec.md
|
|
- Frame_Rate_Synchronization_Spec.md
|
|
- User_Adjustable_Playback_Rate_Spec.md
|
|
- Post_Effects_Spec.md
|
|
- Video_Frame_Caching_Spec.md
|
|
- Module_Packaging_Spec.md
|
|
|
|
## First Steps
|
|
|
|
### Developer 1
|
|
1. Review FFmpeg_Integration_Spec.md
|
|
2. Begin implementing the FFmpeg video decoder class
|
|
3. Set up basic Maya MPxNode structure
|
|
|
|
### Developer 2
|
|
1. Review Viewport_2_0_Integration_Spec.md
|
|
2. Begin implementing MHWRender::MPxDrawOverride base class
|
|
3. Set up OpenGL texture management system
|
|
|
|
### QA Engineer
|
|
1. Review all specifications to understand test requirements
|
|
2. Create test plan document
|
|
3. Begin creating test cases for plugin loading
|
|
|
|
## Communication
|
|
- Update your task status in the todo list regularly
|
|
- Report any blockers or questions immediately
|
|
- Share progress updates in team communications
|
|
- Consult specifications before implementing features
|
|
|
|
## Notes
|
|
- Follow Maya API best practices
|
|
- Ensure thread safety between decoding and main thread
|
|
- Handle errors gracefully with appropriate logging
|
|
- Maintain clean, readable code with comments
|
|
- Test frequently as you implement features
|
|
|
|
Good luck with the implementation!
|
|
## Getting Started
|
|
|
|
This guide helps the development team begin work on the Maya Image Plane Node project.
|
|
|
|
## Team Assignments
|
|
|
|
### Developer 1 (FFmpeg & Maya Node)
|
|
- Implement FFmpeg video decoder class
|
|
- Create Maya MPxNode plugin
|
|
- Implement video frame caching
|
|
- Handle thread-safe frame delivery
|
|
|
|
### Developer 2 (Viewport & Post-effects)
|
|
- Implement MHWRender::MPxDrawOverride
|
|
- Add frame rate synchronization
|
|
- Implement user-adjustable playback rate
|
|
- Create post-effects (crop, resize, flip)
|
|
|
|
### QA Engineer
|
|
- Create test plan
|
|
- Create and execute test cases
|
|
- Verify functionality and report bugs
|
|
|
|
## Development Setup
|
|
|
|
### Prerequisites
|
|
- Maya 2023 installed
|
|
- Visual Studio 2017 (matching Maya 2023's compiler)
|
|
- CMake 3.14+
|
|
- FFmpeg development libraries (or use vcpkg)
|
|
|
|
### Build Instructions
|
|
1. Clone/download the repository
|
|
2. Ensure MAYA_LOCATION environment variable is set to Maya 2023 installation
|
|
3. Run CMake to generate project files:
|
|
```
|
|
mkdir build
|
|
cd build
|
|
cmake .. -G "Visual Studio 15 2017"
|
|
```
|
|
4. Build the solution in Visual Studio
|
|
5. The plugin will be output as MayaImagePlaneNode.mll
|
|
|
|
### Working with Specifications
|
|
All detailed technical specifications are available in the `docs/` directory:
|
|
- FFmpeg_Integration_Spec.md
|
|
- Maya_Node_Implementation_Spec.md
|
|
- Viewport_2_0_Integration_Spec.md
|
|
- Frame_Rate_Synchronization_Spec.md
|
|
- User_Adjustable_Playback_Rate_Spec.md
|
|
- Post_Effects_Spec.md
|
|
- Video_Frame_Caching_Spec.md
|
|
- Module_Packaging_Spec.md
|
|
|
|
## First Steps
|
|
|
|
### Developer 1
|
|
1. Review FFmpeg_Integration_Spec.md
|
|
2. Begin implementing the FFmpeg video decoder class
|
|
3. Set up basic Maya MPxNode structure
|
|
|
|
### Developer 2
|
|
1. Review Viewport_2_0_Integration_Spec.md
|
|
2. Begin implementing MHWRender::MPxDrawOverride base class
|
|
3. Set up OpenGL texture management system
|
|
|
|
### QA Engineer
|
|
1. Review all specifications to understand test requirements
|
|
2. Create test plan document
|
|
3. Begin creating test cases for plugin loading
|
|
|
|
## Communication
|
|
- Update your task status in the todo list regularly
|
|
- Report any blockers or questions immediately
|
|
- Share progress updates in team communications
|
|
- Consult specifications before implementing features
|
|
|
|
## Notes
|
|
- Follow Maya API best practices
|
|
- Ensure thread safety between decoding and main thread
|
|
- Handle errors gracefully with appropriate logging
|
|
- Maintain clean, readable code with comments
|
|
- Test frequently as you implement features
|
|
|
|
Good luck with the implementation!
|