@scrypted/libav 1.0.137 → 1.0.139
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/flags.d.ts +14 -0
- package/lib/flags.js +20 -0
- package/lib/flags.js.map +1 -0
- package/lib/index.d.ts +2 -0
- package/lib/index.js +19 -0
- package/lib/index.js.map +1 -1
- package/lib/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/src/flags.ts +15 -0
- package/src/formatcontext.cpp +30 -0
- package/src/index.ts +5 -0
package/lib/flags.d.ts
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export declare enum AVPacketFlags {
|
|
2
|
+
AV_PKT_FLAG_KEY = 1,
|
|
3
|
+
AV_PKT_FLAG_CORRUPT = 2,
|
|
4
|
+
AV_PKT_FLAG_DISCARD = 4,
|
|
5
|
+
AV_PKT_FLAG_TRUSTED = 8,
|
|
6
|
+
AV_PKT_FLAG_DISPOSABLE = 16
|
|
7
|
+
}
|
|
8
|
+
export declare enum AVFrameFlags {
|
|
9
|
+
AV_FRAME_FLAG_KEY = 1,
|
|
10
|
+
AV_FRAME_FLAG_CORRUPT = 2,
|
|
11
|
+
AV_FRAME_FLAG_DISCARD = 4,
|
|
12
|
+
AV_FRAME_FLAG_TRUSTED = 8,
|
|
13
|
+
AV_FRAME_FLAG_DISPOSABLE = 16
|
|
14
|
+
}
|
package/lib/flags.js
ADDED
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.AVFrameFlags = exports.AVPacketFlags = void 0;
|
|
4
|
+
var AVPacketFlags;
|
|
5
|
+
(function (AVPacketFlags) {
|
|
6
|
+
AVPacketFlags[AVPacketFlags["AV_PKT_FLAG_KEY"] = 1] = "AV_PKT_FLAG_KEY";
|
|
7
|
+
AVPacketFlags[AVPacketFlags["AV_PKT_FLAG_CORRUPT"] = 2] = "AV_PKT_FLAG_CORRUPT";
|
|
8
|
+
AVPacketFlags[AVPacketFlags["AV_PKT_FLAG_DISCARD"] = 4] = "AV_PKT_FLAG_DISCARD";
|
|
9
|
+
AVPacketFlags[AVPacketFlags["AV_PKT_FLAG_TRUSTED"] = 8] = "AV_PKT_FLAG_TRUSTED";
|
|
10
|
+
AVPacketFlags[AVPacketFlags["AV_PKT_FLAG_DISPOSABLE"] = 16] = "AV_PKT_FLAG_DISPOSABLE";
|
|
11
|
+
})(AVPacketFlags || (exports.AVPacketFlags = AVPacketFlags = {}));
|
|
12
|
+
var AVFrameFlags;
|
|
13
|
+
(function (AVFrameFlags) {
|
|
14
|
+
AVFrameFlags[AVFrameFlags["AV_FRAME_FLAG_KEY"] = 1] = "AV_FRAME_FLAG_KEY";
|
|
15
|
+
AVFrameFlags[AVFrameFlags["AV_FRAME_FLAG_CORRUPT"] = 2] = "AV_FRAME_FLAG_CORRUPT";
|
|
16
|
+
AVFrameFlags[AVFrameFlags["AV_FRAME_FLAG_DISCARD"] = 4] = "AV_FRAME_FLAG_DISCARD";
|
|
17
|
+
AVFrameFlags[AVFrameFlags["AV_FRAME_FLAG_TRUSTED"] = 8] = "AV_FRAME_FLAG_TRUSTED";
|
|
18
|
+
AVFrameFlags[AVFrameFlags["AV_FRAME_FLAG_DISPOSABLE"] = 16] = "AV_FRAME_FLAG_DISPOSABLE";
|
|
19
|
+
})(AVFrameFlags || (exports.AVFrameFlags = AVFrameFlags = {}));
|
|
20
|
+
//# sourceMappingURL=flags.js.map
|
package/lib/flags.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"flags.js","sourceRoot":"","sources":["../src/flags.ts"],"names":[],"mappings":";;;AAAA,IAAY,aAMX;AAND,WAAY,aAAa;IACvB,uEAAwB,CAAA;IACxB,+EAA4B,CAAA;IAC5B,+EAA4B,CAAA;IAC5B,+EAA4B,CAAA;IAC5B,sFAA+B,CAAA;AACjC,CAAC,EANW,aAAa,6BAAb,aAAa,QAMxB;AAED,IAAY,YAMX;AAND,WAAY,YAAY;IACtB,yEAA0B,CAAA;IAC1B,iFAA8B,CAAA;IAC9B,iFAA8B,CAAA;IAC9B,iFAA8B,CAAA;IAC9B,wFAAiC,CAAA;AACnC,CAAC,EANW,YAAY,4BAAZ,YAAY,QAMvB"}
|
package/lib/index.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
export * from './flags';
|
|
1
2
|
export declare function isLoaded(): boolean;
|
|
2
3
|
export declare function getAddonPath(installPath?: string): string;
|
|
3
4
|
export declare function getFFmpegPath(installPath?: string): string;
|
|
@@ -117,6 +118,7 @@ export declare function createAVFilter(options: {
|
|
|
117
118
|
export declare function createAVFrame(width: number, height: number, pixelFormat: string, fillBlack?: boolean): AVFrame;
|
|
118
119
|
export declare function createAVBitstreamFilter(filter: string): AVBitstreamFilter;
|
|
119
120
|
export declare function getBinaryUrl(): string;
|
|
121
|
+
export declare function createSdp(formatContexts: AVFormatContext[]): any;
|
|
120
122
|
export declare function toJpeg(frame: AVFrame, quality: number): Promise<Buffer<ArrayBufferLike>>;
|
|
121
123
|
export declare function toBuffer(frame: AVFrame): Promise<Buffer<ArrayBufferLike>>;
|
|
122
124
|
export declare const version: string;
|
package/lib/index.js
CHANGED
|
@@ -1,4 +1,18 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
2
16
|
var __addDisposableResource = (this && this.__addDisposableResource) || function (env, value, async) {
|
|
3
17
|
if (value !== null && value !== void 0) {
|
|
4
18
|
if (typeof value !== "object" && typeof value !== "function") throw new TypeError("Object expected.");
|
|
@@ -68,6 +82,7 @@ exports.createAVFilter = createAVFilter;
|
|
|
68
82
|
exports.createAVFrame = createAVFrame;
|
|
69
83
|
exports.createAVBitstreamFilter = createAVBitstreamFilter;
|
|
70
84
|
exports.getBinaryUrl = getBinaryUrl;
|
|
85
|
+
exports.createSdp = createSdp;
|
|
71
86
|
exports.toJpeg = toJpeg;
|
|
72
87
|
exports.toBuffer = toBuffer;
|
|
73
88
|
const detect_libc_1 = __importDefault(require("detect-libc"));
|
|
@@ -77,6 +92,7 @@ const fs_1 = __importDefault(require("fs"));
|
|
|
77
92
|
const path_1 = __importDefault(require("path"));
|
|
78
93
|
const tar_1 = require("tar");
|
|
79
94
|
const package_json_1 = __importDefault(require("../package.json"));
|
|
95
|
+
__exportStar(require("./flags"), exports);
|
|
80
96
|
let addon;
|
|
81
97
|
function isLoaded() {
|
|
82
98
|
return !!addon;
|
|
@@ -214,6 +230,9 @@ async function encodeJpeg(softwareFrame, quality) {
|
|
|
214
230
|
__disposeResources(env_1);
|
|
215
231
|
}
|
|
216
232
|
}
|
|
233
|
+
function createSdp(formatContexts) {
|
|
234
|
+
return loadAddon().createSdp(formatContexts);
|
|
235
|
+
}
|
|
217
236
|
async function toJpeg(frame, quality) {
|
|
218
237
|
const env_2 = { stack: [], error: void 0, hasError: false };
|
|
219
238
|
try {
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/lib/tsconfig.tsbuildinfo
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"root":["../src/index.ts"],"version":"5.8.2"}
|
|
1
|
+
{"root":["../src/flags.ts","../src/index.ts"],"version":"5.8.2"}
|
package/package.json
CHANGED
package/src/flags.ts
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export enum AVPacketFlags {
|
|
2
|
+
AV_PKT_FLAG_KEY = 0x0001,
|
|
3
|
+
AV_PKT_FLAG_CORRUPT = 0x0002,
|
|
4
|
+
AV_PKT_FLAG_DISCARD = 0x0004,
|
|
5
|
+
AV_PKT_FLAG_TRUSTED = 0x0008,
|
|
6
|
+
AV_PKT_FLAG_DISPOSABLE = 0x0010,
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
export enum AVFrameFlags {
|
|
10
|
+
AV_FRAME_FLAG_KEY = 0x0001,
|
|
11
|
+
AV_FRAME_FLAG_CORRUPT = 0x0002,
|
|
12
|
+
AV_FRAME_FLAG_DISCARD = 0x0004,
|
|
13
|
+
AV_FRAME_FLAG_TRUSTED = 0x0008,
|
|
14
|
+
AV_FRAME_FLAG_DISPOSABLE = 0x0010,
|
|
15
|
+
}
|
package/src/formatcontext.cpp
CHANGED
|
@@ -786,6 +786,35 @@ Napi::Value AVFormatContextObject::CreateSDP(const Napi::CallbackInfo &info)
|
|
|
786
786
|
return sdpString;
|
|
787
787
|
}
|
|
788
788
|
|
|
789
|
+
Napi::Value createSDP(const Napi::CallbackInfo &info) {
|
|
790
|
+
Napi::Env env = info.Env();
|
|
791
|
+
|
|
792
|
+
if (info.Length() < 1 || !info[0].IsArray()) {
|
|
793
|
+
Napi::TypeError::New(env, "Array of AVFormatContext expected for argument 0").ThrowAsJavaScriptException();
|
|
794
|
+
return env.Undefined();
|
|
795
|
+
}
|
|
796
|
+
|
|
797
|
+
Napi::Array formatContextArray = info[0].As<Napi::Array>();
|
|
798
|
+
size_t length = formatContextArray.Length();
|
|
799
|
+
AVFormatContext *ctx[length];
|
|
800
|
+
|
|
801
|
+
for (size_t i = 0; i < length; i++) {
|
|
802
|
+
Napi::Object formatContextObject = formatContextArray.Get(i).As<Napi::Object>();
|
|
803
|
+
AVFormatContextObject *avFormatContextObject = Napi::ObjectWrap<AVFormatContextObject>::Unwrap(formatContextObject);
|
|
804
|
+
ctx[i] = avFormatContextObject->fmt_ctx_;
|
|
805
|
+
}
|
|
806
|
+
|
|
807
|
+
char sdp[65536];
|
|
808
|
+
int ret = av_sdp_create(ctx, length, sdp, sizeof(sdp));
|
|
809
|
+
if (ret < 0) {
|
|
810
|
+
Napi::Error::New(env, AVErrorString(ret)).ThrowAsJavaScriptException();
|
|
811
|
+
return env.Undefined();
|
|
812
|
+
}
|
|
813
|
+
|
|
814
|
+
Napi::String sdpString = Napi::String::New(env, sdp);
|
|
815
|
+
return sdpString;
|
|
816
|
+
}
|
|
817
|
+
|
|
789
818
|
Napi::Object Init(Napi::Env env, Napi::Object exports)
|
|
790
819
|
{
|
|
791
820
|
av_log_set_level(AV_LOG_QUIET);
|
|
@@ -799,6 +828,7 @@ Napi::Object Init(Napi::Env env, Napi::Object exports)
|
|
|
799
828
|
AVBitstreamFilter::Init(env, exports);
|
|
800
829
|
|
|
801
830
|
exports.Set(Napi::String::New(env, "setLogLevel"), Napi::Function::New(env, setLogLevel));
|
|
831
|
+
exports.Set(Napi::String::New(env, "createSdp"), Napi::Function::New(env, createSDP));
|
|
802
832
|
return exports;
|
|
803
833
|
}
|
|
804
834
|
|
package/src/index.ts
CHANGED
|
@@ -6,6 +6,7 @@ import { IncomingMessage } from 'http';
|
|
|
6
6
|
import path from 'path';
|
|
7
7
|
import { x as tarx } from 'tar';
|
|
8
8
|
import packageJson from '../package.json';
|
|
9
|
+
export * from './flags';
|
|
9
10
|
|
|
10
11
|
let addon: any;
|
|
11
12
|
|
|
@@ -286,6 +287,10 @@ async function encodeJpeg(softwareFrame: AVFrame, quality: number) {
|
|
|
286
287
|
return transcodePacket.getData();
|
|
287
288
|
}
|
|
288
289
|
|
|
290
|
+
export function createSdp(formatContexts: AVFormatContext[]) {
|
|
291
|
+
return loadAddon().createSdp(formatContexts);
|
|
292
|
+
}
|
|
293
|
+
|
|
289
294
|
export async function toJpeg(frame: AVFrame, quality: number) {
|
|
290
295
|
if (frame.pixelFormat === 'yuvj420p')
|
|
291
296
|
return await encodeJpeg(frame, quality);
|