mirror of
https://github.com/gabehf/Tdarr_Plugins.git
synced 2026-03-17 11:16:26 -07:00
Check for eng stream in aac
This commit is contained in:
parent
118b0df5d2
commit
87cbf5c5c5
1 changed files with 77 additions and 30 deletions
|
|
@ -7,9 +7,9 @@ function details() {
|
||||||
id: "Tdarr_Plugin_hk75_Drawmonster_MP4_AAC_No_Subs_No_metaTitle",
|
id: "Tdarr_Plugin_hk75_Drawmonster_MP4_AAC_No_Subs_No_metaTitle",
|
||||||
Name: "Drawmonster MP4 Stereo AAC, No Subs, No title meta data ",
|
Name: "Drawmonster MP4 Stereo AAC, No Subs, No title meta data ",
|
||||||
Type: "Video",
|
Type: "Video",
|
||||||
Description: `This plugin removes subs, metadata (if a title exists) and adds a stereo 192kbit AAC track if an AAC track (any) doesn't exist. The output container is mp4. \n\n
|
Description: `This plugin removes subs, metadata (if a title exists) and adds a stereo 192kbit AAC track if an AAC track (English or any) doesn't exist. The output container is mp4. \n\n
|
||||||
`,
|
`,
|
||||||
Version: "1.03",
|
Version: "1.04",
|
||||||
Link: "https://github.com/HaveAGitGat/Tdarr_Plugin_hk75_Drawmonster_MP4_AAC_No_Subs_No_metaTitle"
|
Link: "https://github.com/HaveAGitGat/Tdarr_Plugin_hk75_Drawmonster_MP4_AAC_No_Subs_No_metaTitle"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -50,7 +50,19 @@ function plugin(file) {
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
|
|
||||||
var jsonString = JSON.stringify(file)
|
|
||||||
|
var hasPreferredLangTrack = false
|
||||||
|
var hasPreferredLangInRequiredCodecs = false
|
||||||
|
var hasAnyInRequiredCodecs = false
|
||||||
|
|
||||||
|
var audioIdx = -1
|
||||||
|
var engTrackIdx = -1
|
||||||
|
|
||||||
|
var requiredAudioCodecs = "aac"
|
||||||
|
var preferredLangTrack = "eng"
|
||||||
|
var preferredCodec = "aac"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
var hasSubs = false
|
var hasSubs = false
|
||||||
|
|
@ -66,32 +78,77 @@ function plugin(file) {
|
||||||
|
|
||||||
}
|
}
|
||||||
} catch (err) { }
|
} catch (err) { }
|
||||||
|
|
||||||
|
|
||||||
|
try {
|
||||||
|
if (file.ffProbeData.streams[i].codec_type.toLowerCase() == "audio") {
|
||||||
|
audioIdx++
|
||||||
|
}
|
||||||
|
} catch (err) { }
|
||||||
|
|
||||||
|
|
||||||
|
try {
|
||||||
|
if (requiredAudioCodecs.includes(file.ffProbeData.streams[i].codec_name)) {
|
||||||
|
hasAnyInRequiredCodecs = true
|
||||||
|
|
||||||
|
}
|
||||||
|
} catch (err) { }
|
||||||
|
|
||||||
|
|
||||||
|
try {
|
||||||
|
if ((requiredAudioCodecs.includes(file.ffProbeData.streams[i].codec_name)) && file.ffProbeData.streams[i].tags.language.toLowerCase().includes(preferredLangTrack)) {
|
||||||
|
hasPreferredLangInRequiredCodecs = true
|
||||||
|
|
||||||
|
}
|
||||||
|
} catch (err) { }
|
||||||
|
|
||||||
|
try {
|
||||||
|
if (file.ffProbeData.streams[i].tags.language.toLowerCase().includes(preferredLangTrack) && file.ffProbeData.streams[i].codec_type.toLowerCase() == "audio") {
|
||||||
|
hasPreferredLangTrack = true
|
||||||
|
engTrackIdx = audioIdx
|
||||||
|
|
||||||
|
}
|
||||||
|
} catch (err) { }
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (hasPreferredLangInRequiredCodecs) {
|
||||||
|
|
||||||
|
response.infoLog += `☑File already has ${preferredLangTrack} language track in ${requiredAudioCodecs}! \n`
|
||||||
|
|
||||||
|
} else if (hasPreferredLangTrack) {
|
||||||
|
|
||||||
///
|
|
||||||
|
|
||||||
if((file.meta.Title != "undefined") && !jsonString.includes("aac") && hasSubs){
|
|
||||||
|
|
||||||
response.infoLog += "☒File has title metadata and no aac and subs \n"
|
|
||||||
response.preset = ',-map_metadata -1 -c:v copy -c:a copy'
|
|
||||||
response.reQueueAfter = true;
|
|
||||||
response.processFile = true;
|
response.processFile = true;
|
||||||
return response
|
response.preset = `,-map 0:v -map 0:a:${engTrackIdx} -map 0:a -map 0:s? -map 0:d? -c copy -c:a:0 ${preferredCodec} -b:a:0 192k -ac 2`
|
||||||
}
|
response.container = '.mp4'
|
||||||
|
response.handBrakeMode = false
|
||||||
if(!jsonString.includes("aac") && hasSubs){
|
response.FFmpegMode = true
|
||||||
|
|
||||||
response.infoLog += "☒File has no aac track and has subs \n"
|
|
||||||
response.preset = ',-sn -map 0:v -map 0:a:0 -map 0:a -map 0:s? -map 0:d? -c copy -c:a:0 aac -b:a:0 192k -ac 2'
|
|
||||||
response.reQueueAfter = true;
|
response.reQueueAfter = true;
|
||||||
response.processFile = true;
|
response.infoLog += `☒File has ${preferredLangTrack} language track but not in ${requiredAudioCodecs}! \n`
|
||||||
return response
|
return response
|
||||||
}
|
|
||||||
|
|
||||||
|
} else if (!hasAnyInRequiredCodecs) {
|
||||||
|
|
||||||
|
if (audioIdx == -1) {
|
||||||
|
response.infoLog += `☒File does not have any audio streams. Can't create ${preferredCodec} track. \n`
|
||||||
|
|
||||||
|
} else {
|
||||||
|
|
||||||
|
response.processFile = true;
|
||||||
|
response.preset = `,-map 0:v -map 0:a:0 -map 0:a -map 0:s? -map 0:d? -c copy -c:a:0 ${preferredCodec} -b:a:0 192k -ac 2`
|
||||||
|
response.container = '.mp4'
|
||||||
|
response.handBrakeMode = false
|
||||||
|
response.FFmpegMode = true
|
||||||
|
response.reQueueAfter = true;
|
||||||
|
response.infoLog += `☒File has no language track in ${requiredAudioCodecs}. No ${preferredLangTrack} track marked so transcoding audio track 1 into ${preferredCodec}! \n`
|
||||||
|
return response
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
if(file.meta.Title != "undefined" && hasSubs){
|
if(file.meta.Title != "undefined" && hasSubs){
|
||||||
|
|
||||||
|
|
@ -116,17 +173,7 @@ function plugin(file) {
|
||||||
response.infoLog += "☑File has no title metadata \n"
|
response.infoLog += "☑File has no title metadata \n"
|
||||||
}
|
}
|
||||||
|
|
||||||
if(!jsonString.includes("aac")){
|
|
||||||
|
|
||||||
response.infoLog += "☒File has no aac track \n"
|
|
||||||
response.preset = ',-map 0:v -map 0:a:0 -map 0:a -map 0:s? -map 0:d? -c copy -c:a:0 aac -b:a:0 192k -ac 2'
|
|
||||||
response.reQueueAfter = true;
|
|
||||||
response.processFile = true;
|
|
||||||
return response
|
|
||||||
|
|
||||||
}else{
|
|
||||||
response.infoLog += "☑File has aac track \n"
|
|
||||||
}
|
|
||||||
|
|
||||||
if(hasSubs){
|
if(hasSubs){
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue