{"id":18550815,"url":"https://github.com/marcuth/video-maker-v2","last_synced_at":"2025-04-09T22:31:28.165Z","repository":{"id":173681556,"uuid":"651099288","full_name":"marcuth/video-maker-v2","owner":"marcuth","description":"Esse é um projeto que gera vídeos para o YouTube, ele te pede um tema e outras configurações como o idioma. O resto ele faz sozinho, desde roteiro, imagens, voz, trilha sonora e até publica o vídeo no YouTube por você!","archived":false,"fork":false,"pushed_at":"2024-07-30T18:07:20.000Z","size":55079,"stargazers_count":4,"open_issues_count":2,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-24T12:47:31.968Z","etag":null,"topics":["bot","maker","video","youtube"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/marcuth.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-06-08T13:44:58.000Z","updated_at":"2024-07-30T18:07:24.000Z","dependencies_parsed_at":null,"dependency_job_id":"77f2bd3e-bcc0-4719-b85a-103735ed9cac","html_url":"https://github.com/marcuth/video-maker-v2","commit_stats":null,"previous_names":["1marcuth/video-maker-v2","marcuth/video-maker-v2"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marcuth%2Fvideo-maker-v2","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marcuth%2Fvideo-maker-v2/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marcuth%2Fvideo-maker-v2/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marcuth%2Fvideo-maker-v2/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/marcuth","download_url":"https://codeload.github.com/marcuth/video-maker-v2/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248123519,"owners_count":21051486,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bot","maker","video","youtube"],"created_at":"2024-11-06T21:05:49.147Z","updated_at":"2025-04-09T22:31:23.152Z","avatar_url":"https://github.com/marcuth.png","language":"JavaScript","readme":"\u003ch1 align=\"center\"\u003eVideo Maker V2 - \"Evolução\"\u003c/h1\u003e\n\n\u003cp align=\"center\"\u003e\n    \u003cimg alt=\"Robot image\" src=\"https://media.discordapp.net/attachments/1112536362411884664/1116188752038088704/image.png\"\u003e\n\u003c/p\u003e\n\n---\n\n## Projeto original\n\nO projeto original foi feito pelo YouTuber [Filipe Deschamps](https://www.youtube.com/@FilipeDeschamps) em sua série de vídeos [4 robôs que criam vídeos no YouTube](https://www.youtube.com/watch?v=kjhu1LEmRpY\u0026list=PLMdYygf53DP4YTVeu0JxVnWq01uXrLwHi) onde ele ensina passo a passo do zero de como criar os robôs.\n\n\u003cp align=\"center\"\u003e\n    \u003cimg alt=\"Video thumbnail\" src=\"https://cdn.discordapp.com/attachments/1042970956928397315/1116386416159621222/68747470733a2f2f692e7974696d672e636f6d2f76692f6b6a6875314c456d5270592f68713732302e6a70673f7371703d2d6f61796d774563434f6743454d6f425346587971347170417734494152554141496843474146774163414242673d3d2672733d414f6e34434c44712d564c7759586e3656356e507338712d32614f44315153657441.png?ex=65e9db5f\u0026is=65d7665f\u0026hm=34b53db3a76d616d902c7706c9962c7a416478300bf76580b6eda479e0ec9a27\u0026\"\u003e\n\u003c/p\u003e\n\n---\n\n## Este projeto\n\nEste projeto foi baseado em uma versão anterior que eu fiz ([aqui](https://github.com/1Marcuth/video-maker)) assistindo a série do [Filipe Deschamps](https://www.youtube.com/@FilipeDeschamps) porém com algumas alterações por conta que eu quis escrever um código mais moderno e não conseguia ter acesso à certas ferramentas como o *Watson*, *Algorithmia*, *Adobe After Effects* seja por indisponibilidade, requirimento de cartão de crédito ou por eu ter que pagar um software em si.\n\u003cp align=\"center\"\u003e\n    \u003cimg alt=\"My YouTube channel\" src=\"https://cdn.discordapp.com/attachments/1042970956928397315/1116385836699754558/image.png?ex=65e9dad4\u0026is=65d765d4\u0026hm=0ab8b7a4ecb35c63f90a1a2791b8915a41d746fe95dc56d5cba5f472f4c16e2f\u0026\"\u003e\n\u003c/p\u003e\n\n---\n\n### Novas funcionalidades\n\n- **Empacotamento:** Agora toda vez que terminar de criar um vídeo a pasta com os arquivos será compactada e liberará espaço para um novo vídeo ser criado.\n- **Configuração:** Agora você pode configurar o bot para gerar conteúdos em outros idiomas e demais especificações.\n- **Voz sinterizada:** Como o pessoal já havia proposto em algum momento do desenvolvimento do projeto eu decidi implementar isso também.\n- **Google Trends:** Essa também o pessoal já havia proposto a implementação, aí eu também implementei aqui.\n- **ChatGPT:** Agora isso foi inédito! Eu pensei assim \"Cara... isso seria beeemm MASSA! Preciso implementar!!!\". Ele funcionará como um segundo provedor de conteúdos.\n\n---\n\n### Novo Robô!\n\nAgora por conta da voz sintética foi necessário criar um robô específico para manipular os áudios do vídeo, a música e a voz. também adicionei mais músicas para ficar mais interessante e a escolha delas é feita de forma aleatória.\n\n---\n\n### Segurança\n\nPor motivos de sergurança optei por usar um aquivo `.env` para armazenar as chaves de API e outros quaisquer dados sensíveis ou de configuração.\n\n---\n\n### Extras\n\n- **`makeLogger()`** Fiz uma função que cria um logger para e usa o nome dele ao invés de toda vez ter que usar o `console.log(\"\u003e [my-robot] Starting...\")` usar o `logger.log(\"Starting...\")`.\n- **`getContentFromWikipedia()`** Busca conteúdos do Wikipédia pelo nome da página.\n- **`extractKeywords()`** Extrai palavras-chave de um texto usando uma API gratuita.\n\nConsulte a pasta de `utils` para conferir as outras funcionalidades.\n\n---\n\n### Esclarecimentos\n\n- Eu não sou o cara que liga muito da forma que eu faço os commits (tenho preguiça de organizar isso).\n\n---\n\n### Ideias\n\n- [ ] Adicionar IA que gera imagens como o [Stable Diffuson](https://stablediffusionweb.com/) servir como um sergundo provedor de imagens.\n- [x] Adicionar um provedor de geração de áudios com uma voz mais realista.\n- [ ] Reescrever esse código JavaScript em código TypeScript.\n- [ ] Adicionar uma API de traduções para ser usada em caso se não encontrar uma página da Wikipédia na língua desejada, pegando o conteúdo de uma página em outro idioma e traduzindo para o idioma desejado.\n\n---\n\n## Objetivos\n\n- **Por quê?** Cara, implementar isso é muito massa.\n- **Para quê?** Gosto de testar novas tecnologias e ver os avanços na nossa área.\n\n---\n\n## Exemplos\n\nCanal no YouTube com exemplos de vídeos gerados: https://www.youtube.com/\n\n---\n\n## Como rodar esse projeto?\n\n---\n\n### Clonar projeto\n\nNavegue até a pasta que você deseja que o projeto fique e rode o seguinte comando:\n\n```\ngit clone https://github.com/1Marcuth/video-maker-v2.git .\n```\n\n---\n\n### Instalando bibliotecas\n\nMolezinha! Só rodar esse comando\n\n```\nnpm i\n```\n\n---\n\n### Configurar variáveis de ambiente\n\nNa raiz do projeto crie um arquivo `.env` com o seguinte conteúdo, claro não esquecendo de substituir cada campo pelo seu respectivo valor (não darei detalhes aqui de como conseguir cada um deles, dê uma pesquisada se tiver dúvida). \n\n```\nOPENAI_KEY = \"YOUR_API_KEY_HERE\"\nRAPIDAPI_KEY = \"YOUR_API_KEY_HERE\"\nGOOGLE_SEARCH_KEY = \"YOUR_API_KEY_HERE\"\nGOOGLE_SEARCH_ENGINE_ID = \"YOUR_ENGINE_ID_HERE\"\nAWS_SECRET_ACCESS_KEY = \"YOUR_API_KEY_HERE\"\nAWS_ACCESS_KEY_ID = \"YOUR_AWS_KEY_ID_HERE\"\nAWS_REGION = \"YOUR_AWS_REGION_HERE\"\nRUNNING_IN = \"local\"\n```\n\nNão se esqueça de criar uma pasta na raiz do projeto com o nome de `credentials` para armazenar as credenciais da sua aplicação do YouTube. Use o nome de `google-youtube.json` pra esse arquivo.\n\n---\n\n### Como criar vídeos?\n\nFácil. Comece executando este comando para começar:\n\n```\nnpm start\n```\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmarcuth%2Fvideo-maker-v2","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmarcuth%2Fvideo-maker-v2","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmarcuth%2Fvideo-maker-v2/lists"}