Giter VIP home page Giter VIP logo

video-maker's People

Contributors

danielschmitz avatar danrleydfl avatar davirj avatar dependabot[bot] avatar felipemarchi avatar filipedeschamps avatar fredsvanelli avatar gabrielrufino avatar hebertlima avatar leodutra avatar lorh4n avatar matbrgz avatar tauanmatos avatar thekoakuma avatar vpagani avatar wfrsilva avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

video-maker's Issues

Faltou dopamina...

Putz mano, mais um projeto abandonado...
desse jeito seu cérebro nunca vai confiar em você....

Manda o resto do código pra gente poder dar pitaco, de repente assim da uma estimulada na dopamina ;)

O que faremos quando o filipe terminar o video-maker

pessoALL,

já é sabido por nós que o @filipedeschamps ainda não aceitou os PRs nem as Ideias aqui nas Issues porque ele está construindo o video-maker ensinando passo a passo a arquitetura. Se ele aceitasse os PRs agora iria complicar para quem está aprendendo um monte de PR maneiro com códigos mais complexos.

Enfim, assim que o video-maker dele terminar, e ele terminar os videos, chega no ponto que poderemos criar um branch como "v2.0" ou "extended" ou "pro" ou "plus" no qual poderemos estender ao máximo a sua arquitetura.

Eu ainda vou conversar com o filipe desse branch novo, assim q ele terminar lá, e gostaria de contribuir na manutenção dele, como já fiz algumas vezes em outros projetos. Também vou dar uma atenção especial a essa ISSUE, atualizando sempre que possível.

O @faustoct já adiantou algumas coisas que pensei em #73 e #74. O @ibrunotome também em #60. E tantas outras ideias legais como #14, #25, #71, #37 e as ideias adicionais do @trenshy em #3.

Enfim, tem muita coisa pra "massa" para organizarmos. Só vamos aguardar o filipe terminar os videos e vamos prestar atenção nos videos dele para que possamos ter mais e mais ideias a medida que o video-maker evolui. Não deixe de ver os videos, e depois venham aqui criem issues com ideias e assim vamos catalogando tudo 🎉 🎉 🎉

Error: "errorMessage":"Provided API key could not be found"

Estou com dificuldade para acessar a API da forma que o Filipe faz, atribuindo o valor da apiKey pelo arquivo watson-nlu.json, sendo assim atribuí o valor diretamente como uma string, mas aí recebo o erro depois de processar a user-input
image

Help me!

Ideia pro Audio Robot

Eu fui acessar o canal Know The World, e reparei uma coisa meio chata. A musica é sempre a mesma. Logo pensei em, no lugar de sempre usar a mesma música, ter uma playlist, não muito grande, para dar uma variada e não ficar repetitivo.

Idéias adicionais

ENTREM NO DISCORD!

  • Adicionais - Robô de Texto

  • Input em outras línguas
    leguass7

  • Google Trends
    LucasRibP
    luizotcarvalho
    Implementação: wellingtonsilverio e danielschmitz

  • Painel de manchetes (G1, Folha, com o link da notícia na descrição)
    LorhanSohaky
    Implementação: uxcardoso

  • Artigos do Medium
    leorcvargas

  • Contar piadas (estilo Cortana, Siri, Alexa) (???)

  • Fazer vídeo sobre comic books (API da Marvel, por exemplo)

  • Informações do IMDB
    Implementação: mcf1110

  • Vídeo de história
    globsecure

  • Adicionais - Robô de Imagens

  • Baixar GIFs (?)

  • Adicionar mais fonte de imagens
    globsecure

  • Adicionais - Robô de Vídeo

  • Text-To-Speech

  • Adicionais - Robô de Upload

  • Upload para outros sites (Facebook, Vimeo, Dailymotion, etc)
    diegohenicka

  • Compartilhar nas redes sociais após a publicação
    gustavosatheler

Estrutura de dados

content: {
  searchTerm: "...",
  prefix: "...",
  sourceContentOriginal: "...",
  sourceContentSanitized: "...",
  sentences: [
    {
      text: "...",
      keywords: ["..."],
      images: ["..."]
    }
  ]
}

Watson - Access denied

Estou tendo um erro quando o programa tenta se autenticar no Watson. Fiz exatamente como está no vídeo, mas recebo esta mensagem:

Error: Unauthorized: Access is denied due to invalid credentials.

Alguém teve o mesmo problema?

Escopo e tarefas

  • Especificar tarefas e escopo

  • Orquestrador
    • Perguntar pelo termo de busca
    • Perguntar pelo prefixo
    • Iniciar robô de texto
    • Iniciar robô de imagens
    • Iniciar robô do vídeo
    • Iniciar robô do YouTube

  • Robô de texto
    • Estrutura de dados
    • Pegar conteúdo do Wikipedia
    • Limpar o conteúdo
    • Quebrar em sentenças
    • Pegar a interpretação do Watson
    • Adicionar tags
    • Salvar estrutura de dados

  • Robô de imagens
    • Carregar a estrutura de dados
    • Buscar as imagens no Google Images
    • Baixar as imagens
    • Salvar a estrutura de dados

  • Robô de vídeo
    • Preparar/redimensionar as imagens
    • Criar as sentenças com imagens
    • Criar a thumbnail para o vídeo
    • Renderizar o vídeo com After Effects

  • Robô do YouTube
    • Autenticar com o OAuth
    • Upload do vídeo
    • Upload da thumbnail

Áudio do Watson cortando alguns segundos finais em um bot do Discord

Sei que não tem a ver com o projeto mas envolve um pouco o tema, e disseram pra eu pedir ajuda aqui kkkkkk.

Estou tendo problemas com o Text-To-Speech do Watson ao integrar em um bot do Discord. O finalzinho do áudio corta e quanto mais vezes ele manda voz mais tempo de áudio ele corta.

Suspeito que seja porque o áudio gerado fica muito justinho, sem folga no começo e no final. e não sei o que fazer pra contornar isso. Nem o Sony Vegas abre o áudio pra eu editar como se o arquivo estivesse corrompido. Testei músicas do meu PC sem usar o Watson e vi que o problema não é o Discord.

Queria saber se existe algo pra instalar pro npm que possa editar um áudio, de forma que adicione alguns segundos mudos no final do áudio. Ou talvez possa ser algum erro do meu código '-'.

Se puder conferir e me ajudar, estou mandando um zip com os códigos que são necessários pra essa tarefa. O código que executa o Watson está em "commands/venha.js". Basicamente eu tive que criar um comando pra chamar o bot em um canal de voz para que as funções de voiceChannel funcionassem. Assim que o bot é chamado para o canal de voz, é mostrado no terminal pra você digitar o que o bot deve falar.

aelita-chan.js.zip

Criar Código de Conduta no projeto & no README.md

@filipedeschamps em grandes projetos open source é uma boa prática criar um arquivo .md de código de conduta.

Vou ver se crio um PR para deixar o seu README.md para facilitar a documentação e execução do seu projeto e incluir o código de conduta.

Há inúmeros modelos. Mas, vou deixar aqui alguns exemplos em português (que uso nos meus repositórios) e inglês:

Se você curtir a ideia, posso abrir uma PR e como consequencia, assim que for para a master do seu projeto, fecho essa Issue aqui.

O que você acha?

Erro ao executar o index.js

Fui colocar a parte do Watson e quando vou executar o index.js (node index.js) ele dá o problema da imagem abaixo:

image

Remover as opções "['Who is', 'What is', 'The history of']" e colocar que podemos digitar ao invés de escolher uma das opções

Olá, estava vendo aqui e pensei em remover as opções, no caso:

function askAndReturnPrefix() {
    return readline.question('Prefix: ')
    const prefixes = ['Who is', 'What is', 'The history of']
    const selectedPrefixIndex = readline.keyInSelect(prefixes, 'Choose one option: ')
    const selectedPrefixText = prefixes[selectedPrefixIndex]

    return selectedPrefixText
  }

E alterar para que possamos digitar ao invés de escolher uma opção, pensei em fazer dessa maneira, e ele alterou o prefixo, porém não sei se irá dar algum problema depois, não tenho um conhecimento profundo igual a maioria, então se possível, poderiam ver se aconteceria algum problema:

function askAndReturnPrefix() {
    return readline.question('Prefix: ')

    return selectedPrefixText
  }

Ao executar o node index.js aconteceu tudo corretamente a principio:
image

Erro na hora de executar o index.js

copia do erro que acontece no terminal
roger@roger-Inspiron-5566:~/video-maker$ node index.js
Type a Wikipedia search term: michael jackson

[1] Who is
[2] What is
[3] The history of
[0] CANCEL

Choose one option [1, 2, 3, 0]: 1
{ serchTerm: 'michael jackson', prefix: 'Who is' }
(node:14020) UnhandledPromiseRejectionWarning: ReferenceError: wikipediaAlgorithmia is not defined
at fetchContentFromWikipedia (/home/roger/video-maker/robots/text.js:12:29)
at Object.robot [as text] (/home/roger/video-maker/robots/text.js:5:2)
at start (/home/roger/video-maker/index.js:12:9)
at Object. (/home/roger/video-maker/index.js:28:1)
at Module._compile (module.js:652:30)
at Object.Module._extensions..js (module.js:663:10)
at Module.load (module.js:565:32)
at tryModuleLoad (module.js:505:12)
at Function.Module._load (module.js:497:3)
at Function.Module.runMain (module.js:693:10)
(node:14020) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 1)
(node:14020) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.

Problema com instalação do sdb

Eu estava tentando fazer a instalação do pacote sdb mas nao consegui, o codigo de erro é o ELIFECYCLE, tem esse log: 2019-03-12T05_07_56_954Z-debug.log

[email protected] install C:\Users\N202\Documents***\video_maker\node_modules\sdb

node-gyp rebuild

C:\Users\N202\Documents**\video_maker\node_modules\sdb>if not defined npm_config_node_gyp (node "C:\Program Files\nodejs\node_modules\npm\node_modules\npm-lifecycle\node-gyp-bin\....\node_modules\node-gyp\bin\node-gyp.js" rebuild ) else (node "C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\bin\node-gyp.js" rebuild )
gyp ERR! configure error
gyp ERR! stack Error: Can't find Python executable "python", you can set the PYTHON env variable.
gyp ERR! stack at PythonFinder.failNoPython (C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\lib\configure.js:484:19)
gyp ERR! stack at PythonFinder. (C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\lib\configure.js:509:16)
gyp ERR! stack at C:\Program Files\nodejs\node_modules\npm\node_modules\graceful-fs\polyfills.js:284:29
gyp ERR! stack at FSReqWrap.oncomplete (fs.js:154:21)
gyp ERR! System Windows_NT 10.0.10240
gyp ERR! command "C:\Program Files\nodejs\node.exe" "C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\bin\node-gyp.js" "rebuild"
gyp ERR! cwd C:\Users\N202\Documents**\video_maker\node_modules\sdb
gyp ERR! node -v v10.15.2
gyp ERR! node-gyp -v v3.8.0
gyp ERR! not ok
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! [email protected] install: node-gyp rebuild
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the [email protected] install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

Problemas com acentuação

É possível corrigir os erros de acentuação?

image

No caso fazer tipo um tratamento para corrigir isso, desculpem ficar abrindo issue por coisas que provavelmente pra vocês é algo bobo, não sou nem um profissional em JS, cai de paraquedas nisso, mais enfim, se alguém puder me ajudar a arrumar isso, ficarei muito agradecido :)

Erro ao tentar executar o index.js

$ node index.js
internal/modules/cjs/loader.js:615
throw err;
^

Error: Cannot find module 'algorithmia'
at Function.Module._resolveFilename (internal/modules/cjs/loader.js:613:15)
at Function.Module._load (internal/modules/cjs/loader.js:539:25)
at Module.require (internal/modules/cjs/loader.js:667:17)
at require (internal/modules/cjs/helpers.js:20:18)
at Object. (C:\Users\calie\Desktop\video-maker-master\robots\text.js:1:83)
at Module._compile (internal/modules/cjs/loader.js:738:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:749:10)
at Module.load (internal/modules/cjs/loader.js:630:32)
at tryModuleLoad (internal/modules/cjs/loader.js:570:12)
at Function.Module._load (internal/modules/cjs/loader.js:562:3)

Estrutura de Dados

content: {
  searchTerm: "...",
  prefix: "...",
  sourceContentOriginal: "...",
  sourceContentSanitized: "...",
  sentences: [
    {
      text: "...",
      keywords: ["..."],
      images: ["..."]
    }
  ]
}

Expor robo via api (servico rest)

Expor o robo como servico via api rest

Objetivo / Vantagens

  • Componentizar e isolar responsabilidades
  • Reutilizar web / app
  • pontos de extensão
  • fácil manter e testar

Sugestões de endpoint

  • Home
    GET /user/home
Response
[{
  youtube-video-url:"https://www.youtube.com/watch?v=5J4J1K595vs",
  youtube-video-id: "5J4J1K595vs",
  title:"Who is Steve Jobs",
},
{
...
}
]
  • Procurar por termo
    GET /search/{term}
Response
{
  youtube-video-url:"https://www.youtube.com/watch?v=5J4J1K595vs",
  youtube-video-id: "5J4J1K595vs",
  title:"Who is Steve Jobs",
  searchterm: "Steve Jobs"
}

Error: unable to get local issuer certificate na nlu do Watson

Boa tarde pessoal.
Estou tendo problemas para acessar a API do Watson pelo robo.

Estou rodando em uma rede com proxy, porem se tento acessar a api do watson pelo curl vai sem problema algum.

Quando rodo o nodejs tenho o erro abaixo.

video-maker/robots/text.js:87
throw error
^

Error: unable to get local issuer certificate
at TLSSocket.onConnectSecure (_tls_wrap.js:1049:34)
at TLSSocket.emit (events.js:182:13)
at TLSSocket._finishInit (_tls_wrap.js:631:8)

async function fetchWatsonAndReturnKeywords(sentence) {
    return new Promise((resolve, reject) => {
      nlu.analyze({
        text: sentence,
        features: {
          keywords: {}
        }
      }, (error, response) => {
        if (error) {
          throw error //linha 87
        }
        const keywords = response.keywords.map((keyword) => {
          return keyword.text
        })
        resolve(keywords)
      })
    })
  }

[Error] UnhandledPromiseRejectionWarning: authorization required

Boa noite galera,

estou com o seguinte erro. Alguém sabe como resolver? Estou na parte de criar o conteúdo com o fs!

(node:52901) UnhandledPromiseRejectionWarning: authorization required
(node:52901) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 1)
(node:52901) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.

obrigado!

Upload do conteúdo gerado pelo robo nas redes sociais

Isso é uma sugestão de estratégia de mkt digital. Seguintes plataformas podem ser alimentadas via api, com o conteúdo gerado pelo robo.

  • Medium
  • Facebook
  • Twitter
  • Instagram

Objetivo: Usar o conteúdo gerado pelo robo para alimentar as mídias sociais do mvp/projeto.

Vantages

  • Trabalho automatizado de marketing digital
  • Conteúdo está curado e excelente SEO
  • Gerar leads para uso do serviço/mvp
  • Uso de tags aumenta o discoverability
  • Aumentar presença digital
  • Bom alcance organico em redes sociais q priorizam videos (Facebook / Instagram)
  • Branding

Escopo e tarefas

  • Especificar tarefas e escopo

  • Orquestrador
  • Perguntar pelo termo de busca
  • Perguntar pelo prefixo
  • Iniciar robo de texto
  • Iniciar robo do video
  • Iniciar robo do YouTube

  • Robo de texto
  • Estrutura de dados
  • Pegar conteudo no Wikipedia
  • Limpar o conteudo
  • Quebrar em sentenças
  • Pegar a interpretaçao do Watson
  • Adicionar tags
  • Salvar estrutura de dados

  • Robo de imagem
  • Carregar a estrutura de dados
  • Buscar as imagens no Google Image
  • Baixar as imagens
  • Salvar a estrutura de dados

  • Robo de video
  • Preparar/ redimensionar as imagens
  • Criar as sentenças com imagens
  • Criar a thumbnail para o video
  • Renderizar o video com After Effects

  • Robo do YouTube
  • Autenticar o OAuth
  • Upload do video
  • Upload da thumbnail

Erro - Autorizacao requerida para executar index.js

Pessoal bom dia!Como estão?

Eu estou com um outro erro para executar index.js

(node:10065) UnhandledPromiseRejectionWarning: authorization required(node:10065) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 1)(node:10065) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code

conseguem me ajudar?

Como criar um pull request?

Fiz a implementação de automaticamente encontrar os termos usando a API do Google Trends, mas eu não sei utilizar muito bem o git.
Eu criei uma nova branch no repositório clonado e tentei fazer um push dela mas aparece a seguinte mensagem:

$ git push origin auto-term-search 
Username for 'https://github.com': Pacheco95
Password for 'https://[email protected]': 
remote: Permission to filipedeschamps/video-maker.git denied to Pacheco95.
fatal: unable to access 'https://github.com/filipedeschamps/video-maker.git/': The requested URL returned error: 403

Desculpem a minha ignorância quando se trata de utilizar o git de forma colaborativa.

como rodar o projeto?

desculpe a burrice mais não manjo nada de js! como faço para rodar ? sei bem pouco de python e lá eu uso anaconda ou algo assim mais nesse projeto estou perdido :(

Problemas ao executar node index.js? Veja estas orientações aqui

Ae galerinha, para rodar o projeto você tem que utilizar o comando no terminal de sua preferência, na pasta do projeto: "node índex.js".

Provavelmente vai dar um error, Então vá na pasta 'credentials', crie um arquivo JSON e coloque suas credenciais do Algorithmia e do Watson.
Exemplo:

{
"apiKey": "(sua APIKEY aqui)"
}

Se você tentar rodar sem criar esse arquivo JSON, vai sempre dar o erro, porque quando o algoritmo for fazer a requisição não vai ser possível aceitar.

Edit:

A API Key tem que ser sua, ou seja, você tem que ir no site, criar a conta, pegar a sua api e inserí-la.

Informações atualizadas aqui #89

Google Trends em Python

@filipedeschamps
Queria somente deixar aqui a minha solução de como pegar a trending do google em python,pois a pouco documentação sobre em português e também mostrar que esse projeto pode ser feito em outras linguagens como python.

import codecs
import os
import urllib.request
from xml.etree import ElementTree

url = 'https://trends.google.com/trends/trendingsearches/daily/rss?geo=BR'
keywords_filename = './keywords.txt'
tmp_filename = './keywords_tmp.xml'
urllib.request.urlretrieve(url, tmp_filename)
if os.path.isfile(keywords_filename):
    with open(keywords_filename, 'r') as f:
        old_list = f.read().splitlines()
else:
    old_list = []
tree = ElementTree.parse(tmp_filename)
root = tree.getroot()
fresh_list = [title.text.lower()
              for title in root.iter('title')]
try:
    fresh_list.remove('daily search trends')
except ValueError:
    pass
output = '\n'.join(a for a in list(set(old_list + fresh_list)))
with codecs.open('./keywords.txt', 'w+', "utf-8") as f:
    f.write(output)
os.remove(tmp_filename)

Muito Obrigado e Parabéns Filipe por essa iniciativa de criar o projeto
Have fun and Code Forever

Adicionar orientação a comunidade

Olá devs. O projeto é muito legal em si próprio, e está possibilitando que muitas pessoas aprendam a programar ou aprendam novas skills. Entretanto, suponho que uma grande parte das pessoas aqui não estão utilizando o espaço de Issues corretamente. Eu vi usuários fazendo a divulgação da comunidade do Discord em Issues abertos até mesmo a criação de Issues somente para divulgar forks em outra linguagem (o que mesmo sendo ótimo, acredito que a sessão Issues não seja o lugar para a divulgação). Assim sendo, proponho que seja adicionado uma sessão de orientação a comunidade (já tem um Issue aberto com a ideia de adicionar um código de conduta, porém acho que esse não abrange orientação de como usar corretamente as seções do Github. Talves orientação até mesmo a utilização do StackOverflow para perguntas e resolução de bugs.

Erro ao executas o index.js mesmo depois do "npm install algorithmia"

Olá, já arrumei o "algorithmia.json" e executei o "npm install algorithmia", e agora está dando esse erro ao executar o index.js, alguém pode me ajudar?

C:\WINDOWS\system32\cmd.exe[9348]: c:\ws\src\node_file.cc:1599: Assertion `args[1]->IsInt32()' failed.
 1: 00007FF62D53F04A v8::internal::GCIdleTimeHandler::GCIdleTimeHandler+5114
 2: 00007FF62D51A0C6 node::MakeCallback+4518
 3: 00007FF62D51A17F node::MakeCallback+4703
 4: 00007FF62D4E13E2 uv_loop_fork+34674
 5: 00007FF62DD1C122 v8::internal::OptimizingCompileDispatcher::Unblock+59890
 6: 00007FF62DD1D5AD v8::internal::OptimizingCompileDispatcher::Unblock+65149
 7: 00007FF62DD1C606 v8::internal::OptimizingCompileDispatcher::Unblock+61142
 8: 00007FF62DD1C4EB v8::internal::OptimizingCompileDispatcher::Unblock+60859
 9: 000002397DADC5C1 

Erro node index.js

Boa tarde!

Felipe e todos membros do grupo, como estao?

Estou tendo um problema quando digito o comando node index.js - não esta funcionando e esta voltado este erro

module.js:549
throw err;
^

Error: Cannot find module 'sbd'
at Function.Module._resolveFilename (module.js:547:15)
at Function.Module._load (module.js:474:25)
at Module.require (module.js:596:17)
at require (internal/module.js:11:18)
at Object. (/home/patricia/rob-s-maker/robots/text.js:3:35)
at Module._compile (module.js:652:30)
at Object.Module._extensions..js (module.js:663:10)
at Module.load (module.js:565:32)
at tryModuleLoad (module.js:505:12)
at Function.Module._load (module.js:497:3)

Conseguem me ajudar?

Tentei buscar uma solução e não consegui.

Watson - Access denied

Fiz tudo igual ao vídeo, substituindo as credenciais, mas ao executar o index.js eu recebo este erro:

Error: Insufficient credentials provided in constructor argument. Refer to the documentation for the required parameters. Common examples are username/password, api_key, and iam_access_token.

Mas aí eu alterei a importação das credenciais no robô de texto pra ficar assim:

const watsonCredentials = require('../credentials/watson-nlu.json')

E na utilização assim:

var nlu = new naturalLanguageUnderstandingV1({
   version: '2018-11-16',
   ...watsonCredentials
})

Mas mesmo com essas alterações eu obtive o erro:

Error: Unauthorized: Access is denied due to invalid credentials.

Alguém sabe resolver?

Error

Alguém sabe como realizar a correção desse erro?

internal/modules/cjs/loader.js:615
throw err;
^

Error: Cannot find module '../credentials/algorithmia.json'
at Function.Module._resolveFilename (internal/modules/cjs/loader.js:613:15)
at Function.Module._load (internal/modules/cjs/loader.js:539:25)
at Module.require (internal/modules/cjs/loader.js:667:17)
at require (internal/modules/cjs/helpers.js:20:18)
at Object. (/var/app/video-maker/robots/text.js:2:27)
at Module._compile (internal/modules/cjs/loader.js:738:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:749:10)
at Module.load (internal/modules/cjs/loader.js:630:32)
at tryModuleLoad (internal/modules/cjs/loader.js:570:12)
at Function.Module._load (internal/modules/cjs/loader.js:562:3)

Duvida?! Video Robot!

@filipedeschamps
@danielschmitz
Bom dia a todos.Estou tentando criar o video apartir das imagens ou seja renderiza las.Entrentanto não consegui achar nenhuma api que faça ou alguma documentação sobre.Procurei sobre o adobe after effects e como usar e n encontrei.

Alguem sabe qual api o Filipe o usou ou alguma ideia sobre?

Seria de grande ajuda.

Ate agora somente consegui isso com o ffmpeg mesmo assim o video n fica bem redimensionado como o do Deschamps e sem a intro do after effects

import os

class VideoRobot():

    def __init__(self, project_directory):
        self.images_directory = project_directory
        self.subtitles_template =  NOTE:TEMPLATE DE SUBTITILES RETIRADO DEVIDO AS ASPAS!
    def make_video(self):
        command = "cat {0}/*.jpg | ffmpeg -y -framerate 0.08 -f image2pipe -i - {0}/output_imgs.mp4".format(self.images_directory)


        os.system(command)

    def add_subtitles(self, sentences):
        self.subtitles_template = self.subtitles_template.format(sentences[0],
            sentences[1], sentences[2], sentences[3],
            sentences[4], sentences[5], sentences[6])

        with open("{0}/subtitles.srt".format(self.images_directory), "w") as subtitles_file:
            subtitles_file.write(self.subtitles_template)

        os.system("ffmpeg -y -i {0}/output_imgs.mp4 -vf subtitles={0}/subtitles.srt{0}/output_text.mp4".format(self.images_directory))

    def add_music(self):
        os.system("ffmpeg -y -i {0}/output_text.mp4 -i music.ogg -c copy -map 0:v:0 -map 1:a:0 {0}/final_video.mp4".format(self.images_directory))

   def convert_to_jpg_and_Resize(self, files):
        print(files)
        for f in files:
            imagem = Image.open(f)
            altura_desejada = 720
            largura_desejada = 1280
            largura_imagem = imagem.size[0]
            altura_imagem = imagem.size[1]

            if largura_imagem > altura_imagem:
                print("largura_imagem > altura_imagem")
                percentual = float(largura_desejada) / float(largura_imagem)
                altura_desejada = int((altura_imagem * percentual))
                imagem = imagem.resize((largura_desejada, altura_desejada), Image.ANTIALIAS)
            else:
                print("altura_imagem > largura_imagem")
                percentual = float(altura_desejada) / float(altura_imagem)
                largura_desejada = int((largura_imagem * percentual))
                imagem = imagem.resize((largura_desejada, altura_desejada), Image.ANTIALIAS)
            imagem.save('{}-{}x{}.jpg'.format(f,imagem.size[0], imagem.size[1]))
            os.remove(f)

Muito Obrigado e até breve!

Erro Watson

Esse erro aparece quando executo o "index.js"
Insufficient credentials provided in constructor argument. Refer to the document for the required parameters. Common examples are username/password, api_key, and iam_access_token.
Parece que preciso botar meu user e senha que cadastrei no watson mas o @filipedeschamps fez com outro comando.

var nlu = new NaturalLanguageUnderstandingV1({
    iam_apikey: watsonApiKey,
    version: '2018-04-05',
    url: 'https://gateway.watsonplatform.net/natural-language-understanding/api/'
})

error

Remover as opções "['Who is', 'What is', 'The history of']" e colocar que podemos digitar ao invés de escolher uma das opções

Código anterior:

unction askAndReturnPrefix() {
    const prefixes = ['Who is', 'What is', 'The history of']
    const selectedPrefixIndex = readline.keyInSelect(prefixes, 'Choose one option: ')
    const selectedPrefixText = prefixes[selectedPrefixIndex]

    return selectedPrefixText
  }

Código com as opções removidas:

function askAndReturnPrefix() {
    return readline.question('Prefix: ')

    return selectedPrefixText
  }

OBSERVAÇÃO: Como não foi testado na parte do YouTube, não sei se funcionará corretamente.

É possível faze-lo em Português?

Percebi que ele está em Inglês, e gostaria de coloca-lo em Português, pois vi o código da Algorithmia em relação ao texto, e ele tem em Português, queria colocá-lo em Português, porém só mexia com HTML, CSS e muito pouco em Java. Enfim, a pergunta é: É possível colocá-lo em Português?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.