@libmedia/avplayer 0.12.0 → 1.0.1
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/dist/esm/1.avplayer.js +1 -0
- package/dist/esm/106.avplayer.js +1 -0
- package/dist/esm/140.avplayer.js +1 -0
- package/dist/esm/160.avplayer.js +1 -0
- package/dist/esm/192.avplayer.js +1 -0
- package/dist/esm/214.avplayer.js +1 -0
- package/dist/esm/230.avplayer.js +1 -0
- package/dist/esm/236.avplayer.js +1 -0
- package/dist/esm/243.avplayer.js +1 -0
- package/dist/esm/265.avplayer.js +1 -0
- package/dist/esm/276.avplayer.js +1 -0
- package/dist/esm/286.avplayer.js +1 -0
- package/dist/esm/29.avplayer.js +1 -0
- package/dist/esm/338.avplayer.js +1 -0
- package/dist/esm/484.avplayer.js +1 -0
- package/dist/esm/494.avplayer.js +1 -0
- package/dist/esm/519.avplayer.js +1 -0
- package/dist/esm/520.avplayer.js +1 -0
- package/dist/esm/521.avplayer.js +1 -0
- package/dist/esm/54.avplayer.js +1 -0
- package/dist/esm/549.avplayer.js +1 -0
- package/dist/esm/588.avplayer.js +1 -0
- package/dist/esm/612.avplayer.js +1 -0
- package/dist/esm/625.avplayer.js +1 -0
- package/dist/esm/652.avplayer.js +1 -0
- package/dist/esm/711.avplayer.js +1 -0
- package/dist/esm/725.avplayer.js +1 -0
- package/dist/esm/728.avplayer.js +1 -0
- package/dist/esm/730.avplayer.js +1 -0
- package/dist/esm/759.avplayer.js +1 -0
- package/dist/esm/772.avplayer.js +1 -0
- package/dist/esm/779.avplayer.js +1 -0
- package/dist/esm/885.avplayer.js +1 -0
- package/dist/esm/887.avplayer.js +1 -0
- package/dist/esm/888.avplayer.js +1 -0
- package/dist/esm/90.avplayer.js +1 -0
- package/dist/esm/908.avplayer.js +1 -0
- package/dist/esm/913.avplayer.js +1 -1
- package/dist/esm/969.avplayer.js +1 -0
- package/dist/esm/981.avplayer.js +1 -0
- package/dist/esm/avplayer.js +1 -1
- package/dist/types/{AVPlayer.d.ts → src/AVPlayer.d.ts} +28 -43
- package/dist/types/{Controller.d.ts → src/Controller.d.ts} +2 -3
- package/dist/types/{JitterBufferController.d.ts → src/JitterBufferController.d.ts} +1 -2
- package/dist/types/{StatsController.d.ts → src/StatsController.d.ts} +1 -1
- package/dist/types/{drm → src/drm}/getKeySystemFromSystemId.d.ts +1 -1
- package/dist/types/{mse → src/mse}/MSEPipeline.d.ts +11 -19
- package/dist/types/src/struct.d.ts +10 -0
- package/dist/types/{subtitle → src/subtitle}/AssRender.d.ts +1 -1
- package/dist/types/{subtitle → src/subtitle}/SubtitleRender.d.ts +4 -4
- package/dist/types/{type.d.ts → src/type.d.ts} +2 -2
- package/dist/umd/1.avplayer.js +1 -0
- package/dist/umd/106.avplayer.js +1 -0
- package/dist/umd/140.avplayer.js +1 -0
- package/dist/umd/160.avplayer.js +1 -0
- package/dist/umd/192.avplayer.js +1 -0
- package/dist/umd/214.avplayer.js +1 -0
- package/dist/umd/230.avplayer.js +1 -0
- package/dist/umd/236.avplayer.js +1 -0
- package/dist/umd/243.avplayer.js +1 -0
- package/dist/umd/265.avplayer.js +1 -0
- package/dist/umd/276.avplayer.js +1 -0
- package/dist/umd/286.avplayer.js +1 -0
- package/dist/umd/29.avplayer.js +1 -0
- package/dist/umd/338.avplayer.js +1 -0
- package/dist/umd/484.avplayer.js +1 -0
- package/dist/umd/494.avplayer.js +1 -0
- package/dist/umd/519.avplayer.js +1 -0
- package/dist/umd/520.avplayer.js +1 -0
- package/dist/umd/521.avplayer.js +1 -0
- package/dist/umd/54.avplayer.js +1 -0
- package/dist/umd/549.avplayer.js +1 -0
- package/dist/umd/588.avplayer.js +1 -0
- package/dist/umd/612.avplayer.js +1 -0
- package/dist/umd/625.avplayer.js +1 -0
- package/dist/umd/652.avplayer.js +1 -0
- package/dist/umd/711.avplayer.js +1 -0
- package/dist/umd/725.avplayer.js +1 -0
- package/dist/umd/728.avplayer.js +1 -0
- package/dist/umd/730.avplayer.js +1 -0
- package/dist/umd/759.avplayer.js +1 -0
- package/dist/umd/772.avplayer.js +1 -0
- package/dist/umd/779.avplayer.js +1 -0
- package/dist/umd/885.avplayer.js +1 -0
- package/dist/umd/887.avplayer.js +1 -0
- package/dist/umd/888.avplayer.js +1 -0
- package/dist/umd/90.avplayer.js +1 -0
- package/dist/umd/908.avplayer.js +1 -0
- package/dist/umd/913.avplayer.js +1 -1
- package/dist/umd/969.avplayer.js +1 -0
- package/dist/umd/981.avplayer.js +1 -0
- package/dist/umd/avplayer.js +1 -1
- package/package.json +14 -13
- package/dist/esm/19.avplayer.js +0 -1
- package/dist/esm/195.avplayer.js +0 -1
- package/dist/esm/201.avplayer.js +0 -1
- package/dist/esm/312.avplayer.js +0 -1
- package/dist/esm/337.avplayer.js +0 -1
- package/dist/esm/367.avplayer.js +0 -1
- package/dist/esm/399.avplayer.js +0 -1
- package/dist/esm/400.avplayer.js +0 -1
- package/dist/esm/421.avplayer.js +0 -1
- package/dist/esm/430.avplayer.js +0 -1
- package/dist/esm/464.avplayer.js +0 -1
- package/dist/esm/531.avplayer.js +0 -1
- package/dist/esm/566.avplayer.js +0 -1
- package/dist/esm/60.avplayer.js +0 -1
- package/dist/esm/620.avplayer.js +0 -1
- package/dist/esm/690.avplayer.js +0 -1
- package/dist/esm/799.avplayer.js +0 -1
- package/dist/esm/801.avplayer.js +0 -1
- package/dist/esm/81.avplayer.js +0 -1
- package/dist/esm/814.avplayer.js +0 -1
- package/dist/esm/82.avplayer.js +0 -1
- package/dist/esm/852.avplayer.js +0 -1
- package/dist/esm/902.avplayer.js +0 -1
- package/dist/esm/945.avplayer.js +0 -1
- package/dist/esm/949.avplayer.js +0 -1
- package/dist/esm/953.avplayer.js +0 -1
- package/dist/types/struct.d.ts +0 -12
- package/dist/umd/19.avplayer.js +0 -1
- package/dist/umd/195.avplayer.js +0 -1
- package/dist/umd/201.avplayer.js +0 -1
- package/dist/umd/312.avplayer.js +0 -1
- package/dist/umd/337.avplayer.js +0 -1
- package/dist/umd/367.avplayer.js +0 -1
- package/dist/umd/399.avplayer.js +0 -1
- package/dist/umd/400.avplayer.js +0 -1
- package/dist/umd/421.avplayer.js +0 -1
- package/dist/umd/430.avplayer.js +0 -1
- package/dist/umd/464.avplayer.js +0 -1
- package/dist/umd/531.avplayer.js +0 -1
- package/dist/umd/566.avplayer.js +0 -1
- package/dist/umd/60.avplayer.js +0 -1
- package/dist/umd/620.avplayer.js +0 -1
- package/dist/umd/690.avplayer.js +0 -1
- package/dist/umd/799.avplayer.js +0 -1
- package/dist/umd/801.avplayer.js +0 -1
- package/dist/umd/81.avplayer.js +0 -1
- package/dist/umd/814.avplayer.js +0 -1
- package/dist/umd/82.avplayer.js +0 -1
- package/dist/umd/852.avplayer.js +0 -1
- package/dist/umd/902.avplayer.js +0 -1
- package/dist/umd/945.avplayer.js +0 -1
- package/dist/umd/949.avplayer.js +0 -1
- package/dist/umd/953.avplayer.js +0 -1
- /package/dist/types/{drm → src/drm}/drm.d.ts +0 -0
- /package/dist/types/{drm → src/drm}/kid2Base64.d.ts +0 -0
- /package/dist/types/{eventType.d.ts → src/eventType.d.ts} +0 -0
- /package/dist/types/{function → src/function}/createMessageChannel.d.ts +0 -0
- /package/dist/types/{function → src/function}/getMediaSource.d.ts +0 -0
- /package/dist/types/{function → src/function}/supportOffscreenCanvas.d.ts +0 -0
- /package/dist/types/{worker → src/worker}/AudioPipeline.d.ts +0 -0
- /package/dist/types/{worker → src/worker}/AudioPipelineProxy.d.ts +0 -0
- /package/dist/types/{worker → src/worker}/IODemuxPipeline.d.ts +0 -0
- /package/dist/types/{worker → src/worker}/IODemuxPipelineProxy.d.ts +0 -0
- /package/dist/types/{worker → src/worker}/MSEPipeline.d.ts +0 -0
- /package/dist/types/{worker → src/worker}/MSEPipelineProxy.d.ts +0 -0
- /package/dist/types/{worker → src/worker}/VideoPipeline.d.ts +0 -0
- /package/dist/types/{worker → src/worker}/VideoPipelineProxy.d.ts +0 -0
|
@@ -1,35 +1,19 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
import
|
|
5
|
-
import
|
|
6
|
-
import type
|
|
7
|
-
import
|
|
8
|
-
import type {
|
|
9
|
-
import
|
|
10
|
-
import
|
|
11
|
-
import
|
|
12
|
-
import
|
|
13
|
-
import
|
|
14
|
-
import
|
|
15
|
-
import
|
|
16
|
-
|
|
17
|
-
import type { AVStreamInterface } from "@libmedia/avutil/AVStream";
|
|
18
|
-
import type { AVFormatContextInterface } from "@libmedia/avformat/AVFormatContext";
|
|
19
|
-
import type { Data, Fn } from "@libmedia/common/types/type";
|
|
20
|
-
import type { playerEventChanged, playerEventChanging, playerEventError, playerEventNoParam, playerEventProgress, playerEventSubtitleDelayChange, playerEventTime, playerEventVolumeChange } from "./type";
|
|
21
|
-
import FetchIOLoader from "@libmedia/avnetwork/ioLoader/FetchIOLoader";
|
|
22
|
-
import FileIOLoader from "@libmedia/avnetwork/ioLoader/FileIOLoader";
|
|
23
|
-
import CustomIOLoader from "@libmedia/avnetwork/ioLoader/CustomIOLoader";
|
|
24
|
-
import IODemuxPipelineProxy from "./worker/IODemuxPipelineProxy";
|
|
25
|
-
import AudioPipelineProxy from "./worker/AudioPipelineProxy";
|
|
26
|
-
import MSEPipelineProxy from "./worker/MSEPipelineProxy";
|
|
27
|
-
import type { WebSocketOptions } from "@libmedia/avnetwork/ioLoader/WebSocketIOLoader";
|
|
28
|
-
import WebSocketIOLoader from "@libmedia/avnetwork/ioLoader/WebSocketIOLoader";
|
|
29
|
-
import SocketIOLoader from "@libmedia/avnetwork/ioLoader/SocketIOLoader";
|
|
30
|
-
import WebTransportIOLoader from "@libmedia/avnetwork/ioLoader/WebTransportIOLoader";
|
|
31
|
-
import { DRMType } from "./drm/drm";
|
|
32
|
-
import type { IOLoaderOptions } from "@libmedia/avnetwork/ioLoader/IOLoader";
|
|
1
|
+
import { IOPipeline, DemuxPipeline, AudioDecodePipeline, AudioRenderPipeline, VideoRenderPipeline, Stats } from "@libmedia/avpipeline";
|
|
2
|
+
import { Emitter, type EmitterOptions, type Data, type Fn } from "@libmedia/common";
|
|
3
|
+
import { type Thread, type WebAssemblyResource, compileResource as compile } from "@libmedia/cheap";
|
|
4
|
+
import { AVCodecID, AVMediaType, type AVStreamInterface } from "@libmedia/avutil";
|
|
5
|
+
import { RenderMode } from "@libmedia/avrender";
|
|
6
|
+
import { type AVFormatContextInterface } from "@libmedia/avformat";
|
|
7
|
+
import { FetchIOLoader, FileIOLoader, CustomIOLoader, type WebSocketOptions, WebSocketIOLoader, SocketIOLoader, WebTransportIOLoader, type IOLoaderOptions } from "@libmedia/avnetwork";
|
|
8
|
+
import type { ControllerObserver } from "./Controller.d.ts";
|
|
9
|
+
import * as eventType from "./eventType.d.ts";
|
|
10
|
+
import type MSEPipeline from "./mse/MSEPipeline.d.ts";
|
|
11
|
+
import type { playerEventChanged, playerEventChanging, playerEventError, playerEventNoParam, playerEventProgress, playerEventSubtitleDelayChange, playerEventTime, playerEventVolumeChange } from "./type.d.ts";
|
|
12
|
+
import IODemuxPipelineProxy from "./worker/IODemuxPipelineProxy.d.ts";
|
|
13
|
+
import AudioPipelineProxy from "./worker/AudioPipelineProxy.d.ts";
|
|
14
|
+
import MSEPipelineProxy from "./worker/MSEPipelineProxy.d.ts";
|
|
15
|
+
import { DRMType } from "./drm/drm.d.ts";
|
|
16
|
+
export declare const Events: typeof eventType;
|
|
33
17
|
export interface ExternalSubtitle {
|
|
34
18
|
/**
|
|
35
19
|
* 字幕源,支持 url 和 文件
|
|
@@ -276,9 +260,10 @@ export default class AVPlayer extends Emitter implements ControllerObserver {
|
|
|
276
260
|
static Instances: AVPlayer[];
|
|
277
261
|
static Util: {
|
|
278
262
|
compile: typeof compile;
|
|
279
|
-
browser: import("
|
|
280
|
-
os: import("
|
|
263
|
+
browser: import("packages/common/src/types/type").Browser;
|
|
264
|
+
os: import("packages/common/src/types/type").OS;
|
|
281
265
|
};
|
|
266
|
+
static Events: typeof eventType;
|
|
282
267
|
static IOLoader: {
|
|
283
268
|
CustomIOLoader: typeof CustomIOLoader;
|
|
284
269
|
FetchIOLoader: typeof FetchIOLoader;
|
|
@@ -440,7 +425,7 @@ export default class AVPlayer extends Emitter implements ControllerObserver {
|
|
|
440
425
|
*
|
|
441
426
|
* @returns
|
|
442
427
|
*/
|
|
443
|
-
getMinStartPTS():
|
|
428
|
+
getMinStartPTS(): 0n | int64;
|
|
444
429
|
private getResource;
|
|
445
430
|
private createSubtitleRender;
|
|
446
431
|
/**
|
|
@@ -488,17 +473,17 @@ export default class AVPlayer extends Emitter implements ControllerObserver {
|
|
|
488
473
|
* 媒体类型
|
|
489
474
|
*/
|
|
490
475
|
mediaType: string;
|
|
491
|
-
codecparProxy: import("@libmedia/avutil
|
|
476
|
+
codecparProxy: import("@libmedia/avutil").AVCodecParameters;
|
|
492
477
|
index: int32;
|
|
493
478
|
id: int32;
|
|
494
|
-
codecpar: pointer<import("@libmedia/avutil
|
|
479
|
+
codecpar: pointer<import("@libmedia/avutil").AVCodecParameters>;
|
|
495
480
|
nbFrames: int64;
|
|
496
481
|
metadata: Data;
|
|
497
482
|
duration: int64;
|
|
498
483
|
startTime: int64;
|
|
499
484
|
disposition: int32;
|
|
500
|
-
timeBase: import("@libmedia/avutil
|
|
501
|
-
attachedPic: pointer<import("@libmedia/avutil
|
|
485
|
+
timeBase: import("@libmedia/avutil").AVRational;
|
|
486
|
+
attachedPic: pointer<import("@libmedia/avutil").AVPacket>;
|
|
502
487
|
}[];
|
|
503
488
|
/**
|
|
504
489
|
* 获取当前选择播放的视频流 id
|
|
@@ -523,7 +508,7 @@ export default class AVPlayer extends Emitter implements ControllerObserver {
|
|
|
523
508
|
*
|
|
524
509
|
* @returns
|
|
525
510
|
*/
|
|
526
|
-
getChapters(): import("@libmedia/avformat
|
|
511
|
+
getChapters(): import("@libmedia/avformat").AVChapter[];
|
|
527
512
|
/**
|
|
528
513
|
* 获取总时长(毫秒)
|
|
529
514
|
*
|
|
@@ -643,19 +628,19 @@ export default class AVPlayer extends Emitter implements ControllerObserver {
|
|
|
643
628
|
*
|
|
644
629
|
* @returns
|
|
645
630
|
*/
|
|
646
|
-
getVideoList(): Promise<import("@libmedia/avnetwork
|
|
631
|
+
getVideoList(): Promise<import("@libmedia/avnetwork").IOLoaderVideoStreamInfo>;
|
|
647
632
|
/**
|
|
648
633
|
* 获取音频列表( dash 和 hls 使用)
|
|
649
634
|
*
|
|
650
635
|
* @returns
|
|
651
636
|
*/
|
|
652
|
-
getAudioList(): Promise<import("@libmedia/avnetwork
|
|
637
|
+
getAudioList(): Promise<import("@libmedia/avnetwork").IOLoaderAudioStreamInfo>;
|
|
653
638
|
/**
|
|
654
639
|
* 获取字幕列表( dash 和 hls 使用)
|
|
655
640
|
*
|
|
656
641
|
* @returns
|
|
657
642
|
*/
|
|
658
|
-
getSubtitleList(): Promise<import("@libmedia/avnetwork
|
|
643
|
+
getSubtitleList(): Promise<import("@libmedia/avnetwork").IOLoaderSubtitleStreamInfo>;
|
|
659
644
|
/**
|
|
660
645
|
* 获取 status 状态
|
|
661
646
|
*
|
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import type
|
|
2
|
-
import {
|
|
3
|
-
import type { WebAssemblyResource } from "@libmedia/cheap/webassembly/compiler";
|
|
1
|
+
import { type AVCodecID, AVMediaType } from "@libmedia/avutil";
|
|
2
|
+
import { type WebAssemblyResource } from "@libmedia/cheap";
|
|
4
3
|
export interface ControllerObserver {
|
|
5
4
|
onVideoEnded: () => void;
|
|
6
5
|
onAudioEnded: () => void;
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import type { JitterBuffer } from "@libmedia/avpipeline
|
|
2
|
-
import type Stats from "@libmedia/avpipeline/struct/stats";
|
|
1
|
+
import type { JitterBuffer, Stats } from "@libmedia/avpipeline";
|
|
3
2
|
export interface ControllerObserver {
|
|
4
3
|
onSetPlayRate: (rate: number) => void;
|
|
5
4
|
onCroppingBuffer: (max: int32) => void;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { DRMType } from "./drm";
|
|
1
|
+
import { DRMType } from "./drm.d.ts";
|
|
2
2
|
export default function getKeySystemFromSystemId(systemId: Uint8Array): DRMType;
|
|
@@ -1,20 +1,12 @@
|
|
|
1
|
-
import type
|
|
2
|
-
import type
|
|
3
|
-
import
|
|
4
|
-
import
|
|
5
|
-
import
|
|
6
|
-
import
|
|
7
|
-
import
|
|
8
|
-
import
|
|
9
|
-
import
|
|
10
|
-
import Track from "@libmedia/avrender/track/Track";
|
|
11
|
-
import type { AVPacketPool, AVPacketRef } from "@libmedia/avutil/struct/avpacket";
|
|
12
|
-
import type List from "@libmedia/cheap/std/collection/List";
|
|
13
|
-
import type { Mutex } from "@libmedia/cheap/thread/mutex";
|
|
14
|
-
import SeekableWriteBuffer from "@libmedia/common/io/SeekableWriteBuffer";
|
|
15
|
-
import type { AVCodecParametersSerialize } from "@libmedia/avutil/util/serialize";
|
|
16
|
-
import WorkerTimer from "@libmedia/common/timer/WorkerTimer";
|
|
17
|
-
import type { Data } from "@libmedia/common/types/type";
|
|
1
|
+
import { type AVPacketPool, type AVPacketRef, AVCodecParameters, type AVRational, type AVCodecParametersSerialize } from "@libmedia/avutil";
|
|
2
|
+
import { type Mutex, type List } from "@libmedia/cheap";
|
|
3
|
+
import { type Data } from "@libmedia/common";
|
|
4
|
+
import { IOWriterSync as IOWriter, SeekableWriteBuffer } from "@libmedia/common/io";
|
|
5
|
+
import { LoopTask, WorkerTimer } from "@libmedia/common/timer";
|
|
6
|
+
import { IPCPort } from "@libmedia/common/network";
|
|
7
|
+
import { type AVOFormatContext, type OFormat } from "@libmedia/avformat";
|
|
8
|
+
import { Track } from "@libmedia/avrender";
|
|
9
|
+
import { type TaskOptions, Pipeline } from "@libmedia/avpipeline";
|
|
18
10
|
export interface MSETaskOptions extends TaskOptions {
|
|
19
11
|
isLive: boolean;
|
|
20
12
|
avpacketList: pointer<List<pointer<AVPacketRef>>>;
|
|
@@ -91,8 +83,8 @@ export default class MSEPipeline extends Pipeline {
|
|
|
91
83
|
private createLoop;
|
|
92
84
|
private startMux;
|
|
93
85
|
private resetResource;
|
|
94
|
-
addStream(taskId: string, streamIndex: int32, parameters: pointer<AVCodecParameters> | AVCodecParametersSerialize, timeBase:
|
|
95
|
-
reAddStream(taskId: string, streamIndex: int32, parameters: pointer<AVCodecParameters> | AVCodecParametersSerialize, timeBase:
|
|
86
|
+
addStream(taskId: string, streamIndex: int32, parameters: pointer<AVCodecParameters> | AVCodecParametersSerialize, timeBase: AVRational, metadata: Data, startPTS: int64, pullIPCPort: MessagePort): Promise<void>;
|
|
87
|
+
reAddStream(taskId: string, streamIndex: int32, parameters: pointer<AVCodecParameters> | AVCodecParametersSerialize, timeBase: AVRational, metadata: Data, startPTS: int64): Promise<void>;
|
|
96
88
|
pause(taskId: string): Promise<void>;
|
|
97
89
|
unpause(taskId: string): Promise<void>;
|
|
98
90
|
beforeSeek(taskId: string): Promise<void>;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { Stats } from "@libmedia/avpipeline";
|
|
2
|
+
import type { List, Mutex } from "@libmedia/cheap";
|
|
3
|
+
import type { AVFrameRef, AVPacketRef } from "@libmedia/avutil";
|
|
4
|
+
export declare class AVPlayerGlobalData {
|
|
5
|
+
avpacketList: List<pointer<AVPacketRef>>;
|
|
6
|
+
avframeList: List<pointer<AVFrameRef>>;
|
|
7
|
+
avpacketListMutex: Mutex;
|
|
8
|
+
avframeListMutex: Mutex;
|
|
9
|
+
stats: Stats;
|
|
10
|
+
}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
import type
|
|
2
|
-
import type AVCodecParameters from "@libmedia/avutil
|
|
3
|
-
import type List from "@libmedia/cheap
|
|
4
|
-
import type { Mutex } from "@libmedia/cheap/thread/mutex";
|
|
1
|
+
import { type AssEvent } from "@libmedia/avformat/internal";
|
|
2
|
+
import { type AVPacketRef, type AVCodecParameters } from "@libmedia/avutil";
|
|
3
|
+
import { type List, type Mutex } from "@libmedia/cheap";
|
|
5
4
|
export interface SubtitleRenderOptions {
|
|
6
5
|
delay?: int64;
|
|
7
6
|
getCurrentTime: () => int64;
|
|
@@ -13,6 +12,7 @@ export interface SubtitleRenderOptions {
|
|
|
13
12
|
videoWidth: int32;
|
|
14
13
|
videoHeight: int32;
|
|
15
14
|
}
|
|
15
|
+
export declare function parseEvent(formats: string[], event: string): AssEvent;
|
|
16
16
|
export default class SubtitleRender {
|
|
17
17
|
private decoder;
|
|
18
18
|
private loop;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { AVPlayerProgress } from "./AVPlayer";
|
|
2
|
-
import type { AVMediaType } from "@libmedia/avutil
|
|
1
|
+
import type { AVPlayerProgress } from "./AVPlayer.d.ts";
|
|
2
|
+
import type { AVMediaType } from "@libmedia/avutil";
|
|
3
3
|
export declare function playerEventNoParam(): void;
|
|
4
4
|
export declare function playerEventTime(pts: int64): void;
|
|
5
5
|
export declare function playerEventChanging(type: AVMediaType, newStreamId: int32, oldStreamId: int32): void;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";(self.webpackChunkAVPlayer=self.webpackChunkAVPlayer||[]).push([[1],{66192:(t,e,s)=>{s.d(e,{A:()=>r});var i=s(82563);class r{constructor(){(0,i.A)(this,"type",-1),(0,i.A)(this,"onStreamAdd",void 0)}async destroy(t){}}},80182:(t,e,s)=>{s.d(e,{A:()=>c});var i=s(82563),r=s(18811),a=s.n(r),h=s(21874),n=s.n(h),u=s(46440),o=s(33310);class c{constructor(){(0,i.A)(this,"buffer",void 0),(0,i.A)(this,"pos",void 0),(0,i.A)(this,"end",void 0),(0,i.A)(this,"ended",void 0),this.buffer=new Uint8Array(102400),this.pos=0,this.end=0,this.ended=!1}async read(t){if(this.ended&&this.pos>=this.end)return;const e=[];if(this.pos<this.end-4){let t=u.Dk.getNextNaluStart(this.buffer.subarray(this.pos,this.end-4),3);if(t.offset>-1){var s;const e=a()(s=this.buffer).call(s,this.pos,this.pos+t.offset);return this.pos+=t.offset,e}var i,r;e.push(a()(i=this.buffer).call(i,this.pos,this.end-4)),n()(r=this.buffer).call(r,0,this.end-4,this.end),this.pos=0,this.end=4}for(;;){if(!this.ended&&this.end<this.buffer.length)try{const e=await t.readToBuffer(this.buffer.length-this.end,this.buffer.subarray(this.end));this.end+=e}catch(t){if(this.ended=!0,this.pos>=this.end)return e.length?(0,o.O$)(Uint8Array,e):null}let s=u.Dk.getNextNaluStart(this.buffer.subarray(this.pos,this.end-4),e.length?0:3);var h,c,d,l;if(s.offset>-1)return e.push(a()(h=this.buffer).call(h,this.pos,this.pos+s.offset)),this.pos+=s.offset,(0,o.O$)(Uint8Array,e);if(this.ended)return e.push(a()(c=this.buffer).call(c,this.pos,this.end)),this.pos=this.end=0,(0,o.O$)(Uint8Array,e);e.push(a()(d=this.buffer).call(d,this.pos,this.end-4)),n()(l=this.buffer).call(l,0,this.end-4,this.end),this.pos=0,this.end=4}}reset(){this.pos=0,this.end=0,this.ended=!1}}},93001:(t,e,s)=>{s.r(e),s.d(e,{default:()=>m});var i=s(82563),r=s(41450),a=s.n(r),h=s(50442),n=s.n(h),u=s(92793),o=s.n(u),c=s(53508),d=s(3029),l=s(66192),p=s(80182),f=s(26367),g=s(46440),b=s(53843),y=s(33310),A=s(79531);const v={framerate:{num:30,den:1}};class m extends l.A{constructor(t={}){super(),(0,i.A)(this,"type",12),(0,i.A)(this,"options",void 0),(0,i.A)(this,"currentDts",void 0),(0,i.A)(this,"currentPts",void 0),(0,i.A)(this,"step",void 0),(0,i.A)(this,"slices",void 0),(0,i.A)(this,"naluPos",void 0),(0,i.A)(this,"queue",void 0),(0,i.A)(this,"bitReader",void 0),(0,i.A)(this,"sliceType",void 0),(0,i.A)(this,"naluType",void 0),(0,i.A)(this,"poc",void 0),(0,i.A)(this,"pocTid0",void 0),(0,i.A)(this,"sps",void 0),(0,i.A)(this,"naluReader",void 0),this.options=y.Ik.extend({},v,t)}init(t){t.ioReader&&t.ioReader.setEndian(!1),this.slices=[],this.queue=[],this.bitReader=new A.VV(500),this.naluReader=new p.A}async destroy(t){if(this.queue.length){for(let t=0;t<this.queue.length;t++)(0,g.Qe)(this.queue[t].avpacket);this.queue.length=0}}isFrameNalu(t){return(t[1===t[2]?4:5]>>>3&31)<12}async readNaluFrame(t){let e=!1;const s=this.slices;for(this.slices=[],s.length&&(e=this.isFrameNalu(s[0]));;){const i=await this.naluReader.read(t.ioReader);if(!i)return s;const r=i[1===i[2]?4:5]>>>3&31;if(this.isFrameNalu(i))if(e){if(i[1===i[2]?5:6]>>>7)return this.slices.push(i),s;s.push(i)}else s.push(i),e=!0;else{if(e&&(20===r||19===r||15===r||14===r||16===r||12===r||13===r))return this.slices.push(i),s;s.push(i)}}}async readHeader(t){const e=t.createStream();for(e.codecpar.codecType=0,e.codecpar.codecId=196,e.timeBase.den=b.SF,e.timeBase.num=1,e.codecpar.flags|=1,this.currentDts=BigInt(0),this.currentPts=BigInt(0),this.naluPos=BigInt(0),this.poc=0,this.pocTid0=0,this.step=BigInt(Math.floor(b.SF/this.options.framerate.num*this.options.framerate.den));;){const s=await this.readNaluFrame(t);if(!s.length)return-1048576;const i=(0,y.O$)(Uint8Array,s),r=b.qT.generateAnnexbExtradata(i);if(r){e.codecpar.extradata=(0,g.sY)(r.length),(0,f.lW)(e.codecpar.extradata,r.length,r),e.codecpar.extradataSize=r.length,b.qT.parseAVCodecParameters(e,r);const h=a()(s).call(s,(t=>15==(t[1===t[2]?4:5]>>>3&31)));this.sps=b.qT.parseSPS(1===h[2]?h.subarray(3):h.subarray(4));const n=(0,g._5)(),u=(0,g.sY)(i.length);(0,f.lW)(u,i.length,i),(0,g.NX)(n,u,i.length),d.M[17](n+56,this.naluPos),this.naluPos+=BigInt(Math.floor(i.length)),d.M[17](n+16,this.currentDts),this.currentDts+=this.step,d.M[17](n+8,this.currentPts),this.currentPts+=this.step,d.M[15](n+32,e.index),d.M[15](n+36,1|c.f[15](n+36)),d.M[15](n+72,e.timeBase.num),d.M[15](n+76,e.timeBase.den),d.M[15](n+36,64|c.f[15](n+36)),t.interval.packetBuffer.push(n);break}this.naluPos+=BigInt(Math.floor(i.length))}return 0}computePoc(t,e,s,i){this.bitReader.reset(),this.bitReader.appendBuffer(s.subarray(0,500)),i&&this.bitReader.readU1();const r=this.bitReader.readU1(),a=this.bitReader.readU1();let h=0;r&&(h=this.bitReader.readU1()),this.bitReader.readU1()&&this.bitReader.readU1(),b.Ij.readUE(this.bitReader);const n=this.bitReader.readU(this.sps.sps_log2_max_pic_order_cnt_lsb_minus4+4);h&&b.Ij.readUE(this.bitReader);for(let t=0;t<8*this.sps.sps_num_extra_ph_bytes;t++)this.sps.sps_extra_ph_bit_present_flag[t]&&this.bitReader.readU1();let u=0,o=0;this.sps.sps_poc_msb_cycle_flag&&(o=this.bitReader.readU1(),o&&(u=this.bitReader.readU(this.sps.sps_poc_msb_cycle_len_minus1+1)));const c=1<<this.sps.sps_log2_max_pic_order_cnt_lsb_minus4+4;let d=0;if(8===t||7===t)d=o?u*c:0;else{const t=this.pocTid0,e=t&c-1,s=t-e;d=o?u*c:n<e&&e-n>=c/2?s+c:n>e&&n-e>c/2?s-c:s}this.poc=d+n,0!=e||a||2===t||3===t||(this.pocTid0=this.poc)}async readAVPacket_(t,e){const s=t.getStreamByMediaType(0),i=await this.readNaluFrame(t);if(!i.length)return-1048576;this.sliceType=-1;let r=!1,a=!0;n()(i).call(i,(t=>{const e=1===t[2]?t[4]:t[5],s=e>>>3&31,i=(7&e)-1;15===s&&(this.sps=b.qT.parseSPS(1===t[2]?t.subarray(3):t.subarray(4))),8!==s&&7!==s||(r=!0),19===s&&this.computePoc(s,i,t.subarray(1===t[2]?5:6),!1),s<14&&a&&(a=!1,this.naluType=s,t[1===t[2]?5:6]>>>7&&this.computePoc(s,i,t.subarray(1===t[2]?5:6),!0))}));const h=(0,y.O$)(Uint8Array,i),u=(0,g.sY)(h.length);return(0,f.lW)(u,h.length,h),(0,g.NX)(e,u,h.length),d.M[17](e+56,this.naluPos),this.naluPos+=BigInt(Math.floor(h.length)),d.M[17](e+16,this.currentDts),this.currentDts+=this.step,d.M[15](e+32,s.index),d.M[15](e+72,s.timeBase.num),d.M[15](e+76,s.timeBase.den),d.M[15](e+36,64|c.f[15](e+36)),r&&d.M[15](e+36,1|c.f[15](e+36)),0}async readAVPacket(t,e){let s=this.queue.length;const i=()=>{var s,i;this.queue.length>1&&o()(s=this.queue).call(s,((t,e)=>t.poc-e.poc>0?1:-1));for(let t=0;t<this.queue.length;t++)d.M[17](this.queue[t].avpacket+8,this.currentPts),this.currentPts+=this.step;this.queue.length>1&&o()(i=this.queue).call(i,((t,e)=>c.f[17](t.avpacket+16)-c.f[17](e.avpacket+16)>BigInt(0)?1:-1)),this.queue.length&&((0,g.rN)(e,this.queue[0].avpacket),(0,g.Qe)(this.queue[0].avpacket));for(let e=1;e<this.queue.length;e++)t.interval.packetBuffer.push(this.queue[e].avpacket);this.queue.length=0};for(;;){const e=(0,g._5)();let r=await this.readAVPacket_(t,e);if(r<0)return(0,g.Qe)(e),this.queue.length?(i(),0):r;if(1&c.f[15](e+36)||9===this.naluType||1===this.sliceType||2===this.sliceType){if(1===s||(9===this.naluType||1&c.f[15](e+36))&&this.queue.length)return i(),this.queue.push({avpacket:e,poc:this.poc}),0;this.queue.push({avpacket:e,poc:this.poc}),s++}else this.queue.push({avpacket:e,poc:this.poc})}}async seek(t,e,s,i){const r=t.ioReader.getPos();return 2&i?(await t.ioReader.seek(s),r):BigInt(g.D1.E$)}getAnalyzeStreamsCount(){return 1}}}}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";(self.webpackChunkAVPlayer=self.webpackChunkAVPlayer||[]).push([[106],{1192:(t,e,a)=>{a.d(e,{Cd:()=>p,I4:()=>u,am:()=>c,kJ:()=>h,pi:()=>d,xf:()=>f,yU:()=>l});var i=a(82563),n=a(23339),o=a.n(n),s=a(46440);class r{constructor(){(0,i.A)(this,"discontinuityIndicator",0),(0,i.A)(this,"randomAccessIndicator",0),(0,i.A)(this,"elementaryStreamPriorityIndicator",0),(0,i.A)(this,"pcrFlag",0),(0,i.A)(this,"opcrFlag",0),(0,i.A)(this,"splicingPointFlag",0),(0,i.A)(this,"transportPrivateDataFlag",0),(0,i.A)(this,"adaptationFieldExtensionFlag",0),(0,i.A)(this,"pcr",BigInt(0)),(0,i.A)(this,"opcr",BigInt(0)),(0,i.A)(this,"spliceCountDown",0),(0,i.A)(this,"transportPrivateData",null),(0,i.A)(this,"extension",null)}}class c{constructor(){(0,i.A)(this,"pos",s.Dh),(0,i.A)(this,"payloadUnitStartIndicator",0),(0,i.A)(this,"transportPriority",0),(0,i.A)(this,"pid",s.N_),(0,i.A)(this,"adaptationFieldControl",0),(0,i.A)(this,"continuityCounter",0),(0,i.A)(this,"transportScramblingControl",0),(0,i.A)(this,"adaptationFieldInfo",new r),(0,i.A)(this,"payload",null)}}class d{constructor(){(0,i.A)(this,"slices",[]),(0,i.A)(this,"totalLength",0),(0,i.A)(this,"expectedLength",s.N_),(0,i.A)(this,"randomAccessIndicator",0),(0,i.A)(this,"pid",s.N_),(0,i.A)(this,"streamType",0),(0,i.A)(this,"pos",s.Dh)}}class p{constructor(){(0,i.A)(this,"versionNumber",0),(0,i.A)(this,"networkPid",s.N_),(0,i.A)(this,"program2PmtPid",new(o()))}}class l extends c{}class h{constructor(){(0,i.A)(this,"tag",void 0),(0,i.A)(this,"buffer",void 0)}}class u{constructor(){(0,i.A)(this,"versionNumber",0),(0,i.A)(this,"programNumber",0),(0,i.A)(this,"pcrPid",0),(0,i.A)(this,"pid2StreamType",new(o())),(0,i.A)(this,"pid2ESDescriptor",new(o()))}}class f{constructor(){(0,i.A)(this,"pid",s.N_),(0,i.A)(this,"streamType",0),(0,i.A)(this,"streamId",s.N_),(0,i.A)(this,"dts",s.Dh),(0,i.A)(this,"pts",s.Dh),(0,i.A)(this,"pos",s.Dh),(0,i.A)(this,"payload",null),(0,i.A)(this,"data",null),(0,i.A)(this,"randomAccessIndicator",0),(0,i.A)(this,"flags",void 0)}}},10581:(t,e,a)=>{a.d(e,{A:()=>r});var i=a(23339),n=a.n(i),o=a(46440),s=a(1192);function r(){return{currentProgram:o.N_,currentPmtPid:o.N_,tsPacketSize:o.N_,hasPAT:!1,hasPMT:!1,tsSliceQueueMap:new(n()),pat:new s.Cd,pmt:new s.I4,program2Pmt:new(n()),ioEnd:!1,startPid:256,delay:BigInt(0)}}},27106:(t,e,a)=>{a.r(e),a.d(e,{default:()=>b});var i=a(82563),n=a(22887),o=a.n(n),s=a(18811),r=a.n(s),c=a(50442),d=a.n(c),p=a(59650),l=a(53508),h=a(10581),u=a(1192),f=a(66882),A=a(89284),I=a(45733),g=a(90689),m=a(1593),y=a(40957),P=a(65536),F=a(26367),x=a(46440),k=a(53843),v=a(33310);const w="packages/avformat/src/formats/OMpegtsFormat.ts",C={pesMaxSize:2930,delay:1.4,latm:!1,patPeriod:.1};class b extends f.A{constructor(t={}){super(),(0,i.A)(this,"type",2),(0,i.A)(this,"context",void 0),(0,i.A)(this,"sdtPacket",void 0),(0,i.A)(this,"patPacket",void 0),(0,i.A)(this,"pmtPacket",void 0),(0,i.A)(this,"options",void 0),(0,i.A)(this,"firstDtsCheck",void 0),(0,i.A)(this,"firstVideoCheck",void 0),(0,i.A)(this,"lastPatDst",void 0),(0,i.A)(this,"patPeriod",void 0),(0,i.A)(this,"avpacket",void 0),this.context=(0,h.A)(),this.options=v.Ik.extend({},C,t),this.options.pesMaxSize=this.options.pesMaxSize?(this.options.pesMaxSize+14+183)/184*184-14:0,this.firstDtsCheck=!1,this.firstVideoCheck=!1,this.patPeriod=BigInt(Math.floor(this.options.patPeriod*k.SF))}init(t){return t.ioWriter.setEndian(!0),this.avpacket=(0,x._5)(),0}async destroy(t){super.destroy(t),v.YO.each(t.streams,(t=>{if(1024&t.disposition)return!0;const e=t.privData;o()(e)&&(o()(e).destroy(),e.filter=null)})),this.avpacket&&((0,x.Qe)(this.avpacket),this.avpacket=0)}writeHeader(t){var e;return this.context.pat=new u.Cd,this.context.pat.program2PmtPid.set(1,4096),this.context.pmt=new u.I4,this.context.pmt.programNumber=1,v.YO.each(t.streams,(t=>{if(1024&t.disposition)return!0;t.timeBase.den=9e4,t.timeBase.num=1;const e=this.context.startPid++;this.context.pmt.pcrPid<=0&&(this.context.pmt.pcrPid=e);let a=A.Zp(t);const i=(0,I.A)();t.privData=i;const n=new u.am;n.pid=e,n.adaptationFieldControl=1,i.tsPacket=n,i.pid=e;let o=null;switch(a){case 15:this.options.latm?(i.latm=!0,a=17,o=new m.A):o=new g.A;break;case 27:case 36:case 51:o=new P.A;break;case 6:86076===t.codecpar.codecId&&(o=new y.A)}o&&o.init(t.codecpar[p.o9],t.timeBase[p.o9]),i.filter=o,this.context.pmt.pid2StreamType.set(e,a);const s=new u.xf;s.pid=e,s.streamType=a,s.streamId=A.kw(t),i.pes=s})),this.patPacket=new u.yU,this.pmtPacket=new u.yU,this.sdtPacket=new u.yU,this.sdtPacket.pid=17,this.sdtPacket.adaptationFieldControl=1,this.patPacket.pid=0,this.patPacket.adaptationFieldControl=1,this.pmtPacket.pid=4096,this.pmtPacket.adaptationFieldControl=1,this.sdtPacket.payload=A.Gj(),this.patPacket.payload=A.sG(this.context.pat),this.pmtPacket.payload=A.in(this.context.pmt,o()(e=t.streams).call(e,(t=>!(1024&t.disposition)))),A.Zn(t.ioWriter,this.sdtPacket,this.context),A.Zn(t.ioWriter,this.patPacket,this.context),A.Zn(t.ioWriter,this.pmtPacket,this.context),0}writeAVPacket(t,e){if(!l.f[15](e+28))return void v.vF.warn(`packet's size is 0: ${l.f[15](e+32)}, ignore it`,w,256);const a=t.getStreamByIndex(l.f[15](e+32));if(!a||1024&a.disposition)return void v.vF.warn(`can not found the stream width the packet's streamIndex: ${l.f[15](e+32)}, ignore it`,w,263);this.firstDtsCheck||((0,x.Mr)(l.f[17](e+16),e+72,a.timeBase)<BigInt(Math.floor(9e4*this.options.delay))&&(this.context.delay=BigInt(Math.floor(9e4*this.options.delay))-(0,x.Mr)(l.f[17](e+16),e+72,a.timeBase)),this.firstDtsCheck=!0,this.lastPatDst=(0,x.Mr)(l.f[17](e+16),e+72,k.KR)),this.patPeriod>BigInt(0)&&(0,x.Mr)(l.f[17](e+16),e+72,k.KR)-this.lastPatDst>this.patPeriod&&(A.Zn(t.ioWriter,this.sdtPacket,this.context),A.Zn(t.ioWriter,this.patPacket,this.context),A.Zn(t.ioWriter,this.pmtPacket,this.context),this.lastPatDst=(0,x.Mr)(l.f[17](e+16),e+72,k.KR));const i=a.privData;let n=(0,x.iI)(e);if(o()(i)){if(!this.firstVideoCheck&&(27===a.codecpar.codecId||173===a.codecpar.codecId||196===a.codecpar.codecId)&&1&l.f[15](e+36)){let t=(0,x.fQ)(e,1);if(!t&&64&l.f[15](e+36)&&(27===a.codecpar.codecId?t=!!k.Hj.generateAnnexbExtradata((0,x.iI)(e)):173===a.codecpar.codecId?t=!!k.pA.generateAnnexbExtradata((0,x.iI)(e)):196===a.codecpar.codecId&&(t=!!k.qT.generateAnnexbExtradata((0,x.iI)(e)))),this.firstVideoCheck=!0,!t&&a.codecpar.extradata)if(64&l.f[15](e+36)){var s;let t=r()(s=(0,F.s3)(a.codecpar.extradata,a.codecpar.extradataSize)).call(s);if(27!==a.codecpar.codecId||k.Hj.generateAnnexbExtradata((0,x.iI)(e)))if(173!==a.codecpar.codecId||k.pA.generateAnnexbExtradata((0,x.iI)(e))){if(196===a.codecpar.codecId&&!k.qT.generateAnnexbExtradata((0,x.iI)(e))){var c;let a=[],i=[],n=[];const o=[];if(x.Dk.isAnnexb(t)){var p;d()(p=x.Dk.splitNaluByStartCode(t)).call(p,(t=>{const e=t[1]>>>3&31;14===e?n.push(t):15===e?a.push(t):16===e&&i.push(t)}))}else{const e=k.qT.extradata2VpsSpsPps(t);a=e.spss,i=e.ppss,n=e.vpss}d()(c=x.Dk.splitNaluByStartCode((0,x.iI)(e,!0))).call(c,(t=>{20!=(t[1]>>>3&31)&&o.push(t)}));const s=k.qT.nalus2Annexb(n,a,i,o,!!(1&l.f[15](e+36)));(0,x.NX)(e,s.bufferPointer,s.length)}}else{var h;let a=[],i=[],n=[];const o=[];if(x.Dk.isAnnexb(t)){var u;d()(u=x.Dk.splitNaluByStartCode(t)).call(u,(t=>{const e=t[0]>>>1&63;32===e?n.push(t):33===e?a.push(t):34===e&&i.push(t)}))}else{const e=k.pA.extradata2VpsSpsPps(t);a=e.spss,i=e.ppss,n=e.vpss}d()(h=x.Dk.splitNaluByStartCode((0,x.iI)(e,!0))).call(h,(t=>{35!=(t[0]>>>1&63)&&o.push(t)}));const s=k.pA.nalus2Annexb(n,a,i,o);(0,x.NX)(e,s.bufferPointer,s.length)}else{var f;let a=[],i=[],n=[];const o=[],s=[];if(x.Dk.isAnnexb(t)){var I;d()(I=x.Dk.splitNaluByStartCode(t)).call(I,(t=>{const e=31&t[0];7===e?a.push(t):8===e?i.push(t):13===e&&n.push(t)}))}else{const e=k.Hj.extradata2SpsPps(t);a=e.spss,i=e.ppss,n=e.spsExts}d()(f=x.Dk.splitNaluByStartCode((0,x.iI)(e,!0))).call(f,(t=>{const e=31&t[0];6===e?o.push(t):9!==e&&s.push(t)}));const r=k.Hj.nalus2Annexb(a,i,n,o,s);(0,x.NX)(e,r.bufferPointer,r.length)}}else{var g;let t=r()(g=(0,F.s3)(a.codecpar.extradata,a.codecpar.extradataSize)).call(g);x.Dk.isAnnexb(t)&&(27===a.codecpar.codecId?t=k.Hj.annexbExtradata2AvccExtradata(t):173===a.codecpar.codecId?t=k.pA.annexbExtradata2AvccExtradata(t):196===a.codecpar.codecId&&(t=k.qT.annexbExtradata2AvccExtradata(t)));const i=(0,x.sY)(t.length);(0,F.lW)(i,t.length,t),(0,x.Ow)(e,1,i,t.length)}}o()(i).sendAVPacket(e),o()(i).receiveAVPacket(this.avpacket),n=(0,x.iI)(this.avpacket),e=this.avpacket}if(!n.length)return 0;n=r()(n).call(n);let m=!1;return(i.pesSlices.total+n.length>this.options.pesMaxSize||0===a.codecpar.codecType)&&(0===i.pesSlices.total&&(i.pesSlices.total=n.length,i.pesSlices.buffers.push(n),l.f[17](e+16)!==x.Dh&&(i.pes.dts=(0,x.Mr)(l.f[17](e+16),e+72,a.timeBase)+this.context.delay),l.f[17](e+8)!==x.Dh&&(i.pes.pts=(0,x.Mr)(l.f[17](e+8),e+72,a.timeBase)+this.context.delay),0!==a.codecpar.codecType||1&l.f[15](e+36)?i.pes.randomAccessIndicator=1:i.pes.randomAccessIndicator=0,m=!0),A.CE(t.ioWriter,i.pes,i.pesSlices,a,this.context),i.pesSlices.total=0,i.pesSlices.buffers=[]),m||(0===i.pesSlices.total&&(l.f[17](e+16)!==x.Dh&&(i.pes.dts=(0,x.Mr)(l.f[17](e+16),e+72,a.timeBase)+this.context.delay),l.f[17](e+8)!==x.Dh&&(i.pes.pts=(0,x.Mr)(l.f[17](e+8),e+72,a.timeBase)+this.context.delay),0!==a.codecpar.codecType||1&l.f[15](e+36)?i.pes.randomAccessIndicator=1:i.pes.randomAccessIndicator=0),i.pesSlices.total+=n.length,i.pesSlices.buffers.push(n)),0}writeTrailer(t){return v.YO.each(t.streams,(e=>{const a=e.privData;a&&(a.pesSlices.total&&A.CE(t.ioWriter,a.pes,a.pesSlices,e,this.context),a.pesSlices.total=0,a.pesSlices.buffers=[])})),t.ioWriter.flush(),0}flush(t){return t.ioWriter.flush(),0}getCapabilities(){return b.Capabilities}}(0,i.A)(b,"Capabilities",[86076,86018,86017,86019,,86020,86065,86056,12,225,27,173,196])},45733:(t,e,a)=>{a.d(e,{A:()=>n});var i=a(46440);function n(){return{pid:i.N_,filter:null,tsPacket:null,pes:null,pendingPES:null,continuityCounter:0,pesSlices:{total:0,buffers:[]},latm:!1}}},73337:(t,e,a)=>{a.d(e,{$x:()=>l,GV:()=>s,OS:()=>d,VG:()=>n,ZT:()=>o,eR:()=>i,hY:()=>c,pm:()=>r,qJ:()=>p});const i=204,n=192,o=188,s=204,r=8192,c=5,d=5,p=10,l={15:[1,86018],17:[1,86018],3:[1,86017],4:[1,86017],1:[0,2],2:[0,2],27:[0,27],16:[0,12],36:[0,173],51:[0,196],129:[1,86019],135:[1,86056],130:[1,86020]}},89284:(t,e,a)=>{a.d(e,{CE:()=>k,Gj:()=>P,Zn:()=>v,Zp:()=>I,in:()=>y,kw:()=>g,sG:()=>m});var i=a(50442),n=a.n(i),o=a(18811),s=a.n(o),r=a(53508),c=a(73337),d=a(33236),p=a(93325),l=a(53843),h=a(46440),u=a(33310);const f="packages/avformat/src/formats/mpegts/ompegts.ts";function A(t){if(2!==t.adaptationFieldControl&&3!==t.adaptationFieldControl)return 0;if(2===t.adaptationFieldControl)return c.ZT-4;let e=2;return t.adaptationFieldInfo.pcrFlag&&(e+=6),t.adaptationFieldInfo.opcrFlag&&(e+=6),t.adaptationFieldInfo.splicingPointFlag&&(e+=1),t.adaptationFieldInfo.transportPrivateDataFlag&&(e+=t.adaptationFieldInfo.transportPrivateData?t.adaptationFieldInfo.transportPrivateData.length:0),t.adaptationFieldInfo.adaptationFieldExtensionFlag&&(e+=t.adaptationFieldInfo.extension?t.adaptationFieldInfo.extension.length:0),e>256&&u.vF.warn("adaptationField size is too large",f,67),e}function I(t){const e=t.privData||{};switch(t.codecpar.codecId){case 1:case 2:return 2;case 12:return 16;case 27:return 27;case 87:return 66;case 173:return 36;case 196:return 51;case 116:return 209;case 70:return 234;case 86016:case 86017:return t.codecpar.sampleRate<32e3?4:3;case 86018:return e.latm?17:15;case 86065:return 17;case 86019:return 129;case 86076:case 225:case 94209:case 98311:default:return 6;case 86060:return 131;case 86056:return 135;case 86020:return 130}}function g(t){return 0===t.codecpar.codecType?116===t.codecpar.codecId?253:224:1!==t.codecpar.codecType||86016!==t.codecpar.codecId&&86017!==t.codecpar.codecId&&86018!==t.codecpar.codecId?1===t.codecpar.codecType&&86019===t.codecpar.codecId?253:2===t.codecpar.codecType?252:189:192}function m(t){var e;const a=new Uint8Array(1024);a[1]=0,a[2]=176,a[5]=1,a[6]=193;let i=9;t.networkPid>-1&&(i+=2,a[i++]=224|t.networkPid>>8&31,a[i++]=255&t.networkPid),n()(e=t.program2PmtPid).call(e,((t,e)=>{a[i++]=e>>8&255,a[i++]=255&e,a[i++]=224|t>>8&31,a[i++]=255&t}));const o=i;i+=4;for(let t=i;t<c.ZT-4;t++)a[t]=255;const r=i-1-3;a[2]|=r>>8&15,a[3]=255&r;const d=(0,p.E)(a.subarray(1,o));return a[o]=d>>24&255,a[o+1]=d>>16&255,a[o+2]=d>>8&255,a[o+3]=255&d,s()(a).call(a,0,c.ZT-4)}function y(t,e){const a=new Uint8Array(1024);a[1]=2,a[2]=176,a[4]=t.programNumber>>8&15,a[5]=255&t.programNumber,a[6]=193;let i=9;a[i++]=224|t.pcrPid>>8&31,a[i++]=255&t.pcrPid;const n=i;function o(t){a[i++]=c.OS,a[i++]=4,a[i++]=t>>24,a[i++]=t>>16,a[i++]=t>>8,a[i++]=t}i+=2;let l=61440|i-n-2;a[n]=l>>8,a[n+1]=l;for(let t=0;t<e.length;t++){const n=I(e[t]);a[i++]=n;const s=e[t].privData;a[i++]=224|s.pid>>8&31,a[i++]=255&s.pid;const p=i;i+=2;const l=e[t].codecpar.codecId;switch(e[t].codecpar.codecType){case 1:86019===l&&o((0,d.A)("AC-3")),86056===l&&o((0,d.A)("EAC3")),65562===l&&o((0,d.A)("BSSD")),86076===l&&(o((0,d.A)("Opus")),a[i++]=127,a[i++]=2,a[i++]=128,a[i++]=e[t].codecpar.chLayout.nbChannels),a[i++]=c.qJ,a[i++]=4,a[i++]=117,a[i++]=110,a[i++]=100,a[i++]=0;break;case 0:if(225===l&&(o((0,d.A)("AV01")),e[t].codecpar.extradata)){a[i++]=128,a[i++]=e[t].codecpar.extradataSize;for(let n=0;n<e[t].codecpar.extradataSize;n++)a[i++]=r.f[2](e[t].codecpar.extradata+n)}}let h=61440|i-p-2;a[p]=h>>8,a[p+1]=h}const h=i;i+=4;for(let t=i;t<c.ZT-4;t++)a[t]=255;l=i-1-3,a[2]|=l>>8&15,a[3]=255&l;const u=(0,p.E)(a.subarray(1,h));return a[h]=u>>24&255,a[h+1]=u>>16&255,a[h+2]=u>>8&255,a[h+3]=255&u,s()(a).call(a,0,c.ZT-4)}function P(){const t=new Uint8Array(1024);t[1]=66,t[2]=240,t[5]=1,t[6]=193;let e=9;t[e++]=255,t[e++]=1,t[e++]=255,t[e++]=0,t[e++]=1,t[e++]=252;const a=e;e+=2,t[e++]=72;const i=e++;t[e++]=1;t[e++]=9;for(let a=0;a<9;a++)t[e]="format-js".charCodeAt(a),e++;t[e++]=9;for(let a=0;a<9;a++)t[e]="Service01".charCodeAt(a),e++;t[i]=e-i-1;let n=32768|e-a-2;t[a]=n>>8&255,t[a+1]=255&n;const o=e;e+=4;for(let a=e;a<c.ZT-4;a++)t[a]=255;const r=e-1-3;t[2]|=r>>8&15,t[3]=255&r;const d=(0,p.E)(t.subarray(1,o));return t[o]=d>>24&255,t[o+1]=d>>16&255,t[o+2]=d>>8&255,t[o+3]=255&d,s()(t).call(t,0,c.ZT-4)}function F(t,e,a){var i;a.tsPacketSize===c.VG&&t.skip(4),e.payload&&0!==e.payload.length||(e.adaptationFieldControl=2),1===e.adaptationFieldControl&&e.payload.length+4<c.ZT&&(e.adaptationFieldControl=3);const n=t.getPos();t.writeUint8(71);let o=0;e.payloadUnitStartIndicator&&(o|=64),o|=e.transportPriority<<5,o|=e.pid>>8,t.writeUint8(o),t.writeUint8(255&e.pid),o=(3&e.transportScramblingControl)<<6,o|=(3&e.adaptationFieldControl)<<4,o|=15&e.continuityCounter,t.writeUint8(o);let s=A(e),r=c.ZT-4-s;if(null!==(i=e.payload)&&void 0!==i&&i.length&&(r-=e.payload.length),2===e.adaptationFieldControl||3===e.adaptationFieldControl){const a=t.getPos();if(t.writeUint8(s-1+r),o=(1&e.adaptationFieldInfo.discontinuityIndicator)<<7,o|=(1&e.adaptationFieldInfo.randomAccessIndicator)<<6,o|=(1&e.adaptationFieldInfo.elementaryStreamPriorityIndicator)<<5,o|=(1&e.adaptationFieldInfo.pcrFlag)<<4,o|=(1&e.adaptationFieldInfo.opcrFlag)<<3,o|=(1&e.adaptationFieldInfo.splicingPointFlag)<<2,o|=(1&e.adaptationFieldInfo.transportPrivateDataFlag)<<1,o|=1&e.adaptationFieldInfo.adaptationFieldExtensionFlag,t.writeUint8(o),e.adaptationFieldInfo.pcrFlag){const a=Number(e.adaptationFieldInfo.pcr%BigInt(300)),i=Number((e.adaptationFieldInfo.pcr-BigInt(Math.floor(a)))/BigInt(300));t.writeUint8(i>>25&255),t.writeUint8(i>>17&255),t.writeUint8(i>>9&255),t.writeUint8(i>>1&255),t.writeUint8(i<<7|a>>8|126),t.writeUint8(a)}if(e.adaptationFieldInfo.opcrFlag){const a=Number(e.adaptationFieldInfo.pcr%BigInt(300)),i=Number((e.adaptationFieldInfo.pcr-BigInt(Math.floor(a)))/BigInt(300));t.writeUint8(i>>25&255),t.writeUint8(i>>17&255),t.writeUint8(i>>9&255),t.writeUint8(i>>1&255),t.writeUint8(i<<7|a>>8|126),t.writeUint8(a)}e.adaptationFieldInfo.splicingPointFlag&&t.writeUint8(e.adaptationFieldInfo.spliceCountDown),e.adaptationFieldInfo.transportPrivateDataFlag&&(e.adaptationFieldInfo.transportPrivateData&&e.adaptationFieldInfo.transportPrivateData.length?(t.writeUint8(e.adaptationFieldInfo.transportPrivateData.length),t.writeBuffer(e.adaptationFieldInfo.transportPrivateData)):t.writeUint8(0)),e.adaptationFieldInfo.adaptationFieldExtensionFlag&&(e.adaptationFieldInfo.extension&&e.adaptationFieldInfo.extension.length?(t.writeUint8(e.adaptationFieldInfo.extension.length),t.writeBuffer(e.adaptationFieldInfo.extension)):t.writeUint8(0));const i=Number(t.getPos()-a);for(i<s&&t.skip(s-i);r>0;)t.writeUint8(255),r--}var d;1!==e.adaptationFieldControl&&3!==e.adaptationFieldControl||null!==(d=e.payload)&&void 0!==d&&d.length&&t.writeBuffer(e.payload),Number(t.getPos()-n)!==c.ZT&&u.vF.error(`write error data size to ts packet, need ${c.ZT}, wrote: ${Number(t.getPos()-n)}`,f,640),a.tsPacketSize===c.eR&&t.skip(16)}function x(t,e,a,i){let n=a<<4|(7&Number(i>>BigInt(30)))<<1|1;t[e++]=n,n=(32767&Number(i>>BigInt(15)))<<1|1,t[e++]=n>>8&255,t[e++]=255&n,n=Number(i&BigInt(32767))<<1|1,t[e++]=n>>8&255,t[e++]=255&n}function k(t,e,a,i,n){const o=e.streamId,s=new Uint8Array(function(t){let e=6;const a=t.streamId;return 188!==a&&190!==a&&191!==a&&240!==a&&241!==a&&255!==a&&242!==a&&248!==a&&(e+=3,t.pts!==h.Dh&&(e+=5),t.dts!==h.Dh&&t.pts!==h.Dh&&t.dts!==t.pts&&(e+=5)),e}(e));s[2]=1,s[3]=o;let r=a.total;if(188!==o&&190!==o&&191!==o&&240!==o&&241!==o&&255!==o&&242!==o&&248!==o){let t=0,a=0;e.pts!==h.Dh&&(a+=5,t|=128),e.dts!==h.Dh&&e.pts!==h.Dh&&e.dts!==e.pts&&(a+=5,t|=64);let n=128;3!==i.codecpar.codecType&&2!==i.codecpar.codecType||(n|=4),s[6]=n,s[7]=t,s[8]=a,r+=a+3,e.pts!==h.Dh&&x(s,9,t>>6,e.pts),e.dts!==h.Dh&&e.pts!==h.Dh&&e.dts!==e.pts&&x(s,14,1,e.dts)}r<=l.zg&&0!==i.codecpar.codecType&&(s[4]=r>>8&255,s[5]=255&r),function(t,e,a,i,n){const o=i.privData,s=o.tsPacket;e.pid===n.pmt.pcrPid&&(s.adaptationFieldControl=3,s.adaptationFieldInfo.pcrFlag=1,s.adaptationFieldInfo.pcr=e.dts*BigInt(300)),s.adaptationFieldInfo.randomAccessIndicator=e.randomAccessIndicator,e.randomAccessIndicator&&(s.adaptationFieldControl=3);let r=A(s),d=o.continuityCounter;if(4+r+a.length<=c.ZT)return s.payloadUnitStartIndicator=1,s.payload=a,s.continuityCounter=d++%16,F(t,s,n),void(o.continuityCounter=d%16);let p=c.ZT-(4+r),l=0;for(;l<a.length;){let e=Math.min(l+p,a.length);s.payloadUnitStartIndicator=0===l?1:0,1===s.adaptationFieldControl&&e-l+4==c.ZT-1&&e--,s.payload=a.subarray(l,e),s.continuityCounter=d++%16,F(t,s,n),0===l&&(s.adaptationFieldInfo.randomAccessIndicator=0,s.adaptationFieldControl=1,s.adaptationFieldInfo.pcrFlag=0,r=A(s),p=c.ZT-(4+r)),l=e}o.continuityCounter=d%16}(t,e,(0,u.O$)(Uint8Array,[s,...a.buffers]),i,n)}function v(t,e,a){const i=A(e);let n=e.continuityCounter;if(4+i+e.payload.length<=c.ZT)return e.payloadUnitStartIndicator=1,e.continuityCounter=n++%16,F(t,e,a),void(e.continuityCounter=n%16);const o=c.ZT-(4+i);let s=0;const r=e.payload;for(;s<r.length;){let d=Math.min(s+o,r.length);e.payloadUnitStartIndicator=0===s?1:0;const p=d-s;p+4===c.ZT?e.adaptationFieldControl=1:0===i&&p+4+1===c.ZT&&d--,e.payload=r.subarray(s,d),e.continuityCounter=n++%16,F(t,e,a),s=d}e.continuityCounter=n%16}},93325:(t,e,a)=>{function i(t){let e=4294967295;for(let a=0;a<t.length;a++){e^=t[a]<<24;for(let t=0;t<8;t++)2147483648&e?e=e<<1^79764919:e<<=1}return e>>>0}a.d(e,{E:()=>i})}}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";(self.webpackChunkAVPlayer=self.webpackChunkAVPlayer||[]).push([[140],{27843:(e,t,i)=>{i.d(t,{IC:()=>n,dd:()=>c,gi:()=>a,mO:()=>s,nz:()=>o,t6:()=>d});var r=i(51915);const a={1:65541,2:69638,3:65557,6:65543,7:65542,10:86052,16:69664,17:69633,23:69664,32:69646,34:86037,49:86046,50:86046,56:73728,66:86068,69:69643,20:69643,64:69643,80:86016,85:86017,87:73728,88:73729,97:69635,98:69634,100:69643,105:69633,117:86079,131:86069,255:86018,273:86068,304:86057,309:86106,352:86023,353:86024,354:86053,355:86054,357:86095,358:86096,384:86116,512:69644,533:86022,534:86022,624:86047,654:86111,655:69660,848:86114,1025:86043,1026:86074,1280:86081,1281:86081,5376:86046,5377:86037,5632:86018,5634:86065,8192:86019,8193:86020,8264:86085,8738:86069,27765:65542,28781:86018,16707:86018,16768:86116,22858:81922,29338:86069,33152:86116,41216:86068,41222:86018,41225:86051,61868:86028,65534:86112,21318:69645,22127:86021},o={[(0,r.A)("H261")]:3,[(0,r.A)("H263")]:4,[(0,r.A)("X263")]:4,[(0,r.A)("T263")]:4,[(0,r.A)("L263")]:4,[(0,r.A)("VX1K")]:4,[(0,r.A)("ZyGo")]:4,[(0,r.A)("M263")]:4,[(0,r.A)("lsvm")]:4,[(0,r.A)("I263")]:20,[(0,r.A)("U263")]:4,[(0,r.A)("VSM4")]:4,[(0,r.A)("H264")]:27,[(0,r.A)("h264")]:27,[(0,r.A)("X264")]:27,[(0,r.A)("x264")]:27,[(0,r.A)("avc1")]:27,[(0,r.A)("DAVC")]:27,[(0,r.A)("SMV2")]:27,[(0,r.A)("VSSH")]:27,[(0,r.A)("Q264")]:27,[(0,r.A)("V264")]:27,[(0,r.A)("GAVC")]:27,[(0,r.A)("UMSV")]:27,[(0,r.A)("tshd")]:27,[(0,r.A)("INMC")]:27,[(0,r.A)("FMP4")]:12,[(0,r.A)("DIVX")]:12,[(0,r.A)("DX50")]:12,[(0,r.A)("XVID")]:12,[(0,r.A)("MP4S")]:12,[(0,r.A)("M4S2")]:12,[(0,r.A)("DIVX")]:12,4:12,[(0,r.A)("ZMP4")]:12,[(0,r.A)("DIV1")]:12,[(0,r.A)("BLZ0")]:12,[(0,r.A)("mp4v")]:12,[(0,r.A)("UMP4")]:12,[(0,r.A)("WV1F")]:12,[(0,r.A)("SEDG")]:12,[(0,r.A)("RMP4")]:12,[(0,r.A)("3IV2")]:12,[(0,r.A)("WAWV")]:12,[(0,r.A)("FFDS")]:12,[(0,r.A)("FVFW")]:12,[(0,r.A)("DCOD")]:12,[(0,r.A)("MVXM")]:12,[(0,r.A)("PM4V")]:12,[(0,r.A)("SMP4")]:12,[(0,r.A)("DXGM")]:12,[(0,r.A)("VIDM")]:12,[(0,r.A)("M4T3")]:12,[(0,r.A)("GEOX")]:12,[(0,r.A)("G264")]:12,[(0,r.A)("HDX4")]:12,[(0,r.A)("DM4V")]:12,[(0,r.A)("DMK2")]:12,[(0,r.A)("DYM4")]:12,[(0,r.A)("DIGI")]:12,[(0,r.A)("EPHV")]:12,[(0,r.A)("EM4A")]:12,[(0,r.A)("M4CC")]:12,[(0,r.A)("SN40")]:12,[(0,r.A)("VSPX")]:12,[(0,r.A)("ULDX")]:12,[(0,r.A)("GEOV")]:12,[(0,r.A)("SIPP")]:12,[(0,r.A)("SM4V")]:12,[(0,r.A)("XVIX")]:12,[(0,r.A)("DreX")]:12,[(0,r.A)("QMP4")]:12,[(0,r.A)("PLV1")]:12,[(0,r.A)("GLV4")]:12,[(0,r.A)("GMP4")]:12,[(0,r.A)("MNM4")]:12,[(0,r.A)("GTM4")]:12,[(0,r.A)("MPG4")]:14,[(0,r.A)("MP41")]:14,[(0,r.A)("MP42")]:15,[(0,r.A)("DIV2")]:15,[(0,r.A)("MP43")]:16,[(0,r.A)("DIV3")]:16,[(0,r.A)("MPG3")]:16,[(0,r.A)("DIV5")]:16,[(0,r.A)("DIV6")]:16,[(0,r.A)("DIV4")]:16,[(0,r.A)("DVX3")]:16,[(0,r.A)("AP41")]:16,[(0,r.A)("COL1")]:16,[(0,r.A)("COL0")]:16,[(0,r.A)("WMV1")]:17,[(0,r.A)("WMV2")]:18,[(0,r.A)("GXVE")]:18,[(0,r.A)("dvsd")]:24,[(0,r.A)("dvhd")]:24,[(0,r.A)("dvh1")]:24,[(0,r.A)("dvsl")]:24,[(0,r.A)("dv25")]:24,[(0,r.A)("dv50")]:24,[(0,r.A)("cdvc")]:24,[(0,r.A)("CDVH")]:24,[(0,r.A)("CDV5")]:24,[(0,r.A)("dvc ")]:24,[(0,r.A)("dvcs")]:24,[(0,r.A)("dvh1")]:24,[(0,r.A)("dvis")]:24,[(0,r.A)("pdvc")]:24,[(0,r.A)("SL25")]:24,[(0,r.A)("SLDV")]:24,[(0,r.A)("AVd1")]:24,[(0,r.A)("mpg1")]:2,[(0,r.A)("mpg2")]:2,[(0,r.A)("MPEG")]:2,[(0,r.A)("PIM1")]:2,[(0,r.A)("PIM2")]:2,[(0,r.A)("VCR2")]:2,268435457:2,268435458:2,268435460:2,[(0,r.A)("DVR ")]:2,[(0,r.A)("MMES")]:2,[(0,r.A)("LMP2")]:2,[(0,r.A)("slif")]:2,[(0,r.A)("EM2V")]:2,[(0,r.A)("M701")]:2,[(0,r.A)("M702")]:2,[(0,r.A)("M703")]:2,[(0,r.A)("M704")]:2,[(0,r.A)("M705")]:2,[(0,r.A)("mpgv")]:2,[(0,r.A)("BW10")]:2,[(0,r.A)("XMPG")]:2,[(0,r.A)("MJPG")]:7,[(0,r.A)("RV40")]:69,[(0,r.A)("AV01")]:225,[(0,r.A)("VP80")]:139,[(0,r.A)("VP90")]:167,[(0,r.A)("HEVC")]:173,[(0,r.A)("H265")]:173},c="00001000800000AA00389B71",n="2107D3118644C8C1CA000000",s="0000000000001000800000AA",d={"2C806DE046DBCF11B4D100805F6CBBEA":86019,BFAA23E958CB7144A119FFFA01E4CE62:86055,D242E147BA368D4D88FC61654F8C836C:86104,AF87FBA7022DFB42A4D405CD93843BDD:86056,"2B806DE046DBCF11B4D100805F6CBBEA":86016,"82EC1F6ACADB1945BDE756D3B3EF981D":69673,"3AC1FA38811D4361A40DCE53CA607CD1":86112}},28719:(e,t,i)=>{i.d(t,{In:()=>T,M9:()=>W,VO:()=>V,fz:()=>B,hm:()=>D,qg:()=>U});var r=i(9538),a=i.n(r),o=i(50442),c=i.n(o),n=i(18811),s=i.n(n),d=i(31472),A=i.n(d),l=i(5463),p=i.n(l),g=i(42399),m=i.n(g),f=i(53508),u=i(3029),P=i(26367),w=i(46440),I=i(33310),h=i(79531);const C="packages/avformat/src/formats/mp3/id3v2.ts",T={JPG:7,PNG:61,"image/gif":97,"image/jpeg":7,"image/jpg":7,"image/png":61,"image/tiff":96,"image/bmp":78,"image/webp":171},B=["Other","32x32 pixels 'file icon'","Other file icon","Cover (front)","Cover (back)","Leaflet page","Media (e.g. label side of CD)","Lead artist/lead performer/soloist","Artist/performer","Conductor","Band/Orchestra","Composer","Lyricist/text writer","Recording Location","During recording","During performance","Movie/video screen capture","A bright coloured fish","Illustration","Band/artist logotype","Publisher/Studio logotype"];function S(e,t){e.writeUint8(t>>21&127),e.writeUint8(t>>14&127),e.writeUint8(t>>7&127),e.writeUint8(127&t)}function b(e,t){let i="utf-8";return 0===e?i="iso-8859-1":1===e?i="utf-16":2===e&&(i="utf-16be"),new TextDecoder(i).decode(t)}function M(e){return(127&e)+((32512&e)>>1)+((8323072&e)>>2)+((2130706432&e)>>3)}async function k(e,t){await e.seek(t);const i=await e.readString(4);return/^[A-Z0-9]+$/.test(i)}async function U(e,t,i,r){const o=2!==i.version,c=o?10:6;let n=e.getPos()+BigInt(0|t);async function s(){await e.skip(Number(BigInt.asIntN(32,n-e.getPos())))}if(o&&64&a()(i)){let r=await async function(e,t){let i=0;for(;t--;)i=(i<<7)+(127&await e.readUint8());return i}(e,4);if(4===i.version&&(r-=4),r<0)return I.vF.error("invalid extended header length",C,149),await s();if(await e.skip(r),(t-=r+4)<0)return I.vF.error("extended header too long",C,155),await s()}for(;t>c;){let n,s;if(o){if(n=await e.readString(4),s=await e.readUint32(),!s){I.vF.error("invalid frame size",C,168);break}if(4===i.version&&s>127)if(s<t){await e.flush();const t=e.getPos();if(!(1&a()(e)||6+s<e.remainingLength()))break;if(await k(e,t+BigInt(2)+BigInt(M(s))))s=M(s);else if(!await k(e,t+BigInt(2)+BigInt(s)))break;await e.seek(t)}else s=M(s);await e.readUint16()}else n=await e.readString(3),s=await e.readUint24();if("APIC"===n)r.apic||(r.apic=[]),r.apic.push(await e.readBuffer(s));else if("USLT"===n){const t=await e.readUint8(),i=await e.readString(3),a=await e.readBuffer(s-4);r.lyrics=`${i} ${b(t,a)}`}else if("COMM"===n||"COM"===n){const t=await e.readUint8(),i=await e.readString(3),a=await e.readBuffer(s-4);r.comment=`${i} ${b(t,a)}`}else if("PRIV"===n){const t=e.getPos(),i=[];for(;;){const t=await e.readUint8();if(0===t)break;i.push(t)}const a=I.Qq.decode(new Uint8Array(i));let o;o="com.apple.streaming.transportStreamTimestamp"===a?await e.readUint64():await e.readBuffer(s-Number(e.getPos()-t)),r[a]=o}else{let t;switch(t="T"===n[0]?b(await e.readUint8(),await e.readBuffer(s-1)):await e.readBuffer(s),n){case"TIT2":case"TT2":r.title=t;break;case"TPE1":case"TP1":r.artist=t;break;case"TPE2":case"TP2":r.albumArtist=t;break;case"TPOS":r.disc=t;break;case"TCOP":r.copyright=t;break;case"TALB":case"TAL":r.album=t;break;case"TRCK":case"TRK":r.track=t;break;case"TYER":case"TDRL":case"TDRC":r.date=t;break;case"COMM":case"COM":r.comment=t;break;case"TCON":case"TCO":r.genre=t;break;case"TSSE":case"TEN":r.encoder=t;break;case"TCOM":r.composer=t;break;case"TENC":r.vendor=t;break;case"TLAN":r.language=t;break;case"TPE3":case"TP3":r.performer=t;break;case"TPUB":r.publisher=t;break;case"TCMP":case"TCP":r.compilation=t;break;case"TDEN":r.creationTime=t;break;case"TSOA":r.albumSort=t;break;case"TSOP":r.artistSort=t;break;case"TSOT":r.titleSort=t;break;case"TIT1":r.grouping=t;break;default:r[n]=t}}t-=s+c}4==i.version&&16&a()(i)&&(n+=BigInt(10)),await e.skip(Number(BigInt.asIntN(32,n-e.getPos())))}function D(e,t,i){const r=2!==i.version;c()(t).call(t,(t=>{const i=new h.Oo(t),a=i.readUint8();let o;function c(){let e=Number(i.getPos());for(;e<t.length&&t[e];)e++;return e}if(r?(o=i.readString(c()-Number(i.getPos())),i.skip(1)):o=i.readString(3),!T[o])return;const n=i.readUint8();let s;const d=c()-Number(i.getPos());d&&(s=b(a,i.readBuffer(d))),i.skip(1);const A=e.createStream();A.codecpar.codecId=T[o],A.codecpar.codecType=0,A.disposition|=1024,A.attachedPic=(0,w._5)(),u.M[15](A.attachedPic+32,A.index);const l=i.remainingSize(),p=(0,w.sY)(l),g=i.readBuffer(l);(0,P.lW)(p,l,g),g.length>=8&&I.YO.same(g.subarray(0,8),new Uint8Array([137,80,78,71,13,10,26,10]))&&(A.codecpar.codecId=61),(0,w.NX)(A.attachedPic,p,l),u.M[15](A.attachedPic+36,1|f.f[15](A.attachedPic+36)),A.metadata.comment=B[n],s&&(A.metadata.title=s)}))}function W(e,t,i,r){var a;let o=e.getPos();e.writeString("ID3"),e.writeUint8(t),e.writeUint16(0);const n=e.getPos();function d(i,r){const a=I.Qq.encode(r);e.writeString(i),4===t?S(e,a.length+1):e.writeUint32(a.length+1),e.writeUint16(0),e.writeUint8(3),e.writeBuffer(a)}function l(i,r){e.writeString(i),4===t?S(e,r.length):e.writeUint32(r.length),e.writeUint16(0),e.writeBuffer(r)}var p;if(e.writeUint32(0),r.poster&&l("APIC",r.poster),r.apic&&c()(p=r.apic).call(p,(e=>{l("APIC",e)})),r.title&&d("TIT2",r.title),r.artist&&d("TPE1",r.artist),r.albumArtist&&d("TPE2","albumArtist"),r.disc&&d("TPOS",r.disc),r.copyright&&d("TCOP",r.copyright),r.album&&d("TALB",r.album),r.track&&d("TRCK",r.track),r.date&&d("TDRC",r.date),r.comment){let e=r.comment;" "===e[3]&&(e=s()(e).call(e,0,3)+s()(e).call(e,4)),d("COMM",e)}if(r.lyrics){let e=r.lyrics;" "===e[3]&&(e=s()(e).call(e,0,3)+s()(e).call(e,4)),d("USLT",e)}r.genre&&d("TCON",r.genre+""),r.encoder&&d("TSSE",r.encoder),r.composer&&d("TCOM",r.composer),r.vendor&&d("TENC",r.vendor),r.language&&d("TLAN",r.language),r.performer&&d("TPE3",r.performer),r.publisher&&d("TPUB",r.publisher),r.compilation&&d("TCMP",r.compilation),r.creationTime&&d("TDEN",r.creationTime),r.albumSort&&d("TSOA",r.albumSort),r.artistSort&&d("TSOP",r.artistSort),r.titleSort&&d("TSOT",r.titleSort),r.grouping&&d("TIT1",r.grouping),i<10&&(i=10);const g=Number(BigInt.asIntN(32,e.getPos()-o));i>268435455-g&&(i=268435455-g),e.writeBuffer(A()(a=new Uint8Array(i)).call(a,0)),o=e.getPos(),e.seek(n),S(e,g),e.seek(o)}function V(e,t){var i;const r=[],a=new h.Rs,o=[];a.onFlush=e=>(o.push(s()(e).call(e)),0);const n=2!==t;return c()(i=e.streams).call(i,(e=>{if(1024&e.disposition&&(n&&(7===e.codecpar.codecId||61===e.codecpar.codecId||96===e.codecpar.codecId||97===e.codecpar.codecId||171===e.codecpar.codecId||78===e.codecpar.codecId)||!n&&(61===e.codecpar.codecId||7===e.codecpar.codecId))&&e.attachedPic){o.length=0,a.writeUint8(3),n?(a.writeString(p()(I.Ik).call(I.Ik,T)[e.codecpar.codecId]),a.writeUint8(0)):61===e.codecpar.codecId?a.writeString("PNG"):a.writeString("JPG");let t=0;e.metadata.comment&&m()(B).call(B,e.metadata.comment)>-1&&(t=m()(B).call(B,e.metadata.comment)),a.writeUint8(t),e.metadata.description&&a.writeString(e.metadata.description),a.writeUint8(0),a.writeBuffer((0,w.iI)(e.attachedPic)),a.flush(),r.push((0,I.O$)(Uint8Array,o))}})),r}},78140:(e,t,i)=>{i.r(t),i.d(t,{default:()=>P});var r=i(82563),a=i(78397),o=i.n(a),c=i(53508),n=i(66882),s=i(27843),d=i(28719),A=i(26367),l=i(46440),p=i(53843),g=i(33310),m=i(85753);const f="packages/avformat/src/formats/OWavFormat.ts",u={forceRF64:!1,id3v2Version:4};class P extends n.A{constructor(e={}){super(),(0,r.A)(this,"type",16),(0,r.A)(this,"options",void 0),(0,r.A)(this,"minPts",void 0),(0,r.A)(this,"maxPts",void 0),(0,r.A)(this,"lastDuration",void 0),(0,r.A)(this,"sampleCount",void 0),(0,r.A)(this,"dataPos",void 0),(0,r.A)(this,"dsPos",void 0),this.options=g.Ik.extend({},u,e)}init(e){return e.ioWriter.setEndian(!1),this.maxPts=BigInt(0),this.minPts=BigInt.asIntN(64,p.mN),this.sampleCount=BigInt(0),this.lastDuration=BigInt(0),this.dataPos=-BigInt(1),this.dsPos=-BigInt(1),0}writeHeader(e){const t=e.getStreamByMediaType(1);if(!t.codecpar.codecTag||t.codecpar.codecTag>65535){let e=65534;65557===t.codecpar.codecId||65559===t.codecpar.codecId?e=3:65541===t.codecpar.codecId||65536===t.codecpar.codecId||65548===t.codecpar.codecId||65544===t.codecpar.codecId||65567===t.codecpar.codecId?e=1:g.Ik.each(s.gi,((i,r)=>{i===t.codecpar.codecId&&(e=+r)})),t.codecpar.codecTag=e}return t.codecpar.bitsPerCodedSample||(t.codecpar.bitsPerCodedSample=p.Hq.getBitsPerSample(t.codecpar.codecId)),t.codecpar.blockAlign||(t.codecpar.blockAlign=t.codecpar.bitsPerCodedSample*t.codecpar.chLayout.nbChannels/(0,m.p_)(8,t.codecpar.bitsPerCodedSample)),e.ioWriter.writeString("RIFF"),e.ioWriter.writeUint32(-1),e.ioWriter.writeString("WAVE"),this.dsPos=e.ioWriter.getPos(),e.ioWriter.writeString("JUNK"),e.ioWriter.writeUint32(28),e.ioWriter.writeUint64(BigInt(0)),e.ioWriter.writeUint64(BigInt(0)),e.ioWriter.writeUint64(BigInt(0)),e.ioWriter.writeUint32(0),e.ioWriter.writeString("fmt "),e.ioWriter.writeUint32(16),e.ioWriter.writeUint16(t.codecpar.codecTag),e.ioWriter.writeUint16(t.codecpar.chLayout.nbChannels),e.ioWriter.writeUint32(t.codecpar.sampleRate),e.ioWriter.writeUint32(Number(BigInt.asUintN(32,t.codecpar.bitrate/BigInt(8)))),e.ioWriter.writeUint16(t.codecpar.blockAlign),e.ioWriter.writeUint16(t.codecpar.bitsPerCodedSample),this.dataPos=e.ioWriter.getPos(),e.ioWriter.writeString("data"),e.ioWriter.writeUint32(-1),0}writeAVPacket(e,t){if(!c.f[15](t+28))return void g.vF.warn(`packet's size is 0: ${c.f[15](t+32)}, ignore it`,f,169);const i=e.getStreamByIndex(c.f[15](t+32));if(!i||1024&i.disposition)g.vF.warn(`can not found the stream width the packet's streamIndex: ${c.f[15](t+32)}, ignore it`,f,176);else{if(1===i.codecpar.codecType)return e.ioWriter.writeBuffer((0,A.s3)(c.f[20](t+24),c.f[15](t+28))),c.f[17](t+8)<this.minPts&&(this.minPts=c.f[17](t+8)),c.f[17](t+8)>this.maxPts&&(this.maxPts=c.f[17](t+8)),c.f[17](t+48)!==l.Dh&&(this.lastDuration=c.f[17](t+48)),65557!==i.codecpar.codecId&&65559!==i.codecpar.codecId&&65541!==i.codecpar.codecId&&65536!==i.codecpar.codecId&&65548!==i.codecpar.codecId&&65544!==i.codecpar.codecId&&65567!==i.codecpar.codecId||(this.sampleCount+=BigInt(0|Math.floor(c.f[15](t+28)/(i.codecpar.chLayout.nbChannels*i.codecpar.bitsPerCodedSample/8)))),0;g.vF.warn(`packet's type is not audio: ${c.f[15](t+32)}, ignore it`,f,181)}}writeTrailer(e){e.ioWriter.flush();const t=e.getStreamByMediaType(1);let i=e.ioWriter.getPos();const r=i-this.dataPos-BigInt(8);if(this.options.id3v2Version){const t=g.Ik.extend({},e.metadata),r=d.VO(e,this.options.id3v2Version);if(r.length&&(t.apic=r),o()(g.Ik).call(g.Ik,t).length){e.ioWriter.writeString("id3 ");const r=e.ioWriter.getPos();e.ioWriter.writeUint32(0),e.ioWriter.setEndian(!0),d.M9(e.ioWriter,this.options.id3v2Version,e.metadataHeaderPadding,t),e.ioWriter.setEndian(!1);const a=e.ioWriter.getPos()-r+BigInt(4);i+=a,e.ioWriter.seek(r),e.ioWriter.writeUint32(Number(a-BigInt(8))),e.ioWriter.seek(i)}}let a=!1;if(this.options.forceRF64||i-BigInt(8)>BigInt(p.f7)?a=!0:(e.ioWriter.seek(BigInt(4)),e.ioWriter.writeUint32(Number(BigInt.asUintN(32,i-BigInt(8)))),e.ioWriter.seek(this.dataPos+BigInt(4)),e.ioWriter.writeUint32(Number(BigInt.asUintN(32,r))),e.ioWriter.seek(i)),a){let a=this.sampleCount;this.sampleCount||(a=(0,l.k)(this.maxPts-this.minPts+this.lastDuration,t.timeBase,{num:1,den:t.codecpar.sampleRate})),e.ioWriter.seek(BigInt(0)),e.ioWriter.writeString("RF64"),e.ioWriter.writeUint32(-1),e.ioWriter.seek(this.dsPos),e.ioWriter.writeString("ds64"),e.ioWriter.writeUint32(28),e.ioWriter.writeUint64(i-BigInt(8)),e.ioWriter.writeUint64(r),e.ioWriter.writeUint64(a),e.ioWriter.writeUint32(0),e.ioWriter.seek(i)}return 0}flush(e){return e.ioWriter.flush(),0}getCapabilities(){return P.Capabilities}}(0,r.A)(P,"Capabilities",[65557,65559,65541,65536,65548,65544,65567])}}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";(self.webpackChunkAVPlayer=self.webpackChunkAVPlayer||[]).push([[160],{29578:(e,a,t)=>{t.d(a,{A:()=>f});var i=t(9538),r=t.n(i),o=t(53508),d=t(98604),c=t(46440),s=t(53843),n=t(33310);const p="packages/avformat/src/function/seekInBytes.ts";async function f(e,a,t,i,f,h){const l=e.ioReader.getPos(),I=await e.ioReader.fileSize();let u=c.Dh,g=t;a.startTime!==c.Dh?g-=a.startTime:g-=a.firstDTS;const w=(0,c.k)(t,a.timeBase,s.i0);if(w<BigInt(1e4))return n.vF.debug(`seek pts is earlier then 10s, seek to first packet pos(${i}) directly`,p,78),await e.ioReader.seek(i),l;let m=(0,d.d)(e.streams,g,a.timeBase);const M=I-(0,d.d)(e.streams,BigInt(1e4),s.i0),R=(0,d.d)(e.streams,BigInt(1e4),s.i0);if(m>M&&(m=M),m<i)return await e.ioReader.seek(i),l;const k=(0,c._5)();let v=I,B=BigInt(0);e:for(;v-B<R&&(m=B),await e.ioReader.seek(m),await h(e),!(8&r()(e.ioReader));){let t=await f(e,k),i=o.f[17](k+56);if(!(t>=0)){u=c.Dh;break}{const r=(0,c.Mr)(o.f[17](k+8),k+72,s.i0);let d=r-w;if(n.vF.debug(`try to seek to pos: ${m}, got packet pts: ${o.f[17](k+8)}(${r}ms), diff: ${d}ms`,p,115),d<=BigInt(0)&&-d<BigInt(1e4)||v-B<R){const r=[i];for(;d<=0;){if(o.f[15](k+32)===a.index&&1&o.f[15](k+36)&&r.push(i),(0,c.Up)(k),t=await f(e,k),t<0){if(-1048576===t)break;if(-1048575===t)continue;u=c.Dh;break e}i=o.f[17](k+56),d=(0,c.Mr)(o.f[17](k+8),k+72,s.i0)-w}u=r.pop();break}d>BigInt(0)?(v=m,m=B+v>>BigInt(1)):(B=m,m=B+v>>BigInt(1))}if(8&r()(e.ioReader))break}return(0,c.Qe)(k),u!==c.Dh?(n.vF.debug(`finally seek to pos ${u}`,p,170),await e.ioReader.seek(u),await h(e),l):(await e.ioReader.seek(l),8&r()(e.ioReader)?BigInt(c.D1.LT):BigInt(c.D1.E$))}},62160:(e,a,t)=>{t.r(a),t.d(a,{default:()=>y});var i=t(82563),r=t(18811),o=t.n(r),d=t(92983),c=t.n(d),s=t(9538),n=t.n(s),p=t(94110),f=t.n(p),h=t(26367),l=t(59650),I=t(53508),u=t(3029),g=t(46440),w=t(55978),m=t(39710),M=t(915),R=t(66192),k=t(33236),v=t(29578),B=t(53843),C=t(33310);const P="packages/avformat/src/formats/IFlvFormat.ts";class y extends R.A{constructor(e={}){super(),(0,i.A)(this,"type",0),(0,i.A)(this,"header",void 0),(0,i.A)(this,"script",void 0),(0,i.A)(this,"options",void 0),(0,i.A)(this,"firstTagPos",void 0),this.header=new w.A,this.script=new m.A,this.options=e}init(e){e.ioReader&&e.ioReader.setEndian(!0)}async readHeader(e){try{if("FLV"!==await e.ioReader.peekString(3))return C.vF.error("the file format is not flv",P,155),g.D1.LR;await this.header.read(e.ioReader),0!==await e.ioReader.readUint32()&&C.vF.warn("the previousTagSize0 is not 0",P,162);let a=0;if(18===await e.ioReader.peekUint8()){await e.ioReader.skip(1);const t=await e.ioReader.readUint24();await e.ioReader.skip(7),a=await this.script.read(e.ioReader,t)}return a>=0&&(this.firstTagPos=e.ioReader.getPos()),a}catch(a){return C.vF.error(a.message,P,180),e.ioReader.error}}async readModEx(e,a,t){let i=await e.ioReader.readUint8()+1;256===i&&(i=await e.ioReader.readUint16()+1);const r=await e.ioReader.readBuffer(i),o=await e.ioReader.readUint8(),d=240&o;if(0===d&&0===t||0===d&&1===t){let e=0;3===r.length?(e=r[0]<<16|r[1]<<8|r[2],this.options.useNanoTimestamp?u.M[17](a+16,I.f[17](a+16)+BigInt(e)):u.M[17](a+16,I.f[17](a+16)+BigInt(e)/BigInt(1e6)),u.M[17](a+8,I.f[17](a+16))):C.vF.warn(`Invalid ModEx size for Type TimestampOffsetNano!, need 3 but got ${r.length}`,P,213)}else C.vF.warn(`unknown ModEx type: ${d}`,P,217);return 15&o}async readCodecConfigurationRecord(e,a,t,i){const r=(0,g.sY)(i);var d;a.codecpar.extradata?((0,g.Ow)(t,1,r,i),await e.ioReader.readBuffer(i,(0,h.JW)(r,i))):(a.codecpar.extradata=r,a.codecpar.extradataSize=i,await e.ioReader.readBuffer(i,(0,h.JW)(r,i)),a.sideData[1]=o()(d=(0,h.s3)(r,i)).call(d),27===a.codecpar.codecId?B.Hj.parseAVCodecParameters(a):173===a.codecpar.codecId?B.pA.parseAVCodecParameters(a):196===a.codecpar.codecId?B.qT.parseAVCodecParameters(a):225===a.codecpar.codecId?B.l6.parseAVCodecParameters(a):167===a.codecpar.codecId?B.o_.parseAVCodecParameters(a):139===a.codecpar.codecId?B.hw.parseAVCodecParameters(a):86018===a.codecpar.codecId?B.cJ.parseAVCodecParameters(a):86028===a.codecpar.codecId?B.Jn.parseAVCodecParameters(a):86076===a.codecpar.codecId&&B.EG.parseAVCodecParameters(a))}async readAVPacketData(e,a,t,i){const r=(0,g.sY)(i);(0,g.NX)(t,r,i),await e.ioReader.readBuffer(i,(0,h.JW)(r,i))}parseColorInfo(e,a,t){let i=!1,r=!1;if(t.hdrMdcv&&(i=t.hdrMdcv.redX>0&&t.hdrMdcv.redY>0&&t.hdrMdcv.blueX>0&&t.hdrMdcv.blueY>0&&t.hdrMdcv.greenX>0&&t.hdrMdcv.greenY>0&&t.hdrMdcv.whitePointX>0&&t.hdrMdcv.whitePointY>0,r=t.hdrMdcv.maxLuminance>0&&t.hdrMdcv.minLuminance>0),3!==t.colorConfig.matrixCoefficients&&(e.codecpar.colorSpace=t.colorConfig.matrixCoefficients),3!==t.colorConfig.colorPrimaries&&0!==t.colorConfig.colorPrimaries&&(e.codecpar.colorPrimaries=t.colorConfig.colorPrimaries),3!==t.colorConfig.transferCharacteristics&&0!==t.colorConfig.transferCharacteristics&&(e.codecpar.colorTrc=t.colorConfig.transferCharacteristics),t.hdrCll&&t.hdrCll.maxCLL&&t.hdrCll.maxFall){const o=(0,g.Gy)(8);u.M[8](o,t.hdrCll.maxCLL),u.M[8](o+4,t.hdrCll.maxFall),(0,g.sn)(e.codecpar[l.o9]+20,e.codecpar[l.o9]+24,22)?(0,g.Ow)(a,22,o,8):(0,g.$W)(e.codecpar[l.o9]+20,e.codecpar[l.o9]+24,22,o,8)}if(r||i){const d=(0,g.Gy)(88);function c(e,a){const t=(0,g.j2)(a,B.go);u.M[15](e+4,t.den),u.M[15](e,t.num)}r&&(u.M[15](d+84,1),c(d+72,t.hdrMdcv.maxLuminance),c(d+64,t.hdrMdcv.minLuminance)),i&&(u.M[15](d+80,1),c(d,t.hdrMdcv.redX),c(d+8,t.hdrMdcv.redY),c(d+16,t.hdrMdcv.greenX),c(d+16+8,t.hdrMdcv.greenY),c(d+32,t.hdrMdcv.blueX),c(d+32+8,t.hdrMdcv.blueY)),(0,g.sn)(e.codecpar[l.o9]+20,e.codecpar[l.o9]+24,20)?(0,g.Ow)(a,20,d,88):(0,g.$W)(e.codecpar[l.o9]+20,e.codecpar[l.o9]+24,20,d,88)}}findStream(e,a,t){for(let i=0;i<e.streams.length;i++)if(e.streams[i].codecpar.codecType===a){const a=e.streams[i].privData;if(a&&a.trackId===t)return e.streams[i]}}createStream(e,a,t,i){var r;const o=e.createStream();o.codecpar.codecType=a,o.timeBase.den=this.options.useNanoTimestamp?B.H3:B.qs,o.timeBase.num=1,o.startTime=I.f[17](t+8);const d={trackId:i};var c,s,n;if(o.privData=d,null!==(r=this.script.onMetaData)&&void 0!==r&&r.duration&&(o.duration=(0,g.k)(BigInt(Math.floor(1e3*this.script.onMetaData.duration)),B.i0,o.timeBase)),0===a)(null===(c=this.script.onMetaData)||void 0===c?void 0:c.width)>0&&(o.codecpar.width=this.script.onMetaData.width),(null===(s=this.script.onMetaData)||void 0===s?void 0:s.height)>0&&(o.codecpar.height=this.script.onMetaData.height),null!==(n=this.script.onMetaData)&&void 0!==n&&null!==(n=n.videoTrackIdInfoMap)&&void 0!==n&&n[i]&&(this.script.onMetaData.videoTrackIdInfoMap[i].title&&(o.metadata.title=this.script.onMetaData.videoTrackIdInfoMap[i].title),this.script.onMetaData.videoTrackIdInfoMap[i].lang&&(o.metadata.language=this.script.onMetaData.videoTrackIdInfoMap[i].lang),this.script.onMetaData.videoTrackIdInfoMap[i].width>0&&(o.codecpar.width=this.script.onMetaData.videoTrackIdInfoMap[i].width),this.script.onMetaData.videoTrackIdInfoMap[i].height>0&&(o.codecpar.height=this.script.onMetaData.videoTrackIdInfoMap[i].height),this.script.onMetaData.videoTrackIdInfoMap[i].duration>0&&(o.duration=(0,g.k)(BigInt(1e3*this.script.onMetaData.videoTrackIdInfoMap[i].duration),B.i0,o.timeBase)));else if(1===a){var p;null!==(p=this.script.onMetaData)&&void 0!==p&&null!==(p=p.audioTrackIdInfoMap)&&void 0!==p&&p[i]&&(this.script.onMetaData.audioTrackIdInfoMap[i].title&&(o.metadata.title=this.script.onMetaData.audioTrackIdInfoMap[i].title),this.script.onMetaData.audioTrackIdInfoMap[i].lang&&(o.metadata.language=this.script.onMetaData.audioTrackIdInfoMap[i].lang),this.script.onMetaData.audioTrackIdInfoMap[i].duration>0&&(o.duration=(0,g.k)(BigInt(1e3*this.script.onMetaData.audioTrackIdInfoMap[i].duration),B.i0,o.timeBase)))}return this.onStreamAdd&&this.onStreamAdd(o),o}async readAVPacket_(e,a){const t=e.ioReader.getPos();u.M[17](a+56,t);let i=!1;const r=31&await e.ioReader.readUint8();let o=await e.ioReader.readUint24(),d=await e.ioReader.readUint24();const s=await e.ioReader.readUint8();if(s&&(d|=s<<24),u.M[17](a+16,this.options.useNanoTimestamp?(0,g.k)(BigInt(Math.floor(d)),B.i0,B.FQ):BigInt(Math.floor(d))),u.M[17](a+8,I.f[17](a+16)),await e.ioReader.skip(3),8===r){u.M[15](a+36,1|I.f[15](a+36));const r=await e.ioReader.readUint8();o--;const d=(240&r)>>4;if(9===d){let d=!1,s=15&r;for(;7===s;){let t=e.ioReader.getPos();s=await this.readModEx(e,a,1),o-=Number(BigInt.asIntN(32,e.ioReader.getPos()-t))}let n=0,p=0;if(5===s){d=!0;const a=await e.ioReader.readUint8();o--,p=(240&a)>>4,s=15&a,2!==p&&(n=await e.ioReader.readUint32(),o-=4)}else n=await e.ioReader.readUint32(),o-=4;let f=a;for(;;){let r=o,w=0;d&&(2===p&&(n=await e.ioReader.readUint32(),o-=4),w=await e.ioReader.readUint8(),o--,0!==p?(r=await e.ioReader.readUint24(),o-=3):r=o);let m=this.findStream(e,1,w);if(m||(m=this.createStream(e,1,f,w),n===(0,k.A)("ac-3")?m.codecpar.codecId=86019:n===(0,k.A)("ec-3")?m.codecpar.codecId=86056:n===(0,k.A)("Opus")?(m.codecpar.codecId=86076,m.codecpar.sampleRate=48e3):n===(0,k.A)(".mp3")?m.codecpar.codecId=86017:n===(0,k.A)("fLaC")?m.codecpar.codecId=86028:n===(0,k.A)("mp4a")?m.codecpar.codecId=86018:(C.vF.warn(`unknown codec fourcc(${n.toString(16)})`,P,546),m.codecpar.codecId=0)),u.M[15](f+32,m.index),o-=r,4===s){const a=await e.ioReader.readUint8(),t=await e.ioReader.readUint8();if(r-=2,B.Ix.unInitChannelLayout(m.codecpar[l.o9]+112),2===a){B.Ix.initCustomChannelLayout(m.codecpar[l.o9]+112,t);for(let a=0;a<t;a++){const t=await e.ioReader.readUint8();r--,t<18?u.M[15](c()(m.codecpar.chLayout.u)+24*a,t):t>=18&&t<=23?u.M[15](c()(m.codecpar.chLayout.u)+24*a,t-18+35):254===t?u.M[15](c()(m.codecpar.chLayout.u)+24*a,512):u.M[15](c()(m.codecpar.chLayout.u)+24*a,768)}}else if(1===a){let a=BigInt(await e.ioReader.readUint32());r-=4,a=a&BigInt(262143)|(a&BigInt(16515072))<<BigInt(35)-BigInt(18),B.Ix.setChannelLayoutFromMask(m.codecpar[l.o9]+112,a)}i=!0}else if(0===s)r?(await this.readCodecConfigurationRecord(e,m,f,r),r=0,i=!1,(0,g.fQ)(a,1)||(i=!0)):i=!0;else if(2===s)u.M[15](f+36,32|I.f[15](f+36)),i=!1;else if(1===s){if(await this.readAVPacketData(e,m,f,r),(86019===m.codecpar.codecId||86056===m.codecpar.codecId||86017===m.codecpar.codecId)&&m.codecpar.sampleRate===g.N_)if(86019===m.codecpar.codecId||86056===m.codecpar.codecId){const e=B.we.parseHeader((0,g.iI)(f));C.is.number(e)||(m.codecpar.sampleRate=e.sampleRate,m.codecpar.chLayout.nbChannels=e.channels,m.codecpar.bitrate=BigInt(e.bitrate))}else 86017===m.codecpar.codecId&&B.rt.parseAVCodecParameters(m,(0,g.iI)(f));i=!1,r=0}else C.vF.warn(`invalid audioPacketType ${s}`,P,628);if(r&&await e.ioReader.skip(r),f===a||i||e.interval.packetBuffer.push(f),!d||0===p||!o)break;f=(0,g._5)(),u.M[17](f+56,t),(0,h.Mr)(f+72,a+72,8),u.M[17](f+16,I.f[17](a+16)),u.M[17](f+8,I.f[17](a+8)),u.M[15](f+36,1|I.f[15](f+36))}}else{let t=this.findStream(e,1,0);if(!t){if(t=this.createStream(e,1,a,0),t.disposition|=1,t.codecpar.chLayout.nbChannels=1&~r?1:2,t.codecpar.sampleRate=44100<<((12&r)>>>2)>>3,t.codecpar.bitsPerCodedSample=2&r?16:8,0===d)t.codecpar.codecId=8===t.codecpar.bitsPerCodedSample?65541:65536;else if(3===d)t.codecpar.codecId=8===t.codecpar.bitsPerCodedSample?65541:65536;else{var n;t.codecpar.codecId=null!==(n=M.FJ[d])&&void 0!==n?n:0}86051===t.codecpar.codecId?(t.codecpar.sampleRate=16e3,t.codecpar.chLayout.nbChannels=1):65543!==t.codecpar.codecId&&65542!==t.codecpar.codecId||(t.codecpar.sampleRate=8e3)}u.M[15](a+32,t.index),86018===t.codecpar.codecId&&(o--,0===await e.ioReader.readUint8()&&(this.readCodecConfigurationRecord(e,t,a,o),o=0,(0,g.fQ)(a,1)||(i=!0))),o&&(await this.readAVPacketData(e,t,a,o),o=0)}}else if(9===r){const r=await e.ioReader.readUint8(),d=128&r,c=(112&r)>>4;if(o--,1===c&&u.M[15](a+36,1|I.f[15](a+36)),d){let d=!0,s=!1,n=15&r;for(;7===n;){let t=e.ioReader.getPos();n=await this.readModEx(e,a,0),o-=Number(BigInt.asIntN(32,e.ioReader.getPos()-t))}let p=0,f=0;if(4!==n&&5===c)d=!1,i=!0;else if(6===n){s=!0;const a=await e.ioReader.readUint8();o--,f=(240&a)>>4,n=15&a,2!==f&&(p=await e.ioReader.readUint32(),o-=4)}else p=await e.ioReader.readUint32(),o-=4;let l=a;for(;d;){let r=o,d=0;s&&(2===f&&(p=await e.ioReader.readUint32(),o-=4),d=await e.ioReader.readUint8(),o--,0!==f?(r=await e.ioReader.readUint24(),o-=3):r=o);let w=this.findStream(e,0,d);if(w||(w=this.createStream(e,0,l,d),p===(0,k.A)("avc1")?w.codecpar.codecId=27:p===(0,k.A)("hvc1")?w.codecpar.codecId=173:p===(0,k.A)("vvc1")?w.codecpar.codecId=196:p===(0,k.A)("av01")?w.codecpar.codecId=225:p===(0,k.A)("vp09")?w.codecpar.codecId=167:p===(0,k.A)("vp08")&&(w.codecpar.codecId=139)),u.M[15](l+32,w.index),o-=r,4===n){const a=e.ioReader.getPos()+BigInt(Math.floor(r)),t=await B.Fv.parseValue(e.ioReader,a),o=await B.Fv.parseValue(e.ioReader,a);"colorInfo"===t?this.parseColorInfo(w,l,o):C.vF.warn(`unknown metadata key ${t}`,P,805),e.ioReader.getPos()<a&&await e.ioReader.seek(a),i=!0,r=0}else if(0===n)r?(await this.readCodecConfigurationRecord(e,w,l,r),r=0,i=!1,(0,g.fQ)(a,1)||(i=!0)):i=!0;else if(2===n)u.M[15](l+36,32|I.f[15](l+36)),i=!1;else if(5===n)225===w.codecpar.codecId?(await this.readCodecConfigurationRecord(e,w,l,r-2),i=!1,r=0,(0,g.fQ)(a,1)||(i=!0)):i=!0;else if(1===n||3===n){if(1===n&&(173===w.codecpar.codecId||196===w.codecpar.codecId||27===w.codecpar.codecId)){const t=await e.ioReader.readInt24();u.M[17](l+8,I.f[17](l+16)+(this.options.useNanoTimestamp?(0,g.FP)(BigInt(0|t),B.i0,a+72):BigInt(0|t))),r-=3}await this.readAVPacketData(e,w,l,r),r=0,i=!1}else C.vF.warn(`invalid videoPacketType ${n}`,P,864);if(r&&await e.ioReader.skip(r),i||l===a||e.interval.packetBuffer.push(l),!s||0===f||!o)break;l=(0,g._5)(),u.M[17](l+56,t),(0,h.Mr)(l+72,a+72,8),u.M[17](l+16,I.f[17](a+16)),u.M[17](l+8,I.f[17](a+8)),1===c&&u.M[15](l+36,1|I.f[15](l+36))}}else if(5!==c){let t=this.findStream(e,0,0);var p;if(t||(t=this.createStream(e,0,a,0),t.disposition|=1,t.codecpar.codecId=null!==(p=M.U5[15&r])&&void 0!==p?p:0),u.M[15](a+32,t.index),27===t.codecpar.codecId||173===t.codecpar.codecId||196===t.codecpar.codecId||12===t.codecpar.codecId){const r=await e.ioReader.readUint8(),d=await e.ioReader.readInt24();o-=4,u.M[17](a+8,I.f[17](a+16)+(this.options.useNanoTimestamp?(0,g.FP)(BigInt(0|d),B.i0,a+72):BigInt(0|d))),0===r?(await this.readCodecConfigurationRecord(e,t,a,o),(0,g.fQ)(a,1)||(i=!0)):2===r?u.M[15](a+36,32|I.f[15](a+36)):await this.readAVPacketData(e,t,a,o)}else await this.readAVPacketData(e,t,a,o);o=0}else i=!0}else{if(18===r){let t=await this.script.read(e.ioReader,o);return t<0?t:await this.readAVPacket_(e,a)}if(15!==r)return C.vF.warn(`invalid tag type: ${r}, try to sync to next tag`,P,950),await this.syncTag(e),this.readAVPacket_(e,a);C.vF.warn("not support script tag encoded by amf3, ignore it",P,947)}o&&await e.ioReader.skip(o);const f=e.ioReader.getPos()-t,w=BigInt(Math.floor(await e.ioReader.readUint32()));return f!==w&&C.vF.warn(`tag ${r} size not match, size: ${f}, previousTagSize: ${w}`,P,963),i?this.readAVPacket_(e,a):0}async readAVPacket(e,a){try{return u.M[15](a+76,this.options.useNanoTimestamp?B.H3:B.qs),u.M[15](a+72,1),await this.readAVPacket_(e,a)}catch(a){return-1048576!==e.ioReader.error&&-1048572!==e.ioReader.error?(C.vF.error(`read packet error, ${a}`,P,981),g.D1.LR):e.ioReader.error}}async syncTag(e){let a=g.Dh;for(;;)try{if(8&n()(e.ioReader))break;const t=await e.ioReader.readUint8();if(8===t||9===t){a=e.ioReader.getPos()-BigInt(1);const t=await e.ioReader.readUint24();if(t>10485760){await e.ioReader.seek(a+BigInt(1));continue}if(await e.ioReader.skip(4),0!==await e.ioReader.readUint24()){await e.ioReader.seek(a+BigInt(1));continue}await e.ioReader.skip(t);if(e.ioReader.getPos()-a!==BigInt(Math.floor(await e.ioReader.readUint32()))){await e.ioReader.seek(a+BigInt(1)),a=g.Dh;continue}{let t=0;for(;t<=3;){const a=e.ioReader.getPos(),i=await e.ioReader.readUint8();if(8!==i&&9!==i&&18!==i)break;{const i=await e.ioReader.readUint24();await e.ioReader.skip(7+i);if(e.ioReader.getPos()-a!==BigInt(Math.floor(await e.ioReader.readUint32())))break;t++}}if(!(t<3))break;await e.ioReader.seek(a+BigInt(1)),a=g.Dh}}}catch(e){break}a!==g.Dh&&await e.ioReader.seek(a)}async seek(e,a,t,i){const r=e.ioReader.getPos();if(2&i)return await e.ioReader.seek(t),4&i||await this.syncTag(e),r;var o,d;if(a&&a.sampleIndexes.length){let i=C.YO.binarySearch(a.sampleIndexes,(e=>e.pts>t?-1:1));if(i>0&&(0,g.k)(t-a.sampleIndexes[i-1].pts,a.timeBase,B.i0)<BigInt(1e4))return C.vF.debug(`seek in sampleIndexes, found index: ${i}, pts: ${a.sampleIndexes[i-1].pts}, pos: ${a.sampleIndexes[i-1].pos}`,P,1088),await e.ioReader.seek(a.sampleIndexes[i-1].pos),r}if(this.script.canSeek()){const{pos:i,dts:o}=this.script.dts2Position(Number((0,g.k)(t,a.timeBase,B.i0)/BigInt(1e3)));if(i>0){C.vF.debug(`seek in filepositions, found pts: ${o}, pos: ${i}`,P,1097),await e.ioReader.seek(BigInt(Math.floor(i)));const a=await e.ioReader.peekUint8();return 8!==a&&9!==a&&18!==a&&await this.syncTag(e),r}}return C.vF.debug("not found any keyframe index, try to seek in bytes",P,1107),(0,v.A)(e,a,t,this.firstTagPos,f()(o=this.readAVPacket).call(o,this),f()(d=this.syncTag).call(d,this))}getAnalyzeStreamsCount(){let e=0;return(this.header.hasAudio||(0,C.C8)(this.script.onMetaData.audiocodecid))&&e++,(this.header.hasVideo||(0,C.C8)(this.script.onMetaData.videocodecid))&&e++,e}}},66192:(e,a,t)=>{t.d(a,{A:()=>r});var i=t(82563);class r{constructor(){(0,i.A)(this,"type",-1),(0,i.A)(this,"onStreamAdd",void 0)}async destroy(e){}}},98604:(e,a,t)=>{t.d(a,{d:()=>d});var i=t(33310),r=t(53843),o=t(46440);function d(e,a,t){let d=BigInt(0);return i.YO.each(e,(e=>{d+=e.codecpar.bitrate*(0,o.k)(a,t,r.i0)/BigInt(8e3)})),d}}}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";(self.webpackChunkAVPlayer=self.webpackChunkAVPlayer||[]).push([[192],{8192:(t,e,i)=>{i.r(e),i.d(e,{default:()=>T});var r=i(82563),a=i(41450),n=i.n(a),s=i(31472),o=i.n(s),c=i(53508),d=i(66882),g=i(44909),f=i(11719),l=i(28719),h=i(26367),p=i(46440),u=i(53843),w=i(33310),m=i(79531);const x="packages/avformat/src/formats/OMp3Format.ts",b={id3v2Version:4,hasID3v1:!1,hasXing:!0};class T extends d.A{constructor(t={}){super(),(0,r.A)(this,"type",14),(0,r.A)(this,"options",void 0),(0,r.A)(this,"context",void 0),(0,r.A)(this,"xingWriter",void 0),this.options=w.Ik.extend({},b,t)}init(t){var e;return t.ioWriter.setEndian(!0),this.context={size:0,frames:0,seen:0,want:1,bag:[],pos:0,initialBitrate:0,hasVariableBitrate:!1,padding:0,delay:0,frameHeader:new g.Vz,xingOffset:-1,xingFrameSize:0,xingFrameOffset:BigInt(0),xingFramePos:BigInt(0),audioSize:0,id3SizePos:BigInt(0)},this.xingWriter=new m.ac(new Uint8Array(5e3)),n()(e=t.streams).call(e,(t=>86017===t.codecpar.codecId))?0:(w.vF.error("can not found stream with mp3 codec",x,142),p.D1.UY)}writeXingTag(t){var e,i,r,a;if(!this.options.hasXing)return;const s=n()(e=t.streams).call(e,(t=>86017===t.codecpar.codecId));let c=-1,d=0,l=-1,h=-1,p=BigInt(0|u.go),m=0,b=0;const T=[44100,48e3,32e3];for(let t=0;t<T.length;t++){const e=T[t];if(s.codecpar.sampleRate===e)m=3;else if(s.codecpar.sampleRate===e/2)m=2;else{if(s.codecpar.sampleRate!==e/4)continue;m=0}c=t}if(c===T.length)return void w.vF.warn("unsupported sample rate, not writing Xing header.",x,188);switch(s.codecpar.chLayout.nbChannels){case 1:d=3;break;case 2:d=0;break;default:return void w.vF.warn("unsupported number of channels, not writing Xing header.",x,202)}let k=-16777216;for(k|=(227|m<<3)<<16,k|=c<<2<<8,k|=d<<6,l=1;l<15;l++){let t=BigInt(Math.floor(1e3*u.rt.getBitRateByVersionLayerIndex(m,2,l))),e=w.o.abs(t-s.codecpar.bitrate);e<p&&(p=e,h=l)}for(l=h;;l++){let t=l<<12;if(15==l)return;k|=t,g.qg(this.context.frameHeader,k);const e=[[0,9,17],[0,0,0],[0,9,17],[0,17,32]];if(this.context.xingOffset=e[this.context.frameHeader.version][s.codecpar.chLayout.nbChannels]+4,b=this.context.xingOffset+f.FN,b<=g.CM(this.context.frameHeader,s.codecpar.sampleRate))break;k&=~t}this.xingWriter.writeUint32(k),this.xingWriter.writeBuffer(o()(i=new Uint8Array(this.context.xingOffset-4)).call(i,0)),this.xingWriter.writeString("Xing"),this.xingWriter.writeUint32(15),this.context.size=g.CM(this.context.frameHeader,s.codecpar.sampleRate),this.context.want=1,this.context.seen=0,this.context.pos=0,this.xingWriter.writeUint32(0),this.xingWriter.writeUint32(0);for(let t=0;t<f.W8;t++)this.xingWriter.writeUint8(255*t/f.W8>>>0);this.xingWriter.writeUint32(0);const U=s.metadata||{};if(U.encoder){const t=w.Qq.encode(U.encoder);this.xingWriter.writeBuffer(t.subarray(0,9))}else{var I;this.xingWriter.writeString("Lavf"),this.xingWriter.writeBuffer(o()(I=new Uint8Array(5)).call(I,0))}this.xingWriter.writeUint8(0),this.xingWriter.writeUint8(0),this.xingWriter.writeBuffer(o()(r=new Uint8Array(8)).call(r,0)),this.xingWriter.writeUint8(0),this.xingWriter.writeUint8(0),this.xingWriter.writeUint24(0),this.xingWriter.writeUint8(0),this.xingWriter.writeUint8(0),this.xingWriter.writeUint16(0),this.xingWriter.writeUint32(0),this.xingWriter.writeUint16(0),this.xingWriter.writeUint16(0),this.xingWriter.writeBuffer(o()(a=new Uint8Array(this.context.size-b)).call(a,0)),this.context.xingFrameSize=this.xingWriter.getPos(),this.context.xingFrameOffset=t.ioWriter.getPos(),t.ioWriter.writeBuffer(this.xingWriter.getWroteBuffer()),this.context.audioSize=this.context.xingFrameSize}xingAddFrame(t){if(this.context.frames++,this.context.seen++,this.context.size+=c.f[15](t+28),this.context.want===this.context.seen){if(this.context.bag[this.context.pos]=this.context.size,400==++this.context.pos){for(let t=1;t<400;t+=2)this.context.bag[t>>1]=this.context.bag[t];this.context.want*=2,this.context.pos=200}this.context.seen=0}}updateXing(t){this.context.hasVariableBitrate&&(this.xingWriter.seek(this.context.xingOffset),this.xingWriter.writeString("Info")),this.xingWriter.seek(this.context.xingOffset+8),this.xingWriter.writeUint32(this.context.frames),this.xingWriter.writeUint32(this.context.size),this.xingWriter.seek(this.context.xingFrameSize);const e=this.xingWriter.getWroteBuffer().subarray(this.context.xingOffset+16);e[0]=0;for(let t=1;t<f.W8;t++){let i=t*this.context.pos/f.W8>>>0;const r=256*this.context.bag[i]/this.context.size>>>0;e[t]=Math.min(r,255)}const i=t.ioWriter.getPos();t.ioWriter.seek(this.context.xingFrameOffset),t.ioWriter.writeBuffer(this.xingWriter.getWroteBuffer()),t.ioWriter.seek(i)}writeHeader(t){var e;const i=n()(e=t.streams).call(e,(t=>86017===t.codecpar.codecId));if(this.options.id3v2Version){const e=l.VO(t,this.options.id3v2Version);l.M9(t.ioWriter,this.options.id3v2Version,t.metadataHeaderPadding,w.Ik.extend({apic:e},t.metadata,i.metadata))}return this.options.hasXing&&this.writeXingTag(t),0}writeAVPacket(t,e){if(!c.f[15](e+28))return void w.vF.warn(`packet's size is 0: ${c.f[15](e+32)}, ignore it`,x,393);const i=t.getStreamByIndex(c.f[15](e+32));if(!i||1024&i.disposition)w.vF.warn(`can not found the stream width the packet's streamIndex: ${c.f[15](e+32)}, ignore it`,x,400);else{if(86017===i.codecpar.codecId){if(c.f[20](e+24)&&c.f[15](e+28)>4){g.qg(this.context.frameHeader,c.f[8](c.f[20](e+24)));const i=u.rt.getBitRateByVersionLayerIndex(this.context.frameHeader.version,this.context.frameHeader.layer,this.context.frameHeader.bitrateIndex);this.context.initialBitrate?i!==this.context.initialBitrate&&(this.context.hasVariableBitrate=!0):this.context.initialBitrate=i,this.xingAddFrame(e),t.ioWriter.writeBuffer((0,h.s3)(c.f[20](e+24),c.f[15](e+28)))}return 0}w.vF.warn(`packet's codecId is not mp3: ${c.f[15](e+32)}, ignore it`,x,405)}}writeTrailer(t){if(this.options.hasID3v1){var e;const i=n()(e=t.streams).call(e,(t=>86017===t.codecpar.codecId)),r=w.Ik.extend({},t.metadata,i.metadata),a=new Uint8Array(f.c1),s=new m.ac(a);function o(t){const e=w.Qq.encode(t);s.writeBuffer(e.subarray(0,30)),e.length<30&&s.skip(30-e.length)}s.writeString("TAG"),r.title?o(r.title):s.skip(30),r.artist?o(r.artist):s.skip(30),r.album?o(r.album):s.skip(30),a[127]=255,r.genre&&(a[127]=+r.genre),t.ioWriter.writeBuffer(a)}return this.options.hasXing&&this.updateXing(t),t.ioWriter.flush(),0}flush(t){return t.ioWriter.flush(),0}getCapabilities(){return T.Capabilities}}(0,r.A)(T,"Capabilities",[86017])},11719:(t,e,i)=>{i.d(e,{FN:()=>n,W8:()=>r,c1:()=>a});const r=100,a=128,n=156},28719:(t,e,i)=>{i.d(e,{In:()=>U,M9:()=>O,VO:()=>A,fz:()=>I,hm:()=>y,qg:()=>v});var r=i(9538),a=i.n(r),n=i(50442),s=i.n(n),o=i(18811),c=i.n(o),d=i(31472),g=i.n(d),f=i(5463),l=i.n(f),h=i(42399),p=i.n(h),u=i(53508),w=i(3029),m=i(26367),x=i(46440),b=i(33310),T=i(79531);const k="packages/avformat/src/formats/mp3/id3v2.ts",U={JPG:7,PNG:61,"image/gif":97,"image/jpeg":7,"image/jpg":7,"image/png":61,"image/tiff":96,"image/bmp":78,"image/webp":171},I=["Other","32x32 pixels 'file icon'","Other file icon","Cover (front)","Cover (back)","Leaflet page","Media (e.g. label side of CD)","Lead artist/lead performer/soloist","Artist/performer","Conductor","Band/Orchestra","Composer","Lyricist/text writer","Recording Location","During recording","During performance","Movie/video screen capture","A bright coloured fish","Illustration","Band/artist logotype","Publisher/Studio logotype"];function P(t,e){t.writeUint8(e>>21&127),t.writeUint8(e>>14&127),t.writeUint8(e>>7&127),t.writeUint8(127&e)}function B(t,e){let i="utf-8";return 0===t?i="iso-8859-1":1===t?i="utf-16":2===t&&(i="utf-16be"),new TextDecoder(i).decode(e)}function W(t){return(127&t)+((32512&t)>>1)+((8323072&t)>>2)+((2130706432&t)>>3)}async function S(t,e){await t.seek(e);const i=await t.readString(4);return/^[A-Z0-9]+$/.test(i)}async function v(t,e,i,r){const n=2!==i.version,s=n?10:6;let o=t.getPos()+BigInt(0|e);async function c(){await t.skip(Number(BigInt.asIntN(32,o-t.getPos())))}if(n&&64&a()(i)){let r=await async function(t,e){let i=0;for(;e--;)i=(i<<7)+(127&await t.readUint8());return i}(t,4);if(4===i.version&&(r-=4),r<0)return b.vF.error("invalid extended header length",k,149),await c();if(await t.skip(r),(e-=r+4)<0)return b.vF.error("extended header too long",k,155),await c()}for(;e>s;){let o,c;if(n){if(o=await t.readString(4),c=await t.readUint32(),!c){b.vF.error("invalid frame size",k,168);break}if(4===i.version&&c>127)if(c<e){await t.flush();const e=t.getPos();if(!(1&a()(t)||6+c<t.remainingLength()))break;if(await S(t,e+BigInt(2)+BigInt(W(c))))c=W(c);else if(!await S(t,e+BigInt(2)+BigInt(c)))break;await t.seek(e)}else c=W(c);await t.readUint16()}else o=await t.readString(3),c=await t.readUint24();if("APIC"===o)r.apic||(r.apic=[]),r.apic.push(await t.readBuffer(c));else if("USLT"===o){const e=await t.readUint8(),i=await t.readString(3),a=await t.readBuffer(c-4);r.lyrics=`${i} ${B(e,a)}`}else if("COMM"===o||"COM"===o){const e=await t.readUint8(),i=await t.readString(3),a=await t.readBuffer(c-4);r.comment=`${i} ${B(e,a)}`}else if("PRIV"===o){const e=t.getPos(),i=[];for(;;){const e=await t.readUint8();if(0===e)break;i.push(e)}const a=b.Qq.decode(new Uint8Array(i));let n;n="com.apple.streaming.transportStreamTimestamp"===a?await t.readUint64():await t.readBuffer(c-Number(t.getPos()-e)),r[a]=n}else{let e;switch(e="T"===o[0]?B(await t.readUint8(),await t.readBuffer(c-1)):await t.readBuffer(c),o){case"TIT2":case"TT2":r.title=e;break;case"TPE1":case"TP1":r.artist=e;break;case"TPE2":case"TP2":r.albumArtist=e;break;case"TPOS":r.disc=e;break;case"TCOP":r.copyright=e;break;case"TALB":case"TAL":r.album=e;break;case"TRCK":case"TRK":r.track=e;break;case"TYER":case"TDRL":case"TDRC":r.date=e;break;case"COMM":case"COM":r.comment=e;break;case"TCON":case"TCO":r.genre=e;break;case"TSSE":case"TEN":r.encoder=e;break;case"TCOM":r.composer=e;break;case"TENC":r.vendor=e;break;case"TLAN":r.language=e;break;case"TPE3":case"TP3":r.performer=e;break;case"TPUB":r.publisher=e;break;case"TCMP":case"TCP":r.compilation=e;break;case"TDEN":r.creationTime=e;break;case"TSOA":r.albumSort=e;break;case"TSOP":r.artistSort=e;break;case"TSOT":r.titleSort=e;break;case"TIT1":r.grouping=e;break;default:r[o]=e}}e-=c+s}4==i.version&&16&a()(i)&&(o+=BigInt(10)),await t.skip(Number(BigInt.asIntN(32,o-t.getPos())))}function y(t,e,i){const r=2!==i.version;s()(e).call(e,(e=>{const i=new T.Oo(e),a=i.readUint8();let n;function s(){let t=Number(i.getPos());for(;t<e.length&&e[t];)t++;return t}if(r?(n=i.readString(s()-Number(i.getPos())),i.skip(1)):n=i.readString(3),!U[n])return;const o=i.readUint8();let c;const d=s()-Number(i.getPos());d&&(c=B(a,i.readBuffer(d))),i.skip(1);const g=t.createStream();g.codecpar.codecId=U[n],g.codecpar.codecType=0,g.disposition|=1024,g.attachedPic=(0,x._5)(),w.M[15](g.attachedPic+32,g.index);const f=i.remainingSize(),l=(0,x.sY)(f),h=i.readBuffer(f);(0,m.lW)(l,f,h),h.length>=8&&b.YO.same(h.subarray(0,8),new Uint8Array([137,80,78,71,13,10,26,10]))&&(g.codecpar.codecId=61),(0,x.NX)(g.attachedPic,l,f),w.M[15](g.attachedPic+36,1|u.f[15](g.attachedPic+36)),g.metadata.comment=I[o],c&&(g.metadata.title=c)}))}function O(t,e,i,r){var a;let n=t.getPos();t.writeString("ID3"),t.writeUint8(e),t.writeUint16(0);const o=t.getPos();function d(i,r){const a=b.Qq.encode(r);t.writeString(i),4===e?P(t,a.length+1):t.writeUint32(a.length+1),t.writeUint16(0),t.writeUint8(3),t.writeBuffer(a)}function f(i,r){t.writeString(i),4===e?P(t,r.length):t.writeUint32(r.length),t.writeUint16(0),t.writeBuffer(r)}var l;if(t.writeUint32(0),r.poster&&f("APIC",r.poster),r.apic&&s()(l=r.apic).call(l,(t=>{f("APIC",t)})),r.title&&d("TIT2",r.title),r.artist&&d("TPE1",r.artist),r.albumArtist&&d("TPE2","albumArtist"),r.disc&&d("TPOS",r.disc),r.copyright&&d("TCOP",r.copyright),r.album&&d("TALB",r.album),r.track&&d("TRCK",r.track),r.date&&d("TDRC",r.date),r.comment){let t=r.comment;" "===t[3]&&(t=c()(t).call(t,0,3)+c()(t).call(t,4)),d("COMM",t)}if(r.lyrics){let t=r.lyrics;" "===t[3]&&(t=c()(t).call(t,0,3)+c()(t).call(t,4)),d("USLT",t)}r.genre&&d("TCON",r.genre+""),r.encoder&&d("TSSE",r.encoder),r.composer&&d("TCOM",r.composer),r.vendor&&d("TENC",r.vendor),r.language&&d("TLAN",r.language),r.performer&&d("TPE3",r.performer),r.publisher&&d("TPUB",r.publisher),r.compilation&&d("TCMP",r.compilation),r.creationTime&&d("TDEN",r.creationTime),r.albumSort&&d("TSOA",r.albumSort),r.artistSort&&d("TSOP",r.artistSort),r.titleSort&&d("TSOT",r.titleSort),r.grouping&&d("TIT1",r.grouping),i<10&&(i=10);const h=Number(BigInt.asIntN(32,t.getPos()-n));i>268435455-h&&(i=268435455-h),t.writeBuffer(g()(a=new Uint8Array(i)).call(a,0)),n=t.getPos(),t.seek(o),P(t,h),t.seek(n)}function A(t,e){var i;const r=[],a=new T.Rs,n=[];a.onFlush=t=>(n.push(c()(t).call(t)),0);const o=2!==e;return s()(i=t.streams).call(i,(t=>{if(1024&t.disposition&&(o&&(7===t.codecpar.codecId||61===t.codecpar.codecId||96===t.codecpar.codecId||97===t.codecpar.codecId||171===t.codecpar.codecId||78===t.codecpar.codecId)||!o&&(61===t.codecpar.codecId||7===t.codecpar.codecId))&&t.attachedPic){n.length=0,a.writeUint8(3),o?(a.writeString(l()(b.Ik).call(b.Ik,U)[t.codecpar.codecId]),a.writeUint8(0)):61===t.codecpar.codecId?a.writeString("PNG"):a.writeString("JPG");let e=0;t.metadata.comment&&p()(I).call(I,t.metadata.comment)>-1&&(e=p()(I).call(I,t.metadata.comment)),a.writeUint8(e),t.metadata.description&&a.writeString(t.metadata.description),a.writeUint8(0),a.writeBuffer((0,x.iI)(t.attachedPic)),a.flush(),r.push((0,b.O$)(Uint8Array,n))}})),r}}}]);
|