refactor: уточнить вывод энкодеров/декодеров
This commit is contained in:
38
bin/cli.js
38
bin/cli.js
File diff suppressed because one or more lines are too long
25
src/cli.ts
25
src/cli.ts
@@ -184,14 +184,19 @@ console.log(`MP4Box: ${hasMP4Box ? '✅' : '❌'}`);
|
|||||||
const accelList = Array.from(new Set(hwEncoders.map(e => e.accelerator.toUpperCase())));
|
const accelList = Array.from(new Set(hwEncoders.map(e => e.accelerator.toUpperCase())));
|
||||||
const bestAccelName = bestAccel ? bestAccel.accelerator.toUpperCase() : undefined;
|
const bestAccelName = bestAccel ? bestAccel.accelerator.toUpperCase() : undefined;
|
||||||
const accelRest = accelList.filter(name => name !== bestAccelName);
|
const accelRest = accelList.filter(name => name !== bestAccelName);
|
||||||
const accelLabel = bestAccelName
|
const encoderSelectedPlanned = accelerator
|
||||||
? `✅ ${bestAccelName}${accelRest.length > 0 ? ` (${accelRest.join(', ')})` : ''}`
|
? accelerator.toUpperCase()
|
||||||
: '❌';
|
: (bestAccelName || 'CPU');
|
||||||
console.log(`Hardware: ${accelLabel}`);
|
const encoderAll = accelList.length > 0 ? accelList : ['CPU'];
|
||||||
if (hwDecoders.length > 0) {
|
|
||||||
const decList = Array.from(new Set(hwDecoders.map((d) => d.accelerator.toUpperCase())));
|
const decList = Array.from(new Set(hwDecoders.map((d) => d.accelerator.toUpperCase())));
|
||||||
console.log(`Decoders: ${decList.join(', ')}`);
|
const decoderSelectedPlanned = decoder
|
||||||
}
|
? decoder.toUpperCase()
|
||||||
|
: (decList[0] || 'CPU');
|
||||||
|
const decoderAll = decList.length > 0 ? decList : ['CPU'];
|
||||||
|
|
||||||
|
console.log(`Encoder: ${encoderSelectedPlanned === 'AUTO' ? (bestAccelName || 'CPU') : encoderSelectedPlanned} (${encoderAll.join(', ')})`);
|
||||||
|
console.log(`Decoder: ${decoderSelectedPlanned === 'AUTO' ? (decList[0] || 'CPU') : decoderSelectedPlanned} (${decoderAll.join(', ')})`);
|
||||||
console.log('');
|
console.log('');
|
||||||
|
|
||||||
if (!hasFFmpeg) {
|
if (!hasFFmpeg) {
|
||||||
@@ -290,6 +295,8 @@ const acceleratorDisplay = plannedAccel === 'AUTO' ? (bestAccelName || 'CPU') :
|
|||||||
const decoderDisplay = plannedDecoder === 'AUTO'
|
const decoderDisplay = plannedDecoder === 'AUTO'
|
||||||
? (hwDecoders[0]?.accelerator.toUpperCase() || 'CPU')
|
? (hwDecoders[0]?.accelerator.toUpperCase() || 'CPU')
|
||||||
: plannedDecoder;
|
: plannedDecoder;
|
||||||
|
const encoderListDisplay = encoderAll.join(', ');
|
||||||
|
const decoderListDisplay = decoderAll.join(', ');
|
||||||
|
|
||||||
console.log('\n📦 Parameters:');
|
console.log('\n📦 Parameters:');
|
||||||
console.log(` Input: ${input}`);
|
console.log(` Input: ${input}`);
|
||||||
@@ -299,8 +306,8 @@ console.log(` Profiles: ${displayProfiles.join(', ')}`);
|
|||||||
console.log(` Manifests: ${manifestDesc}`);
|
console.log(` Manifests: ${manifestDesc}`);
|
||||||
console.log(` Poster: ${posterPlanned} (will be generated)`);
|
console.log(` Poster: ${posterPlanned} (will be generated)`);
|
||||||
console.log(` Thumbnails: ${thumbnailsPlanned ? 'yes (with VTT)' : 'no'}`);
|
console.log(` Thumbnails: ${thumbnailsPlanned ? 'yes (with VTT)' : 'no'}`);
|
||||||
console.log(` Accelerator: ${acceleratorDisplay}`);
|
console.log(` Encoder: ${acceleratorDisplay} (available: ${encoderListDisplay})`);
|
||||||
console.log(` Decoder: ${decoderDisplay}`);
|
console.log(` Decoder: ${decoderDisplay} (available: ${decoderListDisplay})`);
|
||||||
|
|
||||||
// Build quality settings if any are specified
|
// Build quality settings if any are specified
|
||||||
let quality: QualitySettings | undefined;
|
let quality: QualitySettings | undefined;
|
||||||
|
|||||||
Reference in New Issue
Block a user