Merge pull request #44 from orangeMikeB/fix-incorrect-metadata-linux
This commit is contained in:
commit
f5403038e6
@ -1,7 +1,7 @@
|
|||||||
import { Account, Playlist } from '../../db/database'
|
import { Account, Playlist } from '../../db/database'
|
||||||
import { downloadMPDAudio } from '../../services/audio'
|
import { downloadMPDAudio } from '../../services/audio'
|
||||||
import { concatenateTSFiles } from '../../services/concatenate'
|
import { concatenateTSFiles } from '../../services/concatenate'
|
||||||
import { checkFileExistence, createFolder, createFolderName, deleteFolder, deleteTemporaryFolders } from '../../services/folder'
|
import { checkFileExistence, createFolder, createFolderName, deleteFolder, deleteTemporaryFolders, getFilename } from '../../services/folder'
|
||||||
import { downloadADNSub, downloadCRSub } from '../../services/subs'
|
import { downloadADNSub, downloadCRSub } from '../../services/subs'
|
||||||
import { CrunchyEpisode } from '../../types/crunchyroll'
|
import { CrunchyEpisode } from '../../types/crunchyroll'
|
||||||
import { checkAccountMaxStreams, crunchyGetMetadata, crunchyGetPlaylist, crunchyGetPlaylistMPD } from '../crunchyroll/crunchyroll.service'
|
import { checkAccountMaxStreams, crunchyGetMetadata, crunchyGetPlaylist, crunchyGetPlaylistMPD } from '../crunchyroll/crunchyroll.service'
|
||||||
@ -1403,21 +1403,20 @@ async function mergeVideoFile(
|
|||||||
options.push(`-map ${ffindex}:a:0`)
|
options.push(`-map ${ffindex}:a:0`)
|
||||||
options.push(
|
options.push(
|
||||||
`-metadata:s:a:${index} language=${
|
`-metadata:s:a:${index} language=${
|
||||||
locales.find((l) => l.locale === a.split('/')[1].split('.aac')[0])
|
locales.find((l) => l.locale === getFilename(a, '.aac', '/'))
|
||||||
? locales.find((l) => l.locale === a.split('/')[1].split('.aac')[0])?.iso
|
? locales.find((l) => l.locale === getFilename(a, '.aac', '/'))?.iso
|
||||||
: a.split('/')[1].split('.aac')[0]
|
: getFilename(a, '.aac', '/')
|
||||||
|
}`
|
||||||
|
)
|
||||||
|
options.push(
|
||||||
|
`-metadata:s:a:${index} title=${
|
||||||
|
locales.find((l) => l.locale === getFilename(a, '.aac', '/'))
|
||||||
|
? locales.find((l) => l.locale === getFilename(a, '.aac', '/'))?.title
|
||||||
|
: getFilename(a, '.aac', '/')
|
||||||
}`
|
}`
|
||||||
)
|
)
|
||||||
|
|
||||||
ffindex++
|
ffindex++
|
||||||
|
|
||||||
options.push(
|
|
||||||
`-metadata:s:a:${index} title=${
|
|
||||||
locales.find((l) => l.locale === a.split('/')[1].split('.aac')[0])
|
|
||||||
? locales.find((l) => l.locale === a.split('/')[1].split('.aac')[0])?.title
|
|
||||||
: a.split('/')[1].split('.aac')[0]
|
|
||||||
}`
|
|
||||||
)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
options.push(`-disposition:a:0 default`)
|
options.push(`-disposition:a:0 default`)
|
||||||
@ -1430,17 +1429,17 @@ async function mergeVideoFile(
|
|||||||
if (s.includes('-FORCED')) {
|
if (s.includes('-FORCED')) {
|
||||||
options.push(
|
options.push(
|
||||||
`-metadata:s:s:${index} language=${
|
`-metadata:s:s:${index} language=${
|
||||||
locales.find((l) => l.locale === s.split('/')[1].split('-FORCED.ass')[0])
|
locales.find((l) => l.locale === getFilename(s, '-FORCED.ass', '/'))
|
||||||
? locales.find((l) => l.locale === s.split('/')[1].split('-FORCED.ass')[0])?.iso
|
? locales.find((l) => l.locale === getFilename(s, '-FORCED.ass', '/'))?.iso
|
||||||
: s.split('/')[1].split('-FORCED.ass')[0]
|
: getFilename(s, '-FORCED.ass', '/')
|
||||||
}`
|
}`
|
||||||
)
|
)
|
||||||
} else {
|
} else {
|
||||||
options.push(
|
options.push(
|
||||||
`-metadata:s:s:${index} language=${
|
`-metadata:s:s:${index} language=${
|
||||||
locales.find((l) => l.locale === s.split('/')[1].split('.ass')[0])
|
locales.find((l) => l.locale === getFilename(s, '.ass', '/'))
|
||||||
? locales.find((l) => l.locale === s.split('/')[1].split('.ass')[0])?.iso
|
? locales.find((l) => l.locale === getFilename(s, '.ass', '/'))?.iso
|
||||||
: s.split('/')[1].split('.ass')[0]
|
: getFilename(s, '.ass', '/')
|
||||||
}`
|
}`
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
@ -1448,17 +1447,17 @@ async function mergeVideoFile(
|
|||||||
if (s.includes('-FORCED')) {
|
if (s.includes('-FORCED')) {
|
||||||
options.push(
|
options.push(
|
||||||
`-metadata:s:s:${index} title=${
|
`-metadata:s:s:${index} title=${
|
||||||
locales.find((l) => l.locale === s.split('/')[1].split('-FORCED.ass')[0])
|
locales.find((l) => l.locale === getFilename(s, '-FORCED.ass', '/'))
|
||||||
? locales.find((l) => l.locale === s.split('/')[1].split('-FORCED.ass')[0])?.title
|
? locales.find((l) => l.locale === getFilename(s, '-FORCED.ass', '/'))?.title
|
||||||
: s.split('/')[1].split('-FORCED.ass')[0]
|
: getFilename(s, '-FORCED.ass', '/')
|
||||||
}[FORCED]`
|
}[FORCED]`
|
||||||
)
|
)
|
||||||
} else {
|
} else {
|
||||||
options.push(
|
options.push(
|
||||||
`-metadata:s:s:${index} title=${
|
`-metadata:s:s:${index} title=${
|
||||||
locales.find((l) => l.locale === s.split('/')[1].split('.ass')[0])
|
locales.find((l) => l.locale === getFilename(s, '.ass', '/'))
|
||||||
? locales.find((l) => l.locale === s.split('/')[1].split('.ass')[0])?.title
|
? locales.find((l) => l.locale === getFilename(s, '.ass', '/'))?.title
|
||||||
: s.split('/')[1].split('.ass')[0]
|
: getFilename(s, '.ass', '/')
|
||||||
}`
|
}`
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
@ -100,3 +100,13 @@ export async function deleteTemporaryFolders() {
|
|||||||
throw error
|
throw error
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export function getFilename(path: string, ext: string, delimiter: string) {
|
||||||
|
const segments = path.split(delimiter)
|
||||||
|
|
||||||
|
if (segments.length == 0) {
|
||||||
|
return "unkown"
|
||||||
|
}
|
||||||
|
|
||||||
|
return segments[segments.length - 1].split(ext)[0]
|
||||||
|
}
|
Reference in New Issue
Block a user