mirror of
https://github.com/litruv/PNGTuber-Plus.git
synced 2026-07-24 02:26:02 +10:00
146 lines
5.4 KiB
Markdown
146 lines
5.4 KiB
Markdown
# NDI Output for PNGTuber-Plus
|
|
|
|
This guide explains how to use the NDI (Network Device Interface) output feature in PNGTuber-Plus to stream your avatar to OBS Studio or other NDI-compatible applications.
|
|
|
|
## Requirements
|
|
|
|
1. **NDI Runtime**: Download and install the NDI Runtime from [NDI website](http://ndi.link/NDIRedistV6)
|
|
- Windows: [NDI Runtime for Windows](http://ndi.link/NDIRedistV6)
|
|
- macOS: [NDI Runtime for macOS](http://ndi.link/NDIRedistV6Apple)
|
|
- Linux: [NDI Runtime for Linux](https://github.com/DistroAV/DistroAV/wiki/1.-Installation#linux) (Note: Flatpak incompatible)
|
|
|
|
2. **Godot 4.4-stable or later**: This plugin requires Godot 4.4+ to function properly
|
|
|
|
3. **NDI-compatible software**: Such as OBS Studio with NDI plugin, vMix, Wirecast, etc.
|
|
|
|
## Features
|
|
|
|
- **Real-time NDI streaming**: Stream your PNGTuber avatar over the network
|
|
- **Audio support**: Include system audio in the NDI stream (optional)
|
|
- **Customizable source name**: Set a custom name for your NDI source
|
|
- **Hotkey controls**: Quick toggle streaming with keyboard shortcuts
|
|
- **Settings UI**: Easy configuration through the settings menu
|
|
|
|
## Getting Started
|
|
|
|
### 1. Basic Setup
|
|
|
|
The NDI output is automatically enabled when you start PNGTuber-Plus. The default settings are:
|
|
- **Source Name**: "PNGTuber-Plus"
|
|
- **Audio**: Enabled (Master bus)
|
|
- **Auto-start**: Enabled
|
|
|
|
### 2. Settings Menu Configuration
|
|
|
|
Access the NDI settings through the Settings Menu:
|
|
|
|
1. Click the settings wheel in PNGTuber-Plus
|
|
2. Scroll down to find the "NDI streaming" section
|
|
3. Configure the following options:
|
|
- **NDI streaming**: Enable/disable NDI output
|
|
- **Source name**: Set a custom name for your NDI source (default: "PNGTuber-Plus")
|
|
- **Include audio**: Toggle audio streaming on/off
|
|
- **Status**: View current streaming status
|
|
- **Start/Stop NDI**: Manual control button
|
|
|
|
### 3. Hotkey Controls
|
|
|
|
Quick keyboard shortcuts for NDI control:
|
|
- **F9**: Toggle NDI streaming on/off
|
|
- **F10**: Restart NDI streaming (useful for applying new settings)
|
|
|
|
### 4. OBS Studio Setup
|
|
|
|
To capture the NDI stream in OBS Studio:
|
|
|
|
1. **Install NDI Plugin for OBS**:
|
|
- Download from [OBS NDI Plugin](https://github.com/Palakis/obs-ndi/releases)
|
|
- Install following the provided instructions
|
|
|
|
2. **Add NDI Source in OBS**:
|
|
- In OBS, click the "+" in Sources
|
|
- Select "NDI Source"
|
|
- Name your source (e.g., "PNGTuber Avatar")
|
|
- In the properties, select your NDI source from the dropdown
|
|
- Look for "PNGTuber-Plus" (or your custom name)
|
|
- Configure audio settings as needed
|
|
|
|
3. **Position and Scale**:
|
|
- Resize and position the NDI source in your scene
|
|
- The stream will include the full PNGTuber viewport
|
|
|
|
## Troubleshooting
|
|
|
|
### NDI Source Not Appearing in OBS
|
|
|
|
1. **Check NDI Runtime**: Ensure NDI Runtime is installed on both machines
|
|
2. **Network connectivity**: NDI works over network, ensure devices can communicate
|
|
3. **Firewall settings**: NDI uses specific ports, check firewall rules
|
|
4. **Restart applications**: Try restarting both PNGTuber-Plus and OBS
|
|
5. **Check source name**: Verify the NDI source name matches in settings
|
|
|
|
### Audio Issues
|
|
|
|
1. **Audio bus**: Ensure the correct audio bus is selected (default: "Master")
|
|
2. **System audio**: Check that PNGTuber-Plus is receiving audio input
|
|
3. **OBS audio settings**: Verify NDI source audio is not muted in OBS
|
|
|
|
### Performance Issues
|
|
|
|
1. **Network bandwidth**: NDI requires good network performance for quality streaming
|
|
2. **Local streaming**: For best performance, use NDI on the same machine
|
|
3. **Resolution**: Lower viewport resolution if experiencing lag
|
|
4. **Frame rate**: Adjust FPS settings in PNGTuber-Plus settings
|
|
|
|
### NDI Not Working
|
|
|
|
1. **Godot version**: Ensure you're using Godot 4.4-stable or later
|
|
2. **Plugin enabled**: Verify the godot-ndi plugin is properly installed
|
|
3. **System compatibility**: Check NDI Runtime compatibility with your OS
|
|
4. **Console errors**: Check Godot console for any NDI-related errors
|
|
|
|
## Advanced Configuration
|
|
|
|
### Custom Audio Bus
|
|
|
|
You can route specific audio to NDI by:
|
|
1. Creating a custom audio bus in PNGTuber-Plus
|
|
2. Setting the NDI audio bus to your custom bus name
|
|
3. Routing desired audio sources to that bus
|
|
|
|
### Network Performance
|
|
|
|
For optimal network streaming:
|
|
- Use wired connections when possible
|
|
- Ensure sufficient bandwidth (>100 Mbps recommended for high quality)
|
|
- Keep NDI devices on the same network segment
|
|
- Consider NDI quality settings if available
|
|
|
|
### Multiple Instances
|
|
|
|
You can run multiple PNGTuber-Plus instances with different NDI source names:
|
|
1. Change the "Source name" in each instance
|
|
2. Each will appear as a separate NDI source
|
|
3. Useful for multiple avatars or backup streams
|
|
|
|
## Technical Details
|
|
|
|
- **Video Format**: NDI handles video format automatically based on viewport
|
|
- **Audio Format**: Uses the selected audio bus output
|
|
- **Compression**: NDI uses efficient compression for network streaming
|
|
- **Latency**: Typically very low latency (<1 frame) on local network
|
|
|
|
## Legal Notice
|
|
|
|
NDI® is a registered trademark of Vizrt NDI AB. Your application must comply with the [NDI SDK license](http://ndi.link/ndisdk_license) when using this feature.
|
|
|
|
## Support
|
|
|
|
For issues specific to NDI functionality:
|
|
1. Check the console output for error messages
|
|
2. Verify NDI Runtime installation
|
|
3. Test with other NDI applications to isolate issues
|
|
4. Check network connectivity for remote streaming
|
|
|
|
For PNGTuber-Plus specific issues, refer to the main application documentation and support channels.
|