node-av 1.1.0 → 1.3.0

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 (166) hide show
  1. package/README.md +51 -59
  2. package/dist/api/bitstream-filter.d.ts +183 -123
  3. package/dist/api/bitstream-filter.js +185 -127
  4. package/dist/api/bitstream-filter.js.map +1 -1
  5. package/dist/api/decoder.d.ts +282 -130
  6. package/dist/api/decoder.js +290 -142
  7. package/dist/api/decoder.js.map +1 -1
  8. package/dist/api/encoder.d.ts +249 -160
  9. package/dist/api/encoder.js +276 -207
  10. package/dist/api/encoder.js.map +1 -1
  11. package/dist/api/filter-presets.d.ts +1944 -96
  12. package/dist/api/filter-presets.js +2059 -105
  13. package/dist/api/filter-presets.js.map +1 -1
  14. package/dist/api/filter.d.ts +264 -200
  15. package/dist/api/filter.js +269 -231
  16. package/dist/api/filter.js.map +1 -1
  17. package/dist/api/hardware.d.ts +246 -117
  18. package/dist/api/hardware.js +440 -217
  19. package/dist/api/hardware.js.map +1 -1
  20. package/dist/api/index.d.ts +3 -3
  21. package/dist/api/index.js +1 -1
  22. package/dist/api/index.js.map +1 -1
  23. package/dist/api/io-stream.d.ts +65 -55
  24. package/dist/api/io-stream.js +43 -40
  25. package/dist/api/io-stream.js.map +1 -1
  26. package/dist/api/media-input.d.ts +242 -139
  27. package/dist/api/media-input.js +205 -103
  28. package/dist/api/media-input.js.map +1 -1
  29. package/dist/api/media-output.d.ts +208 -126
  30. package/dist/api/media-output.js +212 -126
  31. package/dist/api/media-output.js.map +1 -1
  32. package/dist/api/pipeline.d.ts +361 -38
  33. package/dist/api/pipeline.js +255 -14
  34. package/dist/api/pipeline.js.map +1 -1
  35. package/dist/api/types.d.ts +26 -187
  36. package/dist/api/utilities/audio-sample.d.ts +0 -8
  37. package/dist/api/utilities/audio-sample.js +0 -8
  38. package/dist/api/utilities/audio-sample.js.map +1 -1
  39. package/dist/api/utilities/channel-layout.d.ts +0 -8
  40. package/dist/api/utilities/channel-layout.js +0 -8
  41. package/dist/api/utilities/channel-layout.js.map +1 -1
  42. package/dist/api/utilities/image.d.ts +0 -8
  43. package/dist/api/utilities/image.js +0 -8
  44. package/dist/api/utilities/image.js.map +1 -1
  45. package/dist/api/utilities/index.d.ts +3 -3
  46. package/dist/api/utilities/index.js +3 -3
  47. package/dist/api/utilities/index.js.map +1 -1
  48. package/dist/api/utilities/media-type.d.ts +1 -9
  49. package/dist/api/utilities/media-type.js +1 -9
  50. package/dist/api/utilities/media-type.js.map +1 -1
  51. package/dist/api/utilities/pixel-format.d.ts +1 -9
  52. package/dist/api/utilities/pixel-format.js +1 -9
  53. package/dist/api/utilities/pixel-format.js.map +1 -1
  54. package/dist/api/utilities/sample-format.d.ts +1 -9
  55. package/dist/api/utilities/sample-format.js +1 -9
  56. package/dist/api/utilities/sample-format.js.map +1 -1
  57. package/dist/api/utilities/streaming.d.ts +0 -8
  58. package/dist/api/utilities/streaming.js +0 -8
  59. package/dist/api/utilities/streaming.js.map +1 -1
  60. package/dist/api/utilities/timestamp.d.ts +0 -8
  61. package/dist/api/utilities/timestamp.js +0 -8
  62. package/dist/api/utilities/timestamp.js.map +1 -1
  63. package/dist/api/utils.d.ts +1 -2
  64. package/dist/api/utils.js +11 -0
  65. package/dist/api/utils.js.map +1 -1
  66. package/dist/constants/constants.d.ts +1 -1
  67. package/dist/constants/constants.js +2 -0
  68. package/dist/constants/constants.js.map +1 -1
  69. package/dist/lib/audio-fifo.d.ts +127 -170
  70. package/dist/lib/audio-fifo.js +130 -173
  71. package/dist/lib/audio-fifo.js.map +1 -1
  72. package/dist/lib/binding.d.ts +1 -0
  73. package/dist/lib/binding.js +7 -0
  74. package/dist/lib/binding.js.map +1 -1
  75. package/dist/lib/bitstream-filter-context.d.ts +139 -184
  76. package/dist/lib/bitstream-filter-context.js +139 -188
  77. package/dist/lib/bitstream-filter-context.js.map +1 -1
  78. package/dist/lib/bitstream-filter.d.ts +68 -54
  79. package/dist/lib/bitstream-filter.js +68 -54
  80. package/dist/lib/bitstream-filter.js.map +1 -1
  81. package/dist/lib/codec-context.d.ts +316 -380
  82. package/dist/lib/codec-context.js +316 -381
  83. package/dist/lib/codec-context.js.map +1 -1
  84. package/dist/lib/codec-parameters.d.ts +160 -170
  85. package/dist/lib/codec-parameters.js +162 -172
  86. package/dist/lib/codec-parameters.js.map +1 -1
  87. package/dist/lib/codec-parser.d.ts +91 -104
  88. package/dist/lib/codec-parser.js +92 -103
  89. package/dist/lib/codec-parser.js.map +1 -1
  90. package/dist/lib/codec.d.ts +266 -283
  91. package/dist/lib/codec.js +270 -287
  92. package/dist/lib/codec.js.map +1 -1
  93. package/dist/lib/dictionary.d.ts +149 -203
  94. package/dist/lib/dictionary.js +158 -212
  95. package/dist/lib/dictionary.js.map +1 -1
  96. package/dist/lib/error.d.ts +96 -130
  97. package/dist/lib/error.js +98 -128
  98. package/dist/lib/error.js.map +1 -1
  99. package/dist/lib/filter-context.d.ts +284 -218
  100. package/dist/lib/filter-context.js +290 -227
  101. package/dist/lib/filter-context.js.map +1 -1
  102. package/dist/lib/filter-graph.d.ts +251 -292
  103. package/dist/lib/filter-graph.js +253 -294
  104. package/dist/lib/filter-graph.js.map +1 -1
  105. package/dist/lib/filter-inout.d.ts +87 -95
  106. package/dist/lib/filter-inout.js +87 -95
  107. package/dist/lib/filter-inout.js.map +1 -1
  108. package/dist/lib/filter.d.ts +93 -111
  109. package/dist/lib/filter.js +93 -111
  110. package/dist/lib/filter.js.map +1 -1
  111. package/dist/lib/format-context.d.ts +320 -428
  112. package/dist/lib/format-context.js +313 -385
  113. package/dist/lib/format-context.js.map +1 -1
  114. package/dist/lib/frame.d.ts +262 -405
  115. package/dist/lib/frame.js +263 -408
  116. package/dist/lib/frame.js.map +1 -1
  117. package/dist/lib/hardware-device-context.d.ts +149 -203
  118. package/dist/lib/hardware-device-context.js +149 -203
  119. package/dist/lib/hardware-device-context.js.map +1 -1
  120. package/dist/lib/hardware-frames-context.d.ts +170 -180
  121. package/dist/lib/hardware-frames-context.js +171 -181
  122. package/dist/lib/hardware-frames-context.js.map +1 -1
  123. package/dist/lib/index.d.ts +3 -2
  124. package/dist/lib/index.js +3 -3
  125. package/dist/lib/index.js.map +1 -1
  126. package/dist/lib/input-format.d.ts +89 -117
  127. package/dist/lib/input-format.js +89 -117
  128. package/dist/lib/input-format.js.map +1 -1
  129. package/dist/lib/io-context.d.ts +209 -241
  130. package/dist/lib/io-context.js +220 -252
  131. package/dist/lib/io-context.js.map +1 -1
  132. package/dist/lib/log.d.ts +85 -119
  133. package/dist/lib/log.js +85 -122
  134. package/dist/lib/log.js.map +1 -1
  135. package/dist/lib/native-types.d.ts +118 -106
  136. package/dist/lib/native-types.js +0 -7
  137. package/dist/lib/native-types.js.map +1 -1
  138. package/dist/lib/option.d.ts +437 -218
  139. package/dist/lib/option.js +462 -226
  140. package/dist/lib/option.js.map +1 -1
  141. package/dist/lib/output-format.d.ts +77 -101
  142. package/dist/lib/output-format.js +77 -101
  143. package/dist/lib/output-format.js.map +1 -1
  144. package/dist/lib/packet.d.ts +172 -240
  145. package/dist/lib/packet.js +172 -241
  146. package/dist/lib/packet.js.map +1 -1
  147. package/dist/lib/rational.d.ts +0 -2
  148. package/dist/lib/rational.js +0 -2
  149. package/dist/lib/rational.js.map +1 -1
  150. package/dist/lib/software-resample-context.d.ts +241 -325
  151. package/dist/lib/software-resample-context.js +242 -326
  152. package/dist/lib/software-resample-context.js.map +1 -1
  153. package/dist/lib/software-scale-context.d.ts +129 -173
  154. package/dist/lib/software-scale-context.js +131 -175
  155. package/dist/lib/software-scale-context.js.map +1 -1
  156. package/dist/lib/stream.d.ts +87 -197
  157. package/dist/lib/stream.js +87 -197
  158. package/dist/lib/stream.js.map +1 -1
  159. package/dist/lib/utilities.d.ts +435 -181
  160. package/dist/lib/utilities.js +438 -182
  161. package/dist/lib/utilities.js.map +1 -1
  162. package/install/check.js +0 -1
  163. package/install/ffmpeg.js +0 -11
  164. package/package.json +25 -18
  165. package/release_notes.md +24 -59
  166. package/CHANGELOG.md +0 -8
@@ -1 +1 @@
1
- {"version":3,"file":"filter.js","sourceRoot":"","sources":["../../src/api/filter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"filter.js","sourceRoot":"","sources":["../../src/api/filter.ts"],"names":[],"mappings":"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"}
@@ -1,68 +1,58 @@
1
- /**
2
- * HardwareContext - High-level Hardware Acceleration API
3
- *
4
- * Provides simplified access to hardware acceleration features.
5
- * Automatically detects and configures hardware devices for encoding/decoding.
6
- *
7
- * Wraps the low-level HardwareDeviceContext.
8
- * Manages lifecycle of hardware resources with automatic cleanup.
9
- *
10
- * @module api/hardware
11
- */
12
- import { HardwareDeviceContext } from '../lib/index.js';
1
+ import { Codec, HardwareDeviceContext } from '../lib/index.js';
13
2
  import { HardwareFilterPresets } from './filter-presets.js';
14
- import type { AVCodecID, AVHWDeviceType, AVPixelFormat, FFEncoderCodec } from '../constants/index.js';
15
- import type { HardwareBaseCodecName, HardwareOptions } from './types.js';
3
+ import type { AVCodecID, AVHWDeviceType, AVPixelFormat } from '../constants/index.js';
4
+ import type { BaseCodecName, HardwareOptions } from './types.js';
16
5
  /**
17
- * HardwareContext - Simplified hardware acceleration management.
18
- *
19
- * Provides automatic detection and configuration of hardware acceleration.
20
- * Manages device contexts and frame contexts for hardware encoding/decoding.
6
+ * High-level hardware acceleration management.
21
7
  *
22
- * Supports various hardware types including VideoToolbox (macOS), CUDA,
23
- * VAAPI (Linux), D3D11VA/D3D12VA (Windows), and more.
8
+ * Provides automatic detection and configuration of hardware acceleration for media processing.
9
+ * Manages device contexts for GPU-accelerated encoding and decoding operations.
10
+ * Supports various hardware types including VideoToolbox, CUDA, VAAPI, D3D11VA, and more.
11
+ * Essential for high-performance video processing with reduced CPU usage.
24
12
  *
25
13
  * @example
26
14
  * ```typescript
27
15
  * import { HardwareContext } from 'node-av/api';
16
+ * import { AV_HWDEVICE_TYPE_CUDA } from 'node-av/constants';
28
17
  *
29
18
  * // Auto-detect best available hardware
30
- * const hw = await HardwareContext.auto();
19
+ * const hw = HardwareContext.auto();
31
20
  * if (hw) {
32
- * console.log(`Using hardware: ${hw.deviceType}`);
33
- * decoder.hwDeviceCtx = hw.deviceContext;
21
+ * console.log(`Using hardware: ${hw.deviceTypeName}`);
22
+ * const decoder = await Decoder.create(stream, { hardware: hw });
34
23
  * }
24
+ * ```
35
25
  *
36
- * // Use specific hardware
37
- * const cuda = await HardwareContext.create(AV_HWDEVICE_TYPE_CUDA);
38
- * encoder.hwDeviceCtx = cuda.deviceContext;
39
- *
40
- * // Clean up when done
41
- * hw?.dispose();
26
+ * @example
27
+ * ```typescript
28
+ * // Use specific hardware type
29
+ * const cuda = HardwareContext.create(AV_HWDEVICE_TYPE_CUDA);
30
+ * const encoder = await Encoder.create('h264_nvenc', streamInfo, {
31
+ * hardware: cuda
32
+ * });
42
33
  * cuda.dispose();
43
34
  * ```
35
+ *
36
+ * @see {@link Decoder} For hardware-accelerated decoding
37
+ * @see {@link Encoder} For hardware-accelerated encoding
38
+ * @see {@link HardwareFilterPresets} For hardware filter operations
44
39
  */
45
40
  export declare class HardwareContext implements Disposable {
46
- private _deviceContext;
47
- private _deviceType;
48
- private _deviceTypeName;
49
- private _devicePixelFormat;
50
- private _isDisposed;
51
41
  /**
52
42
  * Hardware-specific filter presets for this device.
53
43
  * Provides convenient filter builders for hardware-accelerated operations.
54
44
  */
55
45
  readonly filterPresets: HardwareFilterPresets;
46
+ private _deviceContext;
47
+ private _deviceType;
48
+ private _deviceTypeName;
49
+ private _devicePixelFormat;
50
+ private _isDisposed;
56
51
  /**
57
- * Create a new HardwareContext instance.
58
- *
59
- * Private constructor - use HardwareContext.create() or HardwareContext.auto() to create instances.
60
- *
61
- * Stores the device context and type for later use.
62
- *
63
52
  * @param deviceContext - Initialized hardware device context
64
- * @param deviceType - Hardware device type
65
- * @param deviceName - Optional device name/identifier
53
+ * @param deviceType - Hardware device type enum
54
+ * @param deviceTypeName - Human-readable device type name
55
+ * @internal
66
56
  */
67
57
  private constructor();
68
58
  /**
@@ -70,54 +60,77 @@ export declare class HardwareContext implements Disposable {
70
60
  *
71
61
  * Tries hardware types in order of preference based on platform.
72
62
  * Returns null if no hardware acceleration is available.
73
- *
74
- * Platform-specific preferences:
75
- * - macOS: VideoToolbox
76
- * - Windows: D3D12VA, D3D11VA, DXVA2, QSV, CUDA
77
- * - Linux: VAAPI, VDPAU, CUDA, Vulkan, DRM
63
+ * Platform-specific preference order ensures optimal performance.
78
64
  *
79
65
  * @param options - Optional hardware configuration
80
- *
81
- * @returns Promise resolving to HardwareContext or null
66
+ * @returns Hardware context or null if unavailable
82
67
  *
83
68
  * @example
84
69
  * ```typescript
85
- * const hw = await HardwareContext.auto();
70
+ * const hw = HardwareContext.auto();
86
71
  * if (hw) {
87
72
  * console.log(`Auto-detected: ${hw.deviceTypeName}`);
73
+ * // Use for decoder/encoder
88
74
  * }
89
75
  * ```
76
+ *
77
+ * @example
78
+ * ```typescript
79
+ * // With specific device
80
+ * const hw = HardwareContext.auto({
81
+ * deviceName: '/dev/dri/renderD128'
82
+ * });
83
+ * ```
84
+ *
85
+ * @see {@link create} For specific hardware type
86
+ * @see {@link listAvailable} To check available types
90
87
  */
91
- static auto(options?: HardwareOptions): Promise<HardwareContext | null>;
88
+ static auto(options?: HardwareOptions): HardwareContext | null;
92
89
  /**
93
90
  * Create a hardware context for a specific device type.
94
91
  *
95
- * Creates and initializes a hardware device context using FFmpeg's
96
- * av_hwdevice_ctx_create() internally.
92
+ * Creates and initializes a hardware device context.
93
+ * Throws if the device type is not supported or initialization fails.
97
94
  *
98
- * @param device - Device type name (e.g., AV_HWDEVICE_TYPE_CUDA, AV_HWDEVICE_TYPE_VAAPI, AV_HWDEVICE_TYPE_VIDEOTOOLBOX)
99
- * @param deviceName - Optional device name/index
95
+ * Direct mapping to av_hwdevice_ctx_create().
96
+ *
97
+ * @param deviceType - Hardware device type from AVHWDeviceType
98
+ * @param device - Optional device specifier (e.g., GPU index, device path)
100
99
  * @param options - Optional device initialization options
100
+ * @returns Initialized hardware context
101
+ *
102
+ * @throws {Error} If device type unsupported or initialization fails
101
103
  *
102
- * @returns Promise resolving to HardwareContext
104
+ * @example
105
+ * ```typescript
106
+ * import { AV_HWDEVICE_TYPE_CUDA } from 'node-av/constants';
103
107
  *
104
- * @throws {Error} If device type is not supported or initialization fails
108
+ * // CUDA with specific GPU
109
+ * const cuda = HardwareContext.create(AV_HWDEVICE_TYPE_CUDA, '0');
110
+ * ```
105
111
  *
106
112
  * @example
107
113
  * ```typescript
108
- * // Create CUDA context
109
- * const cuda = await HardwareContext.create(AV_HWDEVICE_TYPE_CUDA, '0');
114
+ * import { AV_HWDEVICE_TYPE_VAAPI } from 'node-av/constants';
110
115
  *
111
- * // Create VAAPI context
112
- * const vaapi = await HardwareContext.create(AV_HWDEVICE_TYPE_VAAPI, '/dev/dri/renderD128');
116
+ * // VAAPI with render device
117
+ * const vaapi = HardwareContext.create(
118
+ * AV_HWDEVICE_TYPE_VAAPI,
119
+ * '/dev/dri/renderD128'
120
+ * );
113
121
  * ```
122
+ *
123
+ * @see {@link auto} For automatic detection
124
+ * @see {@link HardwareDeviceContext} For low-level API
114
125
  */
115
- static create(device: AVHWDeviceType, deviceName?: string, options?: Record<string, string>): Promise<HardwareContext>;
126
+ static create(deviceType: AVHWDeviceType, device?: string, options?: Record<string, string>): HardwareContext;
116
127
  /**
117
128
  * List all available hardware device types.
118
129
  *
119
- * Uses av_hwdevice_iterate_types() internally to enumerate
120
- * all hardware types supported by the FFmpeg build.
130
+ * Enumerates all hardware types supported by the FFmpeg build.
131
+ * Useful for checking hardware capabilities at runtime.
132
+ *
133
+ * Direct mapping to av_hwdevice_iterate_types().
121
134
  *
122
135
  * @returns Array of available device type names
123
136
  *
@@ -125,154 +138,270 @@ export declare class HardwareContext implements Disposable {
125
138
  * ```typescript
126
139
  * const available = HardwareContext.listAvailable();
127
140
  * console.log('Available hardware:', available.join(', '));
141
+ * // Output: "cuda, vaapi, videotoolbox"
128
142
  * ```
143
+ *
144
+ * @see {@link auto} For automatic selection
129
145
  */
130
146
  static listAvailable(): string[];
131
147
  /**
132
148
  * Get the hardware device context.
133
149
  *
134
- * This can be assigned to CodecContext.hwDeviceCtx for hardware acceleration.
150
+ * Used internally by encoders and decoders for hardware acceleration.
151
+ * Can be assigned to CodecContext.hwDeviceCtx.
135
152
  *
136
- * @returns Hardware device context
153
+ * @example
154
+ * ```typescript
155
+ * codecContext.hwDeviceCtx = hw.deviceContext;
156
+ * ```
137
157
  */
138
158
  get deviceContext(): HardwareDeviceContext;
139
159
  /**
140
160
  * Get the device type enum value.
141
161
  *
142
- * @returns AVHWDeviceType enum value
162
+ * @example
163
+ * ```typescript
164
+ * if (hw.deviceType === AV_HWDEVICE_TYPE_CUDA) {
165
+ * console.log('Using NVIDIA GPU');
166
+ * }
167
+ * ```
143
168
  */
144
169
  get deviceType(): AVHWDeviceType;
145
170
  /**
146
171
  * Get the hardware device type name.
147
172
  *
148
- * Uses FFmpeg's native av_hwdevice_get_type_name() function.
173
+ * Human-readable device type string.
149
174
  *
150
- * @returns Device type name as string (e.g., 'cuda', 'videotoolbox')
175
+ * @example
176
+ * ```typescript
177
+ * console.log(`Hardware type: ${hw.deviceTypeName}`);
178
+ * // Output: "cuda" or "videotoolbox" etc.
179
+ * ```
151
180
  */
152
- get deviceTypeName(): string | null;
181
+ get deviceTypeName(): string;
153
182
  /**
154
183
  * Get the device pixel format.
155
184
  *
156
- * @returns Device pixel format
185
+ * Hardware-specific pixel format for frame allocation.
186
+ *
187
+ * @example
188
+ * ```typescript
189
+ * frame.format = hw.devicePixelFormat;
190
+ * ```
157
191
  */
158
192
  get devicePixelFormat(): AVPixelFormat;
159
193
  /**
160
194
  * Check if this hardware context has been disposed.
161
195
  *
162
- * @returns True if disposed
196
+ * @example
197
+ * ```typescript
198
+ * if (!hw.isDisposed) {
199
+ * hw.dispose();
200
+ * }
201
+ * ```
163
202
  */
164
203
  get isDisposed(): boolean;
165
- /**
166
- * Get the hardware pixel format for this device type.
167
- *
168
- * Maps device types to their corresponding pixel formats.
169
- *
170
- * Returns the appropriate AV_PIX_FMT_* constant for the hardware type.
171
- *
172
- * @returns Hardware pixel format
173
- */
174
- getHardwarePixelFormat(): AVPixelFormat;
175
204
  /**
176
205
  * Check if this hardware type supports a specific codec.
177
206
  *
178
- * Checks both decoder and encoder support by querying FFmpeg's codec configurations.
207
+ * Queries FFmpeg's codec configurations to verify hardware support.
208
+ * Checks both decoder and encoder support based on parameters.
179
209
  *
180
- * Uses avcodec_get_hw_config() internally to check hardware support.
210
+ * Direct mapping to avcodec_get_hw_config().
181
211
  *
182
212
  * @param codecId - Codec ID from AVCodecID enum
183
- * @param isEncoder - Check for encoder support (default: false for decoder)
213
+ * @param isEncoder - Check for encoder support (default: decoder)
214
+ * @returns true if codec is supported
215
+ *
216
+ * @example
217
+ * ```typescript
218
+ * import { AV_CODEC_ID_H264 } from 'node-av/constants';
184
219
  *
185
- * @returns True if codec is supported by this hardware
220
+ * if (hw.supportsCodec(AV_CODEC_ID_H264, true)) {
221
+ * // Can use hardware H.264 encoder
222
+ * }
223
+ * ```
224
+ *
225
+ * @see {@link findSupportedCodecs} For all supported codecs
186
226
  */
187
227
  supportsCodec(codecId: AVCodecID, isEncoder?: boolean): boolean;
188
228
  /**
189
- * Check if this hardware device type supports a specific pixel format.
229
+ * Check if this hardware supports a specific pixel format for a codec.
230
+ *
231
+ * Verifies pixel format compatibility with hardware codec.
232
+ * Important for ensuring format compatibility in pipelines.
190
233
  *
191
234
  * @param codecId - Codec ID from AVCodecID enum
192
235
  * @param pixelFormat - Pixel format to check
193
- * @param isEncoder - Check for encoder support (default: false for decoder)
236
+ * @param isEncoder - Check for encoder (default: decoder)
237
+ * @returns true if pixel format is supported
238
+ *
239
+ * @example
240
+ * ```typescript
241
+ * import { AV_CODEC_ID_H264, AV_PIX_FMT_NV12 } from 'node-av/constants';
194
242
  *
195
- * @returns True if pixel format is supported by this hardware
243
+ * if (hw.supportsPixelFormat(AV_CODEC_ID_H264, AV_PIX_FMT_NV12)) {
244
+ * // Can use NV12 format with H.264
245
+ * }
246
+ * ```
247
+ *
248
+ * @see {@link supportsCodec} For basic codec support
196
249
  */
197
250
  supportsPixelFormat(codecId: AVCodecID, pixelFormat: AVPixelFormat, isEncoder?: boolean): boolean;
198
251
  /**
199
- * Get the appropriate hardware encoder name for a given codec.
200
- *
201
- * Maps generic codec names and hardware types to their specific encoder implementations.
202
- * For example, 'h264' with VideoToolbox returns 'h264_videotoolbox'.
252
+ * Get the appropriate encoder codec for a given base codec name.
203
253
  *
204
- * @param codecName - Generic codec name (e.g., 'h264', 'hevc', 'av1')
254
+ * Maps generic codec names to hardware-specific encoder implementations.
255
+ * Returns null if no hardware encoder is available for the codec.
256
+ * Automatically tests encoder viability before returning.
205
257
  *
206
- * @returns Hardware encoder name or null if not supported
258
+ * @param codec - Generic codec name (e.g., 'h264', 'hevc', 'av1') or AVCodecID
259
+ * @returns Hardware encoder codec or null if unsupported
207
260
  *
208
261
  * @example
209
262
  * ```typescript
210
- * const hw = await HardwareContext.auto();
211
- * const encoderName = hw.getEncoderName('h264');
212
- * // Returns 'h264_videotoolbox' on macOS, 'h264_nvenc' with CUDA, etc.
263
+ * const encoderCodec = await hw.getEncoderCodec('h264');
264
+ * if (encoderCodec) {
265
+ * console.log(`Using encoder: ${encoderCodec.name}`);
266
+ * // e.g., "h264_nvenc" for CUDA
267
+ * }
268
+ * ```
213
269
  *
214
- * // Use the encoder
215
- * const encoder = Codec.findEncoderByName(encoderName);
270
+ * @example
271
+ * ```typescript
272
+ * // Use with Encoder.create
273
+ * const codec = await hw.getEncoderCodec('hevc');
274
+ * if (codec) {
275
+ * const encoder = await Encoder.create(codec, streamInfo, {
276
+ * hardware: hw
277
+ * });
278
+ * }
216
279
  * ```
280
+ *
281
+ * @see {@link Encoder.create} For using the codec
217
282
  */
218
- getEncoderCodec(codecName: HardwareBaseCodecName): FFEncoderCodec | null;
283
+ getEncoderCodec(codec: BaseCodecName | AVCodecID): Promise<Codec | null>;
219
284
  /**
220
285
  * Find all codecs that support this hardware device.
221
286
  *
222
- * Uses FFmpeg's native codec list to find compatible codecs.
287
+ * Iterates through all available codecs and checks hardware compatibility.
288
+ * Useful for discovering available hardware acceleration options.
223
289
  *
224
- * Iterates through all codecs using av_codec_iterate() and checks
225
- * their hardware configurations.
290
+ * Direct mapping to av_codec_iterate() with hardware config checks.
226
291
  *
227
292
  * @param isEncoder - Find encoders (true) or decoders (false)
228
- *
229
293
  * @returns Array of codec names that support this hardware
294
+ *
295
+ * @example
296
+ * ```typescript
297
+ * const decoders = hw.findSupportedCodecs(false);
298
+ * console.log('Hardware decoders:', decoders);
299
+ * // ["h264_cuvid", "hevc_cuvid", ...]
300
+ *
301
+ * const encoders = hw.findSupportedCodecs(true);
302
+ * console.log('Hardware encoders:', encoders);
303
+ * // ["h264_nvenc", "hevc_nvenc", ...]
304
+ * ```
305
+ *
306
+ * @see {@link supportsCodec} For checking specific codec
230
307
  */
231
308
  findSupportedCodecs(isEncoder?: boolean): string[];
232
309
  /**
233
310
  * Clean up and free hardware resources.
234
311
  *
235
- * Safe to call multiple times - subsequent calls are no-ops.
236
- * Called automatically by Decoder/Encoder on close.
312
+ * Releases the hardware device context.
313
+ * Safe to call multiple times.
314
+ * Automatically called by Symbol.dispose.
315
+ *
316
+ * @example
317
+ * ```typescript
318
+ * const hw = HardwareContext.auto();
319
+ * try {
320
+ * // Use hardware
321
+ * } finally {
322
+ * hw?.dispose();
323
+ * }
324
+ * ```
237
325
  *
238
- * Frees both frames context (if created) and device context.
239
- * Notifies any waiting components that disposal occurred.
326
+ * @see {@link Symbol.dispose} For automatic cleanup
240
327
  */
241
328
  dispose(): void;
329
+ /**
330
+ * Map AVCodecID to base codec name for hardware encoder lookup.
331
+ *
332
+ * Converts codec IDs to generic codec names used for encoder naming.
333
+ * Used internally to find hardware-specific encoder implementations.
334
+ *
335
+ * @param codecId - AVCodecID enum value
336
+ * @returns Base codec name or null if unsupported
337
+ *
338
+ * @internal
339
+ */
340
+ private getBaseCodecName;
341
+ /**
342
+ * Get the hardware decoder pixel format for this device type.
343
+ *
344
+ * Maps device types to their corresponding pixel formats.
345
+ * Used internally for frame format configuration.
346
+ *
347
+ * @returns Hardware-specific pixel format
348
+ *
349
+ * @internal
350
+ */
351
+ private getHardwareDecoderPixelFormat;
352
+ /**
353
+ * Test if a hardware encoder can be created.
354
+ *
355
+ * Attempts to initialize the encoder to verify support.
356
+ * Used internally by getEncoderCodec.
357
+ *
358
+ * @param encoderCodec - Encoder to test
359
+ *
360
+ * @returns true if encoder can be initialized
361
+ *
362
+ * @internal
363
+ */
364
+ private testHardwareEncoder;
242
365
  /**
243
366
  * Create hardware context from device type.
244
367
  *
245
368
  * Internal factory method using av_hwdevice_ctx_create().
246
369
  *
247
370
  * @param deviceType - AVHWDeviceType enum value
248
- * @param deviceName - Optional device name/index
371
+ * @param device - Optional device specifier
249
372
  * @param options - Optional device options
250
373
  *
251
- * @returns HardwareContext or null if creation fails
374
+ * @returns Hardware context or null if creation fails
375
+ *
376
+ * @internal
252
377
  */
253
378
  private static createFromType;
254
379
  /**
255
380
  * Get platform-specific preference order for hardware types.
256
381
  *
257
- * Returns the optimal hardware types for the current platform.
382
+ * Returns available hardware types sorted by platform preference.
383
+ * Ensures optimal hardware selection for each platform.
258
384
  *
259
385
  * @returns Array of AVHWDeviceType values in preference order
386
+ *
387
+ * @internal
260
388
  */
261
389
  private static getPreferenceOrder;
262
390
  /**
263
- * Automatic cleanup when using 'using' statement.
264
- *
265
- * Implements the Disposable interface for automatic cleanup.
391
+ * Dispose of hardware context.
266
392
  *
267
- * Calls dispose() to free hardware resources.
393
+ * Implements Disposable interface for automatic cleanup.
394
+ * Equivalent to calling dispose().
268
395
  *
269
396
  * @example
270
397
  * ```typescript
271
398
  * {
272
- * using hw = await HardwareContext.auto();
399
+ * using hw = HardwareContext.auto();
273
400
  * // Use hardware context...
274
401
  * } // Automatically disposed
275
402
  * ```
403
+ *
404
+ * @see {@link dispose} For manual cleanup
276
405
  */
277
406
  [Symbol.dispose](): void;
278
407
  }