apexify.js 5.0.4 → 5.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (35) hide show
  1. package/CHANGELOG.md +337 -137
  2. package/README.md +65 -12
  3. package/dist/cjs/Canvas/ApexPainter.d.ts +272 -0
  4. package/dist/cjs/Canvas/ApexPainter.d.ts.map +1 -1
  5. package/dist/cjs/Canvas/ApexPainter.js +2275 -125
  6. package/dist/cjs/Canvas/ApexPainter.js.map +1 -1
  7. package/dist/cjs/Canvas/utils/Custom/advancedLines.d.ts +4 -4
  8. package/dist/cjs/Canvas/utils/Custom/advancedLines.d.ts.map +1 -1
  9. package/dist/cjs/Canvas/utils/Custom/advancedLines.js +63 -21
  10. package/dist/cjs/Canvas/utils/Custom/advancedLines.js.map +1 -1
  11. package/dist/cjs/Canvas/utils/Custom/customLines.d.ts.map +1 -1
  12. package/dist/cjs/Canvas/utils/Custom/customLines.js +3 -0
  13. package/dist/cjs/Canvas/utils/Custom/customLines.js.map +1 -1
  14. package/dist/cjs/Canvas/utils/types.d.ts +5 -1
  15. package/dist/cjs/Canvas/utils/types.d.ts.map +1 -1
  16. package/dist/cjs/Canvas/utils/types.js.map +1 -1
  17. package/dist/esm/Canvas/ApexPainter.d.ts +272 -0
  18. package/dist/esm/Canvas/ApexPainter.d.ts.map +1 -1
  19. package/dist/esm/Canvas/ApexPainter.js +2275 -125
  20. package/dist/esm/Canvas/ApexPainter.js.map +1 -1
  21. package/dist/esm/Canvas/utils/Custom/advancedLines.d.ts +4 -4
  22. package/dist/esm/Canvas/utils/Custom/advancedLines.d.ts.map +1 -1
  23. package/dist/esm/Canvas/utils/Custom/advancedLines.js +63 -21
  24. package/dist/esm/Canvas/utils/Custom/advancedLines.js.map +1 -1
  25. package/dist/esm/Canvas/utils/Custom/customLines.d.ts.map +1 -1
  26. package/dist/esm/Canvas/utils/Custom/customLines.js +3 -0
  27. package/dist/esm/Canvas/utils/Custom/customLines.js.map +1 -1
  28. package/dist/esm/Canvas/utils/types.d.ts +5 -1
  29. package/dist/esm/Canvas/utils/types.d.ts.map +1 -1
  30. package/dist/esm/Canvas/utils/types.js.map +1 -1
  31. package/lib/Canvas/ApexPainter.ts +2973 -136
  32. package/lib/Canvas/utils/Custom/advancedLines.ts +387 -335
  33. package/lib/Canvas/utils/Custom/customLines.ts +206 -202
  34. package/lib/Canvas/utils/types.ts +983 -979
  35. package/package.json +198 -200
package/CHANGELOG.md CHANGED
@@ -1,137 +1,337 @@
1
- # Changelog
2
-
3
- All notable changes to Apexify.js will be documented in this file.
4
-
5
- The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
- and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
-
8
- ## [5.0.0] - 2024-12-20
9
-
10
- ### 🎉 Major Feature Release - Advanced Image & Canvas Features
11
-
12
- #### Added
13
-
14
- ##### Background Enhancements
15
- - **Background Image Filters**: Apply filters directly to background images via `customBg.filters`
16
- - **Background Image Opacity**: Control background image transparency with `customBg.opacity`
17
- - **Video Backgrounds**: Support for video backgrounds with frame extraction via `videoBg` option
18
- - Extract specific frames from videos
19
- - Loop and autoplay support
20
- - Opacity control for video backgrounds
21
-
22
- ##### Image Processing Enhancements
23
- - **Image Masking**: Apply masks to images with multiple modes (`alpha`, `luminance`, `inverse`)
24
- - **Custom Clip Paths**: Define custom polygon clipping paths for images
25
- - **Image Distortion**:
26
- - Perspective distortion with 4-point control
27
- - Bulge/pinch effects with intensity control
28
- - Mesh warping with customizable grid control points
29
- - **Effects Stack**: Professional image effects
30
- - Vignette effect with intensity and size control
31
- - Lens flare with position and intensity
32
- - Chromatic aberration effect
33
- - Film grain effect
34
- - **Enhanced Filters**:
35
- - `filterIntensity` - Global intensity multiplier for all filters
36
- - `filterOrder` - Control when filters are applied (`pre` or `post` transformation)
37
-
38
- ##### Text Enhancements
39
- - **Text on Paths**: Render text along curves and paths
40
- - Support for line, arc, bezier, and quadratic curve paths
41
- - Offset control for text distance from path
42
- - Automatic text distribution along path
43
-
44
- ##### Custom Lines Enhancements
45
- - **Advanced Path Options**:
46
- - Smooth path interpolation with tension control
47
- - Bezier curve paths
48
- - Catmull-Rom spline paths
49
- - Closed path support
50
- - **Arrow Markers**:
51
- - Start and end arrows on lines
52
- - Customizable arrow size and style (filled/outline)
53
- - Color control for arrows
54
- - **Path Markers**:
55
- - Add markers at any position along a path (0-1)
56
- - Multiple marker shapes: circle, square, diamond, arrow
57
- - Customizable marker size and color
58
- - **Line Patterns**:
59
- - Built-in patterns: dots, dashes, custom segments
60
- - Pattern offset control
61
- - **Line Textures**: Apply texture images to lines
62
-
63
- ##### New Utility Methods
64
- - **Batch Operations**: `batch()` - Process multiple operations in parallel
65
- - **Chain Operations**: `chain()` - Chain operations sequentially
66
- - **Image Stitching**: `stitchImages()` - Stitch multiple images together
67
- - Horizontal, vertical, and grid layouts
68
- - Overlap and blend support
69
- - Spacing control
70
- - **Collage Maker**: `createCollage()` - Create image collages
71
- - Grid, masonry, carousel, and custom layouts
72
- - Automatic spacing and alignment
73
- - Background and border radius support
74
- - **Image Compression**: `compress()` - Compress images with quality control
75
- - Support for JPEG, WebP, and AVIF formats
76
- - Progressive JPEG support
77
- - Max width/height constraints
78
- - **Color Palette Extraction**: `extractPalette()` - Extract color palettes from images
79
- - Multiple algorithms: k-means, median-cut, octree
80
- - Customizable color count
81
- - Multiple output formats: hex, rgb, hsl
82
- - **Advanced Save Method**: `save()` - Save buffers to local files with extensive customization
83
- - Multiple file formats: PNG, JPEG, WebP, AVIF, GIF
84
- - Smart naming patterns: timestamp, counter, or custom
85
- - Auto-create directories
86
- - Quality control for JPEG/WebP
87
- - Prefix/suffix support
88
- - Overwrite protection with auto-renaming
89
- - Batch saving with `saveMultiple()`
90
- - Counter management with `resetSaveCounter()`
91
-
92
- #### 🔧 Technical Improvements
93
- - Added comprehensive TypeScript type definitions for all new features
94
- - Created utility modules for better code organization:
95
- - `imageMasking.ts` - Image masking and distortion utilities
96
- - `imageEffects.ts` - Image effects utilities
97
- - `textPathRenderer.ts` - Text path rendering utilities
98
- - `advancedLines.ts` - Advanced line drawing utilities
99
- - `batchOperations.ts` - Batch and chain operation utilities
100
- - `imageStitching.ts` - Image stitching and collage utilities
101
- - `imageCompression.ts` - Image compression and palette extraction utilities
102
- - Enhanced error handling and validation
103
- - Improved type safety across all new features
104
-
105
- #### 📚 Documentation
106
- - Updated README with new features
107
- - Added comprehensive examples for all new features
108
- - Enhanced API documentation
109
-
110
- ---
111
-
112
- ## [4.9.28] - Previous Release
113
-
114
- ### Features
115
- - Enhanced text renderer with decorations
116
- - Professional pattern system
117
- - Advanced gradient support
118
- - Comprehensive shape drawing
119
- - Chart generation capabilities
120
- - GIF creation support
121
-
122
- ---
123
-
124
- ## [4.9.0] - Initial Major Release
125
-
126
- ### Features
127
- - Core canvas creation
128
- - Image and shape drawing
129
- - Text rendering
130
- - Basic filters and effects
131
- - Format conversion
132
- - Background removal
133
-
134
- ---
135
-
136
- For a complete list of changes, please refer to the [GitHub repository](https://github.com/zenith-79/apexify.js).
137
-
1
+ # Changelog
2
+
3
+ All notable changes to Apexify.js will be documented in this file.
4
+
5
+ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
+ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
+
8
+ ## [5.1.0] - 2024-12-20
9
+
10
+ ### Added
11
+
12
+ ##### New Video Methods
13
+ - **`createVideo()`**: New method to create canvas with video frame as background
14
+ - Extract frames at specific time or frame number
15
+ - Custom canvas dimensions or auto-use video dimensions
16
+ - Returns `CanvasResults` compatible with other ApexPainter methods
17
+
18
+ ##### Comprehensive Video Processing Features (18 New Features!)
19
+ - **Video Effects/Filters** (`applyEffects`): Apply professional filters to entire videos
20
+ - Blur, brightness, contrast, saturation adjustments
21
+ - Grayscale, sepia, invert effects
22
+ - Sharpen and noise filters
23
+ - Chain multiple filters together
24
+
25
+ - **Video Merging** (`merge`): Combine multiple videos
26
+ - Sequential concatenation (one after another)
27
+ - Side-by-side layout
28
+ - Grid layouts with customizable rows/columns
29
+
30
+ - **Video Rotation/Flip** (`rotate`): Transform video orientation
31
+ - Rotate 90°, 180°, 270°
32
+ - Horizontal, vertical, or both flips
33
+ - Combined rotation and flip support
34
+
35
+ - **Video Cropping** (`crop`): Crop videos to specific regions
36
+ - Precise x, y, width, height control
37
+ - Remove black bars or focus on specific areas
38
+ - Maintain aspect ratio or create custom crops
39
+
40
+ - **Video Compression** (`compress`): Optimize video file sizes
41
+ - Quality presets: low, medium, high, ultra
42
+ - Custom bitrate control
43
+ - Target file size optimization
44
+ - Returns compression statistics (original vs compressed size)
45
+
46
+ - **Text Overlay** (`addText`): Add text/subtitles to videos
47
+ - 7 position options (top-left, top-center, top-right, center, bottom-left, bottom-center, bottom-right)
48
+ - Customizable font size, color, background
49
+ - Time-based visibility (start/end time control)
50
+ - Professional subtitle styling
51
+
52
+ - **Fade Effects** (`addFade`): Add fade transitions
53
+ - Fade in at video start
54
+ - Fade out at video end
55
+ - Configurable fade duration
56
+
57
+ - **Reverse Playback** (`reverse`): Reverse video and audio
58
+ - Create rewind effects
59
+ - Perfect for creative video editing
60
+
61
+ - **Video Loop Creation** (`createLoop`): Create seamless loops
62
+ - Automatic loop generation
63
+ - Smooth loop detection (optional)
64
+
65
+ - **Batch Processing** (`batch`): Process multiple videos at once
66
+ - Apply same or different operations to multiple videos
67
+ - Parallel processing support
68
+ - Comprehensive result reporting
69
+
70
+ - **Scene Detection** (`detectScenes`): Detect scene changes
71
+ - Automatic scene boundary detection
72
+ - Configurable threshold sensitivity
73
+ - Export scene markers to JSON
74
+
75
+ - **Video Stabilization** (`stabilize`): Reduce camera shake
76
+ - Two-pass stabilization algorithm
77
+ - Configurable smoothing factor
78
+ - Fallback to simple deshake if advanced features unavailable
79
+
80
+ - **Color Correction** (`colorCorrect`): Professional color grading
81
+ - Brightness, contrast, saturation adjustments
82
+ - Hue rotation
83
+ - Color temperature adjustment
84
+ - Professional color grading tools
85
+
86
+ - **Picture-in-Picture** (`pictureInPicture`): Add overlay videos
87
+ - 5 position options
88
+ - Customizable overlay size
89
+ - Opacity control
90
+ - Perfect for video overlays and annotations
91
+
92
+ - **Split Screen** (`splitScreen`): Create multi-video layouts
93
+ - Side-by-side layout
94
+ - Top-bottom layout
95
+ - Grid layouts (2x2, 3x3, etc.)
96
+ - Support for multiple video sources
97
+
98
+ - **Time-lapse Creation** (`createTimeLapse`): Speed up videos
99
+ - Configurable speed multiplier
100
+ - Create time-lapse from regular videos
101
+ - Maintain video quality
102
+
103
+ - **Mute Video** (`mute`): Remove audio track
104
+ - Quick audio removal
105
+ - Maintains video quality
106
+
107
+ - **Volume Adjustment** (`adjustVolume`): Control audio levels
108
+ - Volume multiplier (0.0 to 10.0)
109
+ - Mute, reduce, or amplify audio
110
+ - Precise volume control
111
+
112
+ - **Format Detection** (`detectFormat`): Analyze video properties
113
+ - Detect codec, container format
114
+ - Get resolution, FPS, bitrate
115
+ - Complete video metadata extraction
116
+
117
+ ### 🔧 Improved
118
+
119
+ ##### Enhanced `createVideo()` Method
120
+ - **Unified API**: All video features now accessible through single `createVideo()` method
121
+ - **Nested Options**: Clean, organized API with nested option objects
122
+ - **Better Error Handling**: Comprehensive error messages with FFmpeg installation guides
123
+ - **Resource Management**: Automatic cleanup of temporary files
124
+ - **Path Resolution**: Improved handling of relative paths and Buffer inputs
125
+
126
+ ##### Video Processing Performance
127
+ - **Optimized FFmpeg Commands**: Better command construction for all operations
128
+ - **Efficient Resource Usage**: Proper cleanup and memory management
129
+ - **Timeout Handling**: Appropriate timeouts for different operation types
130
+ - **Buffer Management**: Optimized buffer sizes for different operations
131
+
132
+ ##### Video Processing Enhancements
133
+ - **Better Path Resolution**: Relative video paths are now properly resolved
134
+ - Automatically resolves paths relative to `process.cwd()`
135
+ - Consistent with how `customBg` handles image paths
136
+ - Better error messages when video files are not found
137
+
138
+ - **Enhanced Error Handling**: More informative error messages
139
+ - Detailed FFmpeg installation instructions in error messages
140
+ - OS-specific installation guides (Windows, macOS, Linux)
141
+ - Clear error messages when frame extraction fails
142
+ - Validation for empty buffers and invalid dimensions
143
+
144
+ - **Improved Frame Loading**: Better compatibility with `loadImage`
145
+ - Fallback to file-based loading if buffer loading fails
146
+ - Automatic cleanup of temporary files
147
+ - Better handling of different pixel formats
148
+
149
+
150
+ ### 🐛 Fixed
151
+
152
+ ##### Video Background Fixes
153
+ - **Fixed Black Background Issue**: Resolved issue where `videoBg` in `createCanvas` was showing black background
154
+ - Restructured background drawing logic to include `videoBg` in if/else chain
155
+ - Prevents default black background from being drawn on top of video frames
156
+ - Video backgrounds now render correctly without black overlay
157
+
158
+ - **Fixed FFmpeg Command Issues**: Improved video frame extraction reliability
159
+ - Removed invalid format flags (`-f png`, `-f mjpeg`) that caused extraction failures
160
+ - Improved pixel format handling: PNG uses `rgba`, JPEG uses default format
161
+ - Better path resolution for relative video file paths
162
+ - Enhanced error messages with detailed FFmpeg installation instructions
163
+
164
+ - **Fixed Frame Extraction Quality**: Improved video frame extraction accuracy
165
+ - Better seeking accuracy by placing `-ss` after `-i` in FFmpeg commands
166
+ - Added fallback mechanism: saves frame to temp file if buffer loading fails
167
+ - Force PNG format for `videoBg` to ensure compatibility with `loadImage`
168
+ - Proper pixel format handling for color accuracy
169
+
170
+
171
+ ---
172
+
173
+ ## [5.0.5] - 2024-12-20
174
+
175
+ ### ✨ Enhanced
176
+
177
+ ##### Ultra-Smooth Line Rendering
178
+ - **Improved Smooth Path Algorithm**: Enhanced `createSmoothPath` function for graph-like smoothness
179
+ - Increased resolution from 20 to 50 segments per curve for ultra-smooth rendering
180
+ - Added high-quality anti-aliasing (`imageSmoothingQuality: 'high'`)
181
+ - Optimized Cardinal Spline algorithm for better curve interpolation
182
+ - Improved control point calculation for seamless transitions
183
+
184
+ - **Enhanced Catmull-Rom Spline**: Upgraded `createCatmullRomPath` for professional graph quality
185
+ - Increased resolution from 30 to 60 segments per curve (graph-quality smoothness)
186
+ - Fixed Catmull-Rom formula for correct tension handling
187
+ - Added high-quality anti-aliasing for pixel-perfect rendering
188
+ - Optimized spline interpolation for maximum smoothness
189
+
190
+ - **Anti-Aliasing Support**: Enabled high-quality image smoothing across all custom line rendering
191
+ - Automatic anti-aliasing in `customLines` function
192
+ - High-quality smoothing in both smooth and Catmull-Rom path types
193
+ - Ensures graph-like smoothness with no visible segments or sharp edges
194
+
195
+ #### 🎯 Performance & Quality
196
+ - **Ultra-High Resolution Curves**: Lines now render with 50-60 segments per curve (previously 20-30)
197
+ - **Graph-Quality Smoothness**: Lines match the smoothness of professional graphing libraries
198
+ - **Optimized Tension Values**: Lower default tension (0.15-0.2) for maximum smoothness
199
+ - **Seamless Transitions**: Improved curve interpolation eliminates visible segments
200
+
201
+ #### 📝 Usage Improvements
202
+ - **Better Defaults**: Optimized tension values for graph-like smoothness
203
+ - **Enhanced Documentation**: Updated examples with recommended settings for ultra-smooth lines
204
+ - **Flexible Configuration**: Support for tension values 0.1-0.3 for different smoothness levels
205
+
206
+ ---
207
+
208
+ ## [5.0.0] - 2024-12-20
209
+
210
+ ### 🎉 Major Feature Release - Advanced Image & Canvas Features
211
+
212
+ #### ✨ Added
213
+
214
+ ##### Background Enhancements
215
+ - **Background Image Filters**: Apply filters directly to background images via `customBg.filters`
216
+ - **Background Image Opacity**: Control background image transparency with `customBg.opacity`
217
+ - **Video Backgrounds**: Support for video backgrounds with frame extraction via `videoBg` option
218
+ - Extract specific frames from videos
219
+ - Loop and autoplay support
220
+ - Opacity control for video backgrounds
221
+
222
+ ##### Image Processing Enhancements
223
+ - **Image Masking**: Apply masks to images with multiple modes (`alpha`, `luminance`, `inverse`)
224
+ - **Custom Clip Paths**: Define custom polygon clipping paths for images
225
+ - **Image Distortion**:
226
+ - Perspective distortion with 4-point control
227
+ - Bulge/pinch effects with intensity control
228
+ - Mesh warping with customizable grid control points
229
+ - **Effects Stack**: Professional image effects
230
+ - Vignette effect with intensity and size control
231
+ - Lens flare with position and intensity
232
+ - Chromatic aberration effect
233
+ - Film grain effect
234
+ - **Enhanced Filters**:
235
+ - `filterIntensity` - Global intensity multiplier for all filters
236
+ - `filterOrder` - Control when filters are applied (`pre` or `post` transformation)
237
+
238
+ ##### Text Enhancements
239
+ - **Text on Paths**: Render text along curves and paths
240
+ - Support for line, arc, bezier, and quadratic curve paths
241
+ - Offset control for text distance from path
242
+ - Automatic text distribution along path
243
+
244
+ ##### Custom Lines Enhancements
245
+ - **Advanced Path Options**:
246
+ - Smooth path interpolation with tension control
247
+ - Bezier curve paths
248
+ - Catmull-Rom spline paths
249
+ - Closed path support
250
+ - **Arrow Markers**:
251
+ - Start and end arrows on lines
252
+ - Customizable arrow size and style (filled/outline)
253
+ - Color control for arrows
254
+ - **Path Markers**:
255
+ - Add markers at any position along a path (0-1)
256
+ - Multiple marker shapes: circle, square, diamond, arrow
257
+ - Customizable marker size and color
258
+ - **Line Patterns**:
259
+ - Built-in patterns: dots, dashes, custom segments
260
+ - Pattern offset control
261
+ - **Line Textures**: Apply texture images to lines
262
+
263
+ ##### New Utility Methods
264
+ - **Batch Operations**: `batch()` - Process multiple operations in parallel
265
+ - **Chain Operations**: `chain()` - Chain operations sequentially
266
+ - **Image Stitching**: `stitchImages()` - Stitch multiple images together
267
+ - Horizontal, vertical, and grid layouts
268
+ - Overlap and blend support
269
+ - Spacing control
270
+ - **Collage Maker**: `createCollage()` - Create image collages
271
+ - Grid, masonry, carousel, and custom layouts
272
+ - Automatic spacing and alignment
273
+ - Background and border radius support
274
+ - **Image Compression**: `compress()` - Compress images with quality control
275
+ - Support for JPEG, WebP, and AVIF formats
276
+ - Progressive JPEG support
277
+ - Max width/height constraints
278
+ - **Color Palette Extraction**: `extractPalette()` - Extract color palettes from images
279
+ - Multiple algorithms: k-means, median-cut, octree
280
+ - Customizable color count
281
+ - Multiple output formats: hex, rgb, hsl
282
+ - **Advanced Save Method**: `save()` - Save buffers to local files with extensive customization
283
+ - Multiple file formats: PNG, JPEG, WebP, AVIF, GIF
284
+ - Smart naming patterns: timestamp, counter, or custom
285
+ - Auto-create directories
286
+ - Quality control for JPEG/WebP
287
+ - Prefix/suffix support
288
+ - Overwrite protection with auto-renaming
289
+ - Batch saving with `saveMultiple()`
290
+ - Counter management with `resetSaveCounter()`
291
+
292
+ #### 🔧 Technical Improvements
293
+ - Added comprehensive TypeScript type definitions for all new features
294
+ - Created utility modules for better code organization:
295
+ - `imageMasking.ts` - Image masking and distortion utilities
296
+ - `imageEffects.ts` - Image effects utilities
297
+ - `textPathRenderer.ts` - Text path rendering utilities
298
+ - `advancedLines.ts` - Advanced line drawing utilities
299
+ - `batchOperations.ts` - Batch and chain operation utilities
300
+ - `imageStitching.ts` - Image stitching and collage utilities
301
+ - `imageCompression.ts` - Image compression and palette extraction utilities
302
+ - Enhanced error handling and validation
303
+ - Improved type safety across all new features
304
+
305
+ #### 📚 Documentation
306
+ - Updated README with new features
307
+ - Added comprehensive examples for all new features
308
+ - Enhanced API documentation
309
+
310
+ ---
311
+
312
+ ## [4.9.28] - Previous Release
313
+
314
+ ### Features
315
+ - Enhanced text renderer with decorations
316
+ - Professional pattern system
317
+ - Advanced gradient support
318
+ - Comprehensive shape drawing
319
+ - Chart generation capabilities
320
+ - GIF creation support
321
+
322
+ ---
323
+
324
+ ## [4.9.0] - Initial Major Release
325
+
326
+ ### Features
327
+ - Core canvas creation
328
+ - Image and shape drawing
329
+ - Text rendering
330
+ - Basic filters and effects
331
+ - Format conversion
332
+ - Background removal
333
+
334
+ ---
335
+
336
+ For a complete list of changes, please refer to the [GitHub repository](https://github.com/zenith-79/apexify.js).
337
+
package/README.md CHANGED
@@ -202,6 +202,35 @@ Generate game assets and UI elements:
202
202
  - **Chain Operations**: Chain operations sequentially for complex workflows
203
203
  - **Advanced File Saving**: Save buffers to local files with smart naming, format conversion, and batch support
204
204
 
205
+ ### 🎬 **Comprehensive Video Processing** (v5.2.0+)
206
+ - **Frame Extraction**: Extract single frames, multiple frames, or all frames from videos
207
+ - **Video Information**: Get video metadata (duration, resolution, FPS, bitrate, codec)
208
+ - **Thumbnail Generation**: Create grid thumbnails with multiple frames
209
+ - **Format Conversion**: Convert videos between MP4, WebM, AVI, MOV, MKV
210
+ - **Video Trimming**: Cut and trim video segments
211
+ - **Audio Extraction**: Extract audio tracks (MP3, WAV, AAC, OGG)
212
+ - **Watermarking**: Add image watermarks to videos with position and opacity control
213
+ - **Speed Control**: Change video playback speed (slow motion, fast forward)
214
+ - **Preview Generation**: Generate preview frames for video browsing
215
+ - **Video Effects**: Apply filters (blur, brightness, contrast, saturation, grayscale, sepia, invert, sharpen, noise)
216
+ - **Video Merging**: Concatenate videos sequentially, side-by-side, or in grids
217
+ - **Rotation & Flipping**: Rotate videos (90°, 180°, 270°) and flip horizontally/vertically
218
+ - **Video Cropping**: Crop videos to specific regions
219
+ - **Compression**: Optimize video file sizes with quality presets
220
+ - **Text Overlays**: Add text/subtitles to videos with positioning and timing
221
+ - **Fade Effects**: Add fade in/out transitions
222
+ - **Reverse Playback**: Reverse video and audio playback
223
+ - **Video Loops**: Create seamless video loops
224
+ - **Batch Processing**: Process multiple videos with different operations
225
+ - **Scene Detection**: Automatically detect scene changes
226
+ - **Video Stabilization**: Reduce camera shake and stabilize shaky footage
227
+ - **Color Correction**: Professional color grading (brightness, contrast, saturation, hue, temperature)
228
+ - **Picture-in-Picture**: Add overlay videos with position, size, and opacity control
229
+ - **Split Screen**: Create side-by-side, top-bottom, or grid layouts with multiple videos
230
+ - **Time-lapse Creation**: Speed up videos to create time-lapse effects
231
+ - **Audio Control**: Mute videos or adjust audio volume
232
+ - **Format Detection**: Analyze video codec, container, and properties
233
+
205
234
  ---
206
235
 
207
236
  ## 🚀 Quick Start
@@ -828,9 +857,37 @@ This allows you to add multiple elements in one call for better performance and
828
857
 
829
858
  ---
830
859
 
831
- ## 🆕 What's New in v5.0.0
832
-
833
- ### 🎉 Major Feature Release
860
+ ## 🆕 What's New
861
+
862
+ ### 🎬 v5.2.0 - Comprehensive Video Processing Suite
863
+
864
+ #### 18 New Video Features
865
+ - 🎥 **Video Effects & Filters**: Apply professional filters (blur, brightness, contrast, saturation, grayscale, sepia, invert, sharpen, noise)
866
+ - 🔗 **Video Merging**: Concatenate videos sequentially, side-by-side, or in grid layouts
867
+ - 🔄 **Rotation & Flipping**: Rotate videos (90°, 180°, 270°) and flip horizontally/vertically
868
+ - ✂️ **Video Cropping**: Crop videos to specific regions with precise control
869
+ - 📦 **Video Compression**: Optimize video file sizes with quality presets and custom bitrate
870
+ - 📝 **Text Overlays**: Add text/subtitles to videos with 7 position options and time-based visibility
871
+ - 🌅 **Fade Effects**: Add fade in/out transitions at video start/end
872
+ - ⏪ **Reverse Playback**: Reverse video and audio playback
873
+ - 🔁 **Video Loops**: Create seamless video loops
874
+ - ⚡ **Batch Processing**: Process multiple videos with different operations
875
+ - 🎬 **Scene Detection**: Automatically detect scene changes with configurable threshold
876
+ - 📹 **Video Stabilization**: Reduce camera shake and stabilize shaky footage
877
+ - 🎨 **Color Correction**: Professional color grading (brightness, contrast, saturation, hue, temperature)
878
+ - 📺 **Picture-in-Picture**: Add overlay videos with position, size, and opacity control
879
+ - 🖼️ **Split Screen**: Create side-by-side, top-bottom, or grid layouts with multiple videos
880
+ - ⏱️ **Time-lapse Creation**: Speed up videos to create time-lapse effects
881
+ - 🔇 **Audio Control**: Mute videos or adjust audio volume
882
+ - 🔍 **Format Detection**: Analyze video codec, container, and properties
883
+
884
+ #### Enhanced Video Methods
885
+ - ✅ **Smart Audio Detection**: Automatically detects if videos have audio streams
886
+ - ✅ **Unified API**: All video features accessible through single `createVideo()` method
887
+ - ✅ **Better Error Handling**: Clear error messages with FFmpeg installation guides
888
+ - ✅ **Resource Management**: Automatic cleanup of temporary files
889
+
890
+ ### 🎉 v5.0.0 - Major Feature Release
834
891
 
835
892
  #### Background Enhancements
836
893
  - ✨ **Video Backgrounds**: Use video frames as dynamic backgrounds
@@ -1074,11 +1131,7 @@ Comprehensive video series covering:
1074
1131
  - Advanced features and techniques
1075
1132
 
1076
1133
  ### 📚 **Documentation**
1077
- - [Full API Reference](http://apexifyjs.jedi-studio.com)
1078
- - [Examples Gallery](#examples)
1079
- - [TypeScript Types](#typescript-support)
1080
- - [Performance Guide](#performance)
1081
-
1134
+ - [Full API Reference](https://apexifyjs.vercel.app)
1082
1135
  ---
1083
1136
 
1084
1137
  ## 🤝 Contributing
@@ -1094,7 +1147,7 @@ We welcome contributions! Here's how you can help:
1094
1147
 
1095
1148
  ```bash
1096
1149
  # Clone the repository
1097
- git clone https://github.com/your-username/apexify.git
1150
+ git clone https://github.com/EIAS79/Apexify.js.git
1098
1151
 
1099
1152
  # Install dependencies
1100
1153
  npm install
@@ -1115,12 +1168,12 @@ npm run build
1115
1168
  ### Join Our Discord Community
1116
1169
 
1117
1170
  [![Jedi Studio](https://img.shields.io/badge/Discord-Jedi%20Studio-7289DA?style=for-the-badge&logo=discord)](https://discord.gg/CS2NRSPyze)
1118
- [![FresedGPT](https://img.shields.io/badge/Discord-FresedGPT-7289DA?style=for-the-badge&logo=discord)](https://discord.gg/94qUZWhwFE)
1119
- [![ElectronHub](https://img.shields.io/badge/Discord-ElectronHub-7289DA?style=for-the-badge&logo=discord)](https://discord.gg/83XcjD8vgW)
1171
+ [![Ethical Programming](https://img.shields.io/badge/Discord-FresedGPT-7289DA?style=for-the-badge&logo=discord)](https://discord.gg/94qUZWhwFE)
1172
+
1120
1173
 
1121
1174
  ### Documentation & Resources
1122
1175
 
1123
- [![Documentation](https://img.shields.io/badge/Docs-Apexify.js-blue?style=for-the-badge)](http://apexifyjs.jedi-studio.com)
1176
+ [![Documentation](https://img.shields.io/badge/Docs-Apexify.js-blue?style=for-the-badge)](https://apexifyjs.vercel.app)
1124
1177
  [![Support Server](https://img.shields.io/badge/Support-Discord-7289DA?style=for-the-badge&logo=discord)](https://discord.gg/mDyXV9hzXw)
1125
1178
 
1126
1179
  </div>