diff --git a/.jhonny/analises.db b/.jhonny/analises.db index 703e088..d0811b3 100644 Binary files a/.jhonny/analises.db and b/.jhonny/analises.db differ diff --git a/code/cep-plugin/index.html b/code/cep-plugin/index.html index e1850c6..fb19e1d 100755 --- a/code/cep-plugin/index.html +++ b/code/cep-plugin/index.html @@ -10,9 +10,15 @@
- +
-

MCP for Adobe Premiere Pro

+

Jhonny Marrone

Conexão local com o Premiere

diff --git a/code/cep-plugin/main.js b/code/cep-plugin/main.js index 1a8f9cd..0861301 100755 --- a/code/cep-plugin/main.js +++ b/code/cep-plugin/main.js @@ -2246,8 +2246,28 @@ function silenceConsultarPreviewDeFalantes(videoId) { } catch (_) { return null; } } -function silenceLocalizarAudioParaFalantes(pasta) { +function silenceLocalizarAudioParaFalantes(pasta, dadosDoRelatorio) { var encontrados = []; + var nomesDeMidia = []; + + function adicionarNomeDeMidia(nome) { + if (!nome) return; + var base = path.parse(String(nome)).name; + if (base && nomesDeMidia.indexOf(base) < 0) nomesDeMidia.push(base); + } + + adicionarNomeDeMidia(silenceState.mediaPath); + var artefatosDeAudio = dadosDoRelatorio && dadosDoRelatorio.artefatos && dadosDoRelatorio.artefatos.audio || []; + artefatosDeAudio.forEach(function (nomeDoArtefato) { + try { + var caminhoDoArtefato = path.join(pasta, nomeDoArtefato); + var dadosDoAudio = JSON.parse(fs.readFileSync(caminhoDoArtefato, "utf-8")); + (dadosDoAudio.faixa && dadosDoAudio.faixa.clipes || []).forEach(function (clipe) { + adicionarNomeDeMidia(clipe.nome || clipe.arquivo || clipe.sourceFile); + }); + } catch (_) {} + }); + function visitar(caminho) { if (encontrados.length) return; try { @@ -2261,7 +2281,14 @@ function silenceLocalizarAudioParaFalantes(pasta) { } catch (_) {} } visitar(pasta); - return encontrados[0] || null; + if (encontrados.length) return encontrados[0]; + + for (var indice = 0; indice < nomesDeMidia.length; indice++) { + var pastaDaTranscricao = path.join(SILENCE_OUTPUT_ROOT, nomesDeMidia[indice]); + var caminhoDoAudio = path.join(pastaDaTranscricao, nomesDeMidia[indice] + ".wav"); + if (fs.existsSync(caminhoDoAudio)) return caminhoDoAudio; + } + return null; } function silenceLocalizarMidiaNoRelatorio(caminhoDoRelatorio, dadosDoRelatorio) { @@ -2300,7 +2327,7 @@ function silenceLoadScannerAnalysis() { silenceState.mediaPath = silenceLocalizarMidiaNoRelatorio(caminhoDoRelatorio, dadosDoRelatorio); silenceState.fileBaseName = path.basename(path.dirname(caminhoDoRelatorio)); silenceState.outputDir = path.dirname(caminhoDoRelatorio); - silenceState.audioCachePath = silenceLocalizarAudioParaFalantes(silenceState.outputDir); + silenceState.audioCachePath = silenceLocalizarAudioParaFalantes(silenceState.outputDir, dadosDoRelatorio); silenceState.transcriptPath = path.join(silenceState.outputDir, "transcricao-do-scanner.json"); silenceState.cachedTranscriptPath = null; silenceState.tipoVideoId = null; diff --git a/code/cep-plugin/styles.css b/code/cep-plugin/styles.css index ccc81b0..9fc2492 100755 --- a/code/cep-plugin/styles.css +++ b/code/cep-plugin/styles.css @@ -81,6 +81,7 @@ h1, h2, h3 { margin: 0; } font-weight: 750; letter-spacing: -0.04em; } +.brand-mark svg { width: 21px; height: 21px; } .brand-copy { min-width: 0; flex: 1; } .brand-copy h1 { overflow: hidden; font-size: 12px; line-height: 1.25; font-weight: 650; text-overflow: ellipsis; white-space: nowrap; }