mirror of https://github.com/VERT-sh/VERT.git
fix: m4a/alac w/ album art conversion fails
This commit is contained in:
parent
8ca43984a0
commit
938c25abca
|
|
@ -320,6 +320,7 @@ export class FFmpegConverter extends Converter {
|
||||||
): Promise<string[]> {
|
): Promise<string[]> {
|
||||||
const inputFormat = input.from.slice(1);
|
const inputFormat = input.from.slice(1);
|
||||||
const outputFormat = to.slice(1);
|
const outputFormat = to.slice(1);
|
||||||
|
const m4a = isAlac || to === ".m4a";
|
||||||
|
|
||||||
const lossless = [
|
const lossless = [
|
||||||
"flac",
|
"flac",
|
||||||
|
|
@ -340,6 +341,7 @@ export class FFmpegConverter extends Converter {
|
||||||
let audioBitrateArgs: string[] = [];
|
let audioBitrateArgs: string[] = [];
|
||||||
let sampleRateArgs: string[] = [];
|
let sampleRateArgs: string[] = [];
|
||||||
let metadataArgs: string[] = [];
|
let metadataArgs: string[] = [];
|
||||||
|
let m4aArgs: string[] = [];
|
||||||
|
|
||||||
log(["converters", this.name], `keep metadata: ${keepMetadata}`);
|
log(["converters", this.name], `keep metadata: ${keepMetadata}`);
|
||||||
if (!keepMetadata) {
|
if (!keepMetadata) {
|
||||||
|
|
@ -509,9 +511,12 @@ export class FFmpegConverter extends Converter {
|
||||||
`Converting audio ${input.from} to audio ${to}`,
|
`Converting audio ${input.from} to audio ${to}`,
|
||||||
);
|
);
|
||||||
const { audio: audioCodec } = getCodecs(to, isAlac);
|
const { audio: audioCodec } = getCodecs(to, isAlac);
|
||||||
|
if (m4a && keepMetadata) m4aArgs = ["-c:v", "copy"]; // for album art
|
||||||
|
|
||||||
return [
|
return [
|
||||||
"-i",
|
"-i",
|
||||||
"input",
|
"input",
|
||||||
|
...m4aArgs,
|
||||||
"-c:a",
|
"-c:a",
|
||||||
audioCodec,
|
audioCodec,
|
||||||
...metadataArgs,
|
...metadataArgs,
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue