Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/ribeirogab/cs50-translator
Tradutor de legendas para o curso: HarvardX: CS50
https://github.com/ribeirogab/cs50-translator
fs google-translate javascript nodejs translator
Last synced: about 2 months ago
JSON representation
Tradutor de legendas para o curso: HarvardX: CS50
- Host: GitHub
- URL: https://github.com/ribeirogab/cs50-translator
- Owner: ribeirogab
- License: mit
- Created: 2020-03-11T19:36:01.000Z (almost 5 years ago)
- Default Branch: master
- Last Pushed: 2022-12-10T21:24:12.000Z (about 2 years ago)
- Last Synced: 2023-03-04T10:34:26.515Z (almost 2 years ago)
- Topics: fs, google-translate, javascript, nodejs, translator
- Language: JavaScript
- Homepage:
- Size: 610 KB
- Stars: 0
- Watchers: 1
- Forks: 1
- Open Issues: 7
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Tradutor de legendas CS50
> Tradutor de legendas, voltado especialmente para legendas do CS50.### O que é o CS50?
"O CS50 é um curso introdutório on-campus e on-line sobre ciência da computação ministrado na Universidade de Harvard." / Fonte: [Wikipedia](https://en.wikipedia.org/wiki/CS50)
* [Vídeo introdutório do CS50](https://www.youtube.com/watch?time_continue=52&v=3oFAJtFE8YU&feature=emb_logo)Caso você tenha caído de paraquedas, recomento fortemente que assista o vídeo do [Filipe Deschamps](https://www.youtube.com/channel/UCU5JicSrEM5A63jkJ2QvGYw) antes de continuar:
* [Eu fiz um dos melhores cursos de Programação do Mundo! (minhas impressões)](https://www.youtube.com/watch?v=elIl48sZ3rA)### Por que um tradutor de legendas?
Após visitar o site do curso, notei que apenas legendas em inglês estão disponibilizadas, então fiquei pensando em maneiras de contornar isso. Por este motivo e a vontade imensa de acompanhar o conteúdo, criei este tradutor de legendas que acredito que possa ajudar mais pessoas.### Para quem serve este tradutor?
Para qualquer pessoa que esteja interessada no conteúdo incrível disponibilizado pela universidade de Harvard e (como eu) não manjam tanto do inglês.## Começando: Instalação
Para dar início a instalação do tradutor, necesito que você tenha alguns pré-requisitos já instalados na sua máquina:
* [Node.js](https://nodejs.org/en/);
* [npm](https://www.npmjs.com/) ou [Yarn](https://yarnpkg.com/);Após ter os requisitos acima, vamos continuar, primeiro clone o repositório (ou baixe o zip, se preferir):
```sh
git clone https://github.com/ribeirogab/cs50-translator.git
```Com o repositório clonado na sua máquina, acesse-o e instale as dependencias:
```sh
cd cs50-translator
```
Se você utiliza o npm:
```sh
npm install
```
Se você utiliza o Yarn:
```sh
yarn
```
Pronto, primeira parte concluida, você já está com o tradutor e todas as suas dependencias em sua máquina, bora prosseguir...## Cloud Translation API
Para traduzir as legendas utilizei a API do Google, foi a mais performática que encontrei.##### Importante!
Para a tradução das legendas, você precisará de uma **API KEY** do **Cloud Translation API**, para isso (apesar de ser gratuito) você precisará de um cartão de crédito para realizar o cadastro no **Google Cloud**, caso você não possua um cartão de crédito, entre em contato comigo pelo email: [email protected]### Cadastro
Antes de prosseguir, realize o cadastro no **Google Cloud** clicando [**aqui**](https://cloud.google.com/).* [Documentação - Cloud Translation API](https://cloud.google.com/translate/docs/reference/rest/)
### Como conseguir minha API KEY?
Para facilitar as coisas, irei criar um pequeno tutorial em vídeo de como conseguir essa **API KEY**:
* Em breve...### Colocando minha API KEY no tradutor
Com sua **API KEY** "em mãos", vamos implementá-la no tradutor, acesse o arquivo ``JSON`` no seguinte caminho:
```sh
~ /cs50-translator/src/keys/google-translate.json
```
Coloque sua **API KEY** neste arquivo, mais especificamente no lugar do ```"COLOQUE_SUA_API_KEY_AQUI"```:
```json
{
"API_KEY": "COLOQUE_SUA_API_KEY_AQUI"
}
```
## Traduzindo as legendas
Com tudo preparado, agora precisamos das legendas em inglês que serão traduzidas.### Onde encontro as legendas em inglês?
Primeiro de tudo, você precisará realizar um cadastro no site da [**edx**](https://courses.edx.org/) (plataforma que está disponibilizando o curso).
Após o cadastro, acesse o curso **CS50** [clicando aqui](https://courses.edx.org/courses/course-v1:HarvardX+CS50+X/course/), você irá entrar na página geral, com todo o conteúdo. Role para baixo até encontrar o material do **CS50 2020**, algo parecido com isso:
![material_cs502020](https://github.com/ribeirogab/cs50-translator/blob/master/img/material_cs502020.png)Em [```Week 0```](https://courses.edx.org/courses/course-v1:HarvardX+CS50+X/courseware/b94adcd6bd6b4e69b2af7eef0d828674/823f7d8a587743569c13eac2bbbd04dd/?activate_block_id=block-v1%3AHarvardX%2BCS50%2BX%2Btype%40sequential%2Bblock%40823f7d8a587743569c13eac2bbbd04dd), você acessará o conteúdo da semana zero. Após isso, clique em um **ícone de filme** mais especificamente chamado "**Lecture**".
![week0_lecture](https://github.com/ribeirogab/cs50-translator/blob/master/img/week0_lecture.png)Nesta página temos tudo o que precisamos, abaixo do vídeo iremos realizar o download de 2 arquivos:
* O víde0 (clique em "**Download video file**");
* A legenda (clique em "**Download SubRip (.srt) file**");O restante do material segue o mesmo padrão, então você encontrará os vídeos e as legendas para download sempre no mesmo lugar.
## Executando o tradutor
Antes de executar, coloque o arquivo de legenda (.srt) que foi baixado na pasta com o seguinte caminho:
```sh
~ /cs50-translator/src/subtitles/
```##### E então execute:
Se você utiliza o npm:
```sh
npm start
```
Se você utiliza o Yarn:
```sh
yarn start
```O programa irá listar todos os arquivos (deixei um arquivo chamado ```test.srt```caso queira testar a API de tradução) ```.srt``` que estão na pasta ```~ /cs50-translator/src/subtitles/```, escolha o arquivo desejado digitando o seu número referencial.
```sh
yarn start
```O programa iniciará a tradução:
```sh
yarn start
```Por se tratar de um número absurdo de caracteres, ele irá demorar um pouco dependendo do desempenho da sua máquina, mas nada muito surreal. Mas em quanto o programa traduz a nossa legenda, vamos para última parte desta "jornada" para conseguir acompanhar o conteúdo do CS50.
## Colocando a legenda traduzida no vídeo
Com a legenda já traduzida, bora colocá-la no vídeo!
Para facilitar novamente, irei fazer alguns pequenos tutoriais de como implementar a legenda em vídeos nos diferentes sistemas operacionais. Mas enquanto eu não finalizo esses vídeos, deixarei alguns links que talvez possa ajudar.### Windows
* Em breve...
* [YouTube](https://www.youtube.com/results?search_query=como+colocar+legenda+windows)### macOS
* Em breve...
* [YouTube](https://www.youtube.com/watch?v=F8P4QHZszHA)### Linux
* Em breve...
* [YouTube](https://www.youtube.com/results?search_query=como+colocar+legenda+linux)## Fim
Chegamos ao fim, caso esteja com dificuldades ou com algum erro que está te impossibilitando de realizar os passos propostos, entre em contato comigo pelo email: [email protected]## Meta
Gabriel Ribeiro - [LinkedIn](https://www.linkedin.com/in/ribeirogabx/) - [email protected]Distribuído sob a licença MT. Veja ```LICENSE``` para mais informações.
[https://github.com/ribeirogab/cs50-translator](https://github.com/ribeirogab/cs50-translator)
## Contribuindo
1. Faça um Fork ( https://github.com/ribeirogab/cs50-translator )
2. Crie sua feature branch ( git checkout -b feature/fooBar)
2. Commit suas alterações ( git commit -am 'Add some fooBar')
4. Realize o Push para a branch ( git push origin feature/fooBar)
5. Crie um novo Pull Request