mirror of
https://github.com/pacnpal/Pac-cogs.git
synced 2025-12-20 10:51:05 -05:00
Update README with new features and improvements
- Add content-aware video analysis documentation - Add comprehensive error handling details - Add hardware acceleration improvements - Add resource management documentation - Add better troubleshooting information - Add detailed error logging information - Add GPU fallback documentation - Add task management details
This commit is contained in:
@@ -5,12 +5,17 @@ A powerful video archiving cog that automatically downloads and reposts videos f
|
||||
## Features
|
||||
|
||||
- **Hardware-Accelerated Video Processing**:
|
||||
- NVIDIA GPU support using NVENC
|
||||
- AMD GPU support using AMF
|
||||
- Intel GPU support using QuickSync
|
||||
- NVIDIA GPU support using NVENC with advanced encoding options
|
||||
- AMD GPU support using AMF with quality preservation
|
||||
- Intel GPU support using QuickSync with look-ahead
|
||||
- ARM64/aarch64 support with V4L2 M2M encoder
|
||||
- Multi-core CPU optimization
|
||||
- Multi-core CPU optimization with advanced parameters
|
||||
- Automatic GPU fallback to CPU if hardware encoding fails
|
||||
- **Smart Video Processing**:
|
||||
- Content-aware video analysis
|
||||
- Dark scene detection and optimization
|
||||
- Motion detection and adaptation
|
||||
- Dynamic audio bitrate allocation
|
||||
- Intelligent quality preservation
|
||||
- Only compresses when needed
|
||||
- Concurrent video processing
|
||||
@@ -25,9 +30,17 @@ A powerful video archiving cog that automatically downloads and reposts videos f
|
||||
- Automatic quality selection
|
||||
- **Automatic Updates**:
|
||||
- Automatic yt-dlp update checking
|
||||
- Semantic version comparison
|
||||
- Bot owner notifications for new versions
|
||||
- Easy update command
|
||||
- Configurable update notifications
|
||||
- Retries for update operations
|
||||
- **Error Handling & Logging**:
|
||||
- Detailed error logging to Discord channels
|
||||
- Full error tracebacks for debugging
|
||||
- Automatic retries for Discord operations
|
||||
- Proper resource cleanup
|
||||
- Task tracking and management
|
||||
|
||||
## Installation
|
||||
|
||||
@@ -54,7 +67,7 @@ To install this cog, follow these steps:
|
||||
|
||||
Replace `[p]` with your bot's prefix.
|
||||
|
||||
The required dependencies (yt-dlp, ffmpeg-python, requests) will be installed automatically. You will also need FFmpeg installed on your system - the cog will attempt to download and manage FFmpeg automatically if it's not found.
|
||||
The required dependencies (yt-dlp, ffmpeg-python, requests, aiohttp) will be installed automatically. You will also need FFmpeg installed on your system - the cog will attempt to download and manage FFmpeg automatically if it's not found.
|
||||
|
||||
### Important: Keeping yt-dlp Updated
|
||||
|
||||
@@ -118,16 +131,45 @@ etc.
|
||||
|
||||
## Architecture Support
|
||||
|
||||
The cog supports multiple architectures:
|
||||
- x86_64/amd64
|
||||
- ARM64/aarch64
|
||||
- ARMv7 (32-bit)
|
||||
- Apple Silicon (M1/M2)
|
||||
The cog supports multiple architectures with intelligent hardware detection:
|
||||
- x86_64/amd64: Full GPU support with automatic encoder testing
|
||||
- ARM64/aarch64: Hardware encoding with automatic capability detection
|
||||
- ARMv7 (32-bit): Optimized CPU encoding
|
||||
- Apple Silicon (M1/M2): Native ARM support
|
||||
|
||||
Hardware acceleration is automatically configured based on your system:
|
||||
- x86_64: Full GPU support (NVIDIA, AMD, Intel)
|
||||
- ARM64: V4L2 M2M hardware encoding when available
|
||||
- All platforms: Multi-core CPU optimization
|
||||
Hardware acceleration features:
|
||||
- Automatic GPU detection and testing
|
||||
- Fallback to CPU if GPU encoding fails
|
||||
- Dynamic encoder parameter optimization
|
||||
- Multi-pass encoding for better quality
|
||||
- Content-aware encoding settings
|
||||
|
||||
## Error Handling
|
||||
|
||||
The cog includes comprehensive error handling:
|
||||
|
||||
1. **Discord API Operations**:
|
||||
- Automatic retries for failed operations
|
||||
- Configurable retry attempts and delays
|
||||
- Proper error logging to Discord channels
|
||||
|
||||
2. **Video Processing**:
|
||||
- Automatic GPU fallback if hardware encoding fails
|
||||
- Temporary file cleanup on errors
|
||||
- Resource leak prevention
|
||||
- Task cancellation handling
|
||||
|
||||
3. **Update Management**:
|
||||
- Proper version comparison
|
||||
- Network timeout handling
|
||||
- Update notification retries
|
||||
- Error context preservation
|
||||
|
||||
4. **Resource Management**:
|
||||
- Proper task tracking and cleanup
|
||||
- Component lifecycle management
|
||||
- File handle cleanup
|
||||
- Memory leak prevention
|
||||
|
||||
## Troubleshooting
|
||||
|
||||
@@ -138,6 +180,7 @@ Hardware acceleration is automatically configured based on your system:
|
||||
- Bot needs "Use Application Commands" for slash commands
|
||||
|
||||
2. **Video Processing Issues**:
|
||||
- Check log channel for detailed error messages
|
||||
- Ensure FFmpeg is properly installed
|
||||
- Check GPU drivers are up to date
|
||||
- Verify file permissions in the downloads directory
|
||||
@@ -146,26 +189,31 @@ Hardware acceleration is automatically configured based on your system:
|
||||
3. **Role Issues**:
|
||||
- Verify role hierarchy (bot's role must be higher than managed roles)
|
||||
- Check if roles are properly configured
|
||||
- Check log channel for permission errors
|
||||
|
||||
4. **Performance Issues**:
|
||||
- Check available disk space
|
||||
- Monitor system resource usage
|
||||
- Check log channel for encoding errors
|
||||
- Verify GPU availability and status
|
||||
|
||||
## Support
|
||||
|
||||
For support:
|
||||
1. First, check the [Troubleshooting](#troubleshooting) section above
|
||||
2. Update yt-dlp to the latest version:
|
||||
2. Check the log channel for detailed error messages
|
||||
3. Update yt-dlp to the latest version:
|
||||
```bash
|
||||
[p]videoarchiver updateytdlp
|
||||
```
|
||||
3. If the issue persists after updating yt-dlp:
|
||||
4. If the issue persists after updating yt-dlp:
|
||||
- Join the Red-DiscordBot server and ask in the #support channel
|
||||
- Open an issue on GitHub with:
|
||||
- Your Red-Bot version
|
||||
- The output of `[p]pipinstall list`
|
||||
- Steps to reproduce the issue
|
||||
- Any error messages
|
||||
- Any error messages from the log channel
|
||||
- Your hardware configuration (CPU/GPU)
|
||||
|
||||
## Contributing
|
||||
|
||||
@@ -180,7 +228,9 @@ Before submitting an issue:
|
||||
- Your Red-Bot version
|
||||
- The output of `[p]pipinstall list`
|
||||
- Steps to reproduce the issue
|
||||
- Any error messages
|
||||
- Any error messages from the log channel
|
||||
- Your hardware configuration (CPU/GPU)
|
||||
- FFmpeg version and configuration
|
||||
|
||||
## License
|
||||
|
||||
|
||||
Reference in New Issue
Block a user