From afb55588eb66711a6acbac021cefd4143f31b931 Mon Sep 17 00:00:00 2001 From: HaveAGitGat <43864057+HaveAGitGat@users.noreply.github.com> Date: Mon, 20 Jan 2020 17:20:26 +0000 Subject: [PATCH] Allow inclusion/exclusion of any codecs within any stream. Not just stream 0. --- methods/library/filters/filterByCodec.js | 21 ++++++++++++++++----- 1 file changed, 16 insertions(+), 5 deletions(-) diff --git a/methods/library/filters/filterByCodec.js b/methods/library/filters/filterByCodec.js index 1930365..07a675f 100644 --- a/methods/library/filters/filterByCodec.js +++ b/methods/library/filters/filterByCodec.js @@ -5,11 +5,22 @@ function filterByCodec(file, mode, codecs) { try { - // console.log(file,mode,codecs) + // console.log(file,mode,codecs) + + var allCodecs = file.ffProbeData.streams.map(row => row.codec_name) + + var included = false + + for (var i = 0; i < allCodecs.length; i++) { + + if (codecs.toLowerCase().includes(allCodecs[i])) { + included = true + } + } if (mode === 'include') { - if (codecs.toLowerCase().includes(file.ffProbeData.streams[0].codec_name.toLowerCase())) { + if (included) { var response = { outcome: true, @@ -29,7 +40,7 @@ function filterByCodec(file, mode, codecs) { } else if (mode === 'exclude') { - if (codecs.toLowerCase().includes(file.ffProbeData.streams[0].codec_name.toLowerCase())) { + if (included) { var response = { outcome: false, @@ -50,10 +61,10 @@ function filterByCodec(file, mode, codecs) { var response = { outcome: false, - note: `library.filters.filterByCodec error: ${err} \n` + note: `library.filters.filterByCodec error: ${err} \n` } return response - + } catch (err) {