Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/gielcobben/caption-core
Caption Core acts as an abstraction layer for Caption’s core functionality.
https://github.com/gielcobben/caption-core
caption javascript nodejs npm package subtitles
Last synced: about 2 months ago
JSON representation
Caption Core acts as an abstraction layer for Caption’s core functionality.
- Host: GitHub
- URL: https://github.com/gielcobben/caption-core
- Owner: gielcobben
- License: mit
- Created: 2017-11-05T14:12:43.000Z (about 7 years ago)
- Default Branch: master
- Last Pushed: 2022-12-06T18:36:18.000Z (about 2 years ago)
- Last Synced: 2024-11-01T00:51:30.876Z (about 2 months ago)
- Topics: caption, javascript, nodejs, npm, package, subtitles
- Language: JavaScript
- Homepage:
- Size: 3.15 MB
- Stars: 36
- Watchers: 6
- Forks: 4
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
Caption Core
INTRODUCTION
Caption Core acts as an abstraction layer for Caption’s core functionality. This allows third parties to add new sources or update existing ones. By introducing a simple but powerful API, all other modules that rely on Caption’s core will be able to upgrade smoothly.
## 🛠 Install
###### Setup:
```
npm install --save caption-core
```###### ES6
```js
import Caption from "caption-core";
```###### CommonJS
```js
const Caption = require("caption-core");
```
## ⚡️ Contribute
Caption Core is completely open-source. We've tried to make it as easy as possible to
contribute. If you'd like to help out by adding sources or assisting in other parts of development, here's how to get started:###### To begin working locally:
1. [Fork](https://help.github.com/articles/fork-a-repo/) this repository to your
own GitHub account
2. [Clone](https://help.github.com/articles/cloning-a-repository/) it to your
local device: `git clone [email protected]:gielcobben/caption-core.git`
3. Install the dependencies: `npm install`
4. Build the module using Rollup:
`npm run build`
5. Run one of the examples: `node examples/search.js`.
## 📦 Sources
Caption currently uses 2 sources to gather subtitles. We're continuously adding
sources, but the app's open-source nature also allows you to add your own when
desired.###### Standard sources:
* [x] OpenSubtitles
* [x] Addic7ed
## 🔎 Search by query
###### Code:
```js
const Caption = require("caption-core");const ENGLISH = "eng";
const LIMIT = 10;Caption.searchByQuery("Comedians in Cars", ENGLISH, LIMIT)
.on("fastest", subtitles => {
// Fastest source has been checked.
})
.on("completed", subtitles => {
// All sources are checked.
});
```###### Output:
```js
[
{
name: "Comedians in Cars.HDTV.x264.srt",
download: "http://dl.opensubtitles.org/en/download/...",
extention: "",
source: "opensubtitles",
size: "",
score: 4,
},
{
name: "Comedians in Cars.1080p.WEB-DL.H264.srt",
download: "http://dl.opensubtitles.org/en/download/...",
extention: "",
source: "opensubtitles",
size: "",
score: 3,
},
];
```
## 🎞 Search by file
###### Code:
```js
const Caption = require("caption-core");const ENGLISH = "eng";
const LIMIT = 10;Caption.searchByFiles(
[
"~/Movies/Comedians in Cars.S01E01.mp4",
"~/Movies/Comedians in Cars.S01E02.mp4",
],
ENGLISH,
LIMIT,
).on("completed", subtitles => {
// All sources are checked.
});
```###### Output:
```js
[
{
name: "Comedians in Cars.HDTV.x264.srt",
download: "http://dl.opensubtitles.org/en/download/...",
extention: "",
source: "opensubtitles",
size: "",
score: 4,
},
{
name: "Comedians in Cars.1080p.WEB-DL.H264.srt",
download: "http://dl.opensubtitles.org/en/download/...",
extention: "",
source: "addic7ed",
size: "",
score: 3,
},
];
```
## 📺 Download subtitle
###### Code:
```js
const Caption = require("caption-core");Caption.download(
{
name: "Comedians in Cars.HDTV.x264.srt",
download: "http://dl.opensubtitles.org/en/download/...",
extention: "",
source: "opensubtitles",
size: "",
score: 4,
},
"opensubtitles",
"~/Movies/Comedians in Cars.S01E01.srt",
);
```
## ⭐️ Links
###### Authors:
* [Giel Cobben](https://github.com/gielcobben)
* [Vernon de Goede](https://github.com/vernondegoede)###### Repositories:
* [Caption](https://github.com/gielcobben/caption)
* [Caption Website](https://github.com/gielcobben/getcaption.co)
## 🔑 License
[MIT](https://github.com/gielcobben/Caption/blob/master/LICENSE) © [Giel Cobben](https://twitter.com/gielcobben) & [Vernon de Goede](https://twitter.com/vernon_dg)