Fix muxing
This commit is contained in:
@@ -6,7 +6,7 @@ import {
|
||||
} from '../db/jobStore';
|
||||
import { generateAudioDescriptionFromOptions } from '../../utils/processor';
|
||||
import { generateSRT, generateVTT } from './subtitleGenerator';
|
||||
import { muxAudioDescription } from './muxer';
|
||||
import { muxAudioDescription, muxMixedAudioDescription } from './muxer';
|
||||
import { getDefaultConfig, Config } from '../../config/config';
|
||||
import { AudioSegment, BatchContext } from '../../interfaces';
|
||||
import { getVideoDuration, cleanupTempFiles } from '../../utils/mediaUtils';
|
||||
@@ -79,7 +79,8 @@ export class JobManager {
|
||||
const opts: OutputOptions = {
|
||||
audio: outputOptions.audio !== false,
|
||||
subtitles: outputOptions.subtitles !== false,
|
||||
muxed: outputOptions.muxed || false
|
||||
muxed: outputOptions.muxed || false,
|
||||
muxMode: outputOptions.muxMode === 'mixed' ? 'mixed' : 'separate'
|
||||
};
|
||||
|
||||
return createJob(videoPath, filename, mergedConfig, opts);
|
||||
@@ -307,8 +308,16 @@ export class JobManager {
|
||||
}
|
||||
|
||||
if (outputOptions.muxed && fs.existsSync(outputAudio)) {
|
||||
const muxedPath = path.join(outputDir, `${baseName}_described.mkv`);
|
||||
muxAudioDescription(job.video_path, outputAudio, muxedPath);
|
||||
const isMixed = outputOptions.muxMode === 'mixed';
|
||||
const muxedPath = path.join(
|
||||
outputDir,
|
||||
`${baseName}${isMixed ? '_described_mixed' : '_described'}.mkv`
|
||||
);
|
||||
if (isMixed) {
|
||||
muxMixedAudioDescription(job.video_path, outputAudio, muxedPath);
|
||||
} else {
|
||||
muxAudioDescription(job.video_path, outputAudio, muxedPath);
|
||||
}
|
||||
outputMuxed = muxedPath;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user