textalive-app-api - v0.5.2
    Preparing search index...

    Interface IPlayer

    IPlayer

    Player の機能を抽象化したインタフェースです。

    This interface provides abstraction of the Player features.

    interface IPlayer {
        app: IPlayerApp;
        banner: IPlayerBanner;
        data: IDataLoader;
        fps: number;
        isLoading: boolean;
        isPlaying: boolean;
        isVideoSeeking: boolean;
        mediaBannerElement: HTMLElement;
        mediaElement: HTMLElement;
        mediaPosition: number;
        mediaSourceElement: HTMLElement;
        options: PlayerOptions;
        timer: Timer;
        video: IVideo;
        videoPosition: number;
        volume: number;
        wait: number;
        addListener(listener: PlayerListener): void;
        createFromCardData(
            entry: JsonDataEntry,
            options?: PlayerVideoOptions,
        ): Promise<IVideo>;
        createFromCardUrl(
            cardUrl: string,
            options?: PlayerVideoOptions,
        ): Promise<IVideo>;
        createFromJSON(
            json: VideoData,
            options?: PlayerVideoOptions,
        ): Promise<IVideo>;
        createFromSongPath(
            songPath: string,
            options?: PlayerVideoOptions,
        ): Promise<IVideo>;
        createFromSongUrl(
            songUrl: string,
            options?: PlayerVideoOptions,
        ): Promise<IVideo>;
        createFromText(text: string, options?: PlayerVideoOptions): Promise<IVideo>;
        dispose(): void;
        endVideoSeek(): void;
        exportJsonDataEntry(): JsonDataEntry;
        findBeat(time: number, options?: FindTimedObjectOptions): IBeat;
        findBeatChange(
            startTime: number,
            endTime: number,
        ): TimedObjectsInRange<IBeat>;
        findChord(time: number, options?: FindTimedObjectOptions): IChord;
        findChordChange(
            startTime: number,
            endTime: number,
        ): TimedObjectsInRange<IChord>;
        findChorus(
            time: number,
            options?: FindTimedObjectOptions,
        ): IRepetitiveSegment;
        findChorusBetween(startTime: number, endTime: number): IRepetitiveSegment;
        findChorusChange(
            startTime: number,
            endTime: number,
        ): TimedObjectsInRange<IRepetitiveSegment>;
        getBeats(): IBeat[];
        getChords(): IChord[];
        getChoruses(): IRepetitiveSegment[];
        getMaxVocalAmplitude(): number;
        getMedianValenceArousal(): ValenceArousalValue;
        getValenceArousal(time: number): ValenceArousalValue;
        getVocalAmplitude(time: number): number;
        removeListener(listener: PlayerListener): boolean;
        requestMediaSeek(position: number): boolean;
        requestPause(): boolean;
        requestPlay(): boolean;
        requestStageUpdate(): Promise<number>;
        requestStop(): boolean;
        setVideoPosition(position: number): Promise<number>;
        startVideoSeek(): void;
    }

    Implemented by

    Index

    リリックアプリの状態

    Lyric app status

    banner: IPlayerBanner

    Player の情報を表示する IPlayerBanner インスタンスです。

    A banner instance that shows the player info.

    読み込み済みの音楽地図など楽曲に関する情報

    Current song map and other information related to the musical piece

    fps: number

    フレームレート [フレーム数/秒]

    Framerate [frames per sec]

    isLoading: boolean

    動画(楽曲情報や歌詞など)が読み込み中か否か

    Whether the video (song, lyrics, etc.) is being loaded or not

    isPlaying: boolean

    動画再生中か否か

    Whether the video is being played or not

    isVideoSeeking: boolean

    動画シーク中か否か

    Whether the seeking operation is ongoing on or not

    mediaBannerElement: HTMLElement

    音源などに関するバナーの配置先となるDOM要素

    Media banner element

    mediaElement: HTMLElement

    音源メディアの配置先となるDOM要素

    Media element

    mediaPosition: number

    現在の音源メディアの再生位置 [ms]

    Current media position [ms]

    mediaSourceElement: HTMLElement

    音源メディアの直接の配置先となるDOM要素

    Media source element

    options: PlayerOptions

    プレイヤーの初期化オプション

    Player options

    timer: Timer

    Player の音源の再生状態を管理する Timer インスタンスです。

    A timer instance that controls the player status.

    video: IVideo

    動画オブジェクト

    Current video object

    videoPosition: number

    現在の動画の再生位置 [ms]

    Current video position [ms]

    volume: number

    音量 [0-100]

    Volume [0-100]

    wait: number

    動画の描画間隔 [ms]

    A time window between rendering frames [ms]

    • イベントリスナを登録する

      Add event listener

      Parameters

      Returns void

    • 解決済みのカードデータから動画データを生成する

      Generate video data from resolved card data represented as JsonDataEntry.

      Parameters

      • entry: JsonDataEntry

        解決済みカードデータ / Resolved card data

      • Optionaloptions: PlayerVideoOptions

        オプション / Optional data to build the video object

      Returns Promise<IVideo>

    • カードURLから解決済みデータを取得して動画データを生成する

      Fetch resolved card data from a URL and generate video data.

      Parameters

      • cardUrl: string

        JsonDataEntryを返すカードURL / Card URL returning JsonDataEntry

      • Optionaloptions: PlayerVideoOptions

        オプション / Optional data to build the video object

      Returns Promise<IVideo>

    • 動画情報を表すデータ(VideoData)から動画データを生成する

      Generate video data from JSON

      Parameters

      • json: VideoData

        動画情報 / JSON data to be converted to a video

      • Optionaloptions: PlayerVideoOptions

        オプション / Optional data to build the video object

      Returns Promise<IVideo>

      動画オブジェクト / Video object

    • 楽曲パス(URLから http:// などのプロトコル部分を除いたもの)に基づいて音楽地図などを読み込み、動画データを生成する

      Generate video data from song path

      Parameters

      • songPath: string

        楽曲パス / Song path

      • Optionaloptions: PlayerVideoOptions

        オプション / Optional data to build the video object

      Returns Promise<IVideo>

      動画オブジェクト / Video object

    • 楽曲URLをTextAlive APIでカードデータへ解決し、音楽地図などを読み込んで動画データを生成する

      Resolve a song URL through the TextAlive API and generate video data. Unsupported public URLs fall back to the direct provider path.

      Parameters

      • songUrl: string

        楽曲URL / Song URL

      • Optionaloptions: PlayerVideoOptions

        オプション / Optional data to build the video object

      Returns Promise<IVideo>

      動画オブジェクト / Video object

    • テキストからダミーの音楽地図情報と動画データを生成する

      Generate video data from text

      Parameters

      • text: string

        テキスト / Text to show

      • Optionaloptions: PlayerVideoOptions

        オプション / Optional data to build the video object

      Returns Promise<IVideo>

      動画オブジェクト / Video object

    • プレイヤーを破棄する

      Dispose this player

      Returns void

    • 指定された位置のビート情報を取得する

      Find beat that overlaps with the specified timing

      Parameters

      • time: number

        位置 [ms] / Position [ms]

      • Optionaloptions: FindTimedObjectOptions

        取得オプション / Optional parameters for finding beat

      Returns IBeat

      ビート情報(見つからなければ null) / Beat info (null if not found)

    • 指定された時区間のビート情報の変化を取得する

      Look for beat transitions in the specified time range

      Parameters

      • startTime: number

        時区間の開始位置 [ms] / Start position [ms]

      • endTime: number

        時区間の終了位置 [ms] / End position [ms]

      Returns TimedObjectsInRange<IBeat>

      ビート情報の変化 / Beat transitions

    • 指定された位置のコード進行を取得する

      Find chord that overlaps with the specified timing

      Parameters

      • time: number

        位置 [ms] / Position [ms]

      • Optionaloptions: FindTimedObjectOptions

        探索オプション / Optional parameters for finding chord

      Returns IChord

      コード進行(見つからなければ null) / Chord info (null if not found)

    • 指定された時区間のコード進行の変化を取得する

      Look for chord progressions in the specified time range

      Parameters

      • startTime: number

        時区間の開始位置 [ms] / Start position [ms]

      • endTime: number

        時区間の終了位置 [ms] / End position [ms]

      Returns TimedObjectsInRange<IChord>

      コード進行の変化 / Chord progressions

    • 指定された位置のサビ情報を取得する

      Find a chorus part that overlaps with the specified timing

      Parameters

      • time: number

        位置 [ms] / Position [ms]

      • Optionaloptions: FindTimedObjectOptions

        取得オプション / Optional parameters for finding a chorus part

      Returns IRepetitiveSegment

      サビ情報(見つからなければ null) / Chorus part info (null if not found)

    • 指定された時区間のサビ情報の変化を取得する

      Look for chorus part transitions in the specified time range

      Parameters

      • startTime: number

        時区間の開始位置 [ms] / Start position [ms]

      • endTime: number

        時区間の終了位置 [ms] / End position [ms]

      Returns TimedObjectsInRange<IRepetitiveSegment>

      サビ情報の変化 / Chorus part transitions

    • 楽曲中のビートに関する情報を取得する

      Get beats in the current song

      Returns IBeat[]

      ビート情報(見つからなければ空の配列) / Beats (empty array if not found)

    • 楽曲中のコード進行に関する情報を取得する

      Get chord info in the current song

      Returns IChord[]

      コード進行の情報(見つからなければ空の配列) / Chord info (empty array if not found)

    • 楽曲中のサビに関する情報を取得する

      Get chorus parts in the current song

      Returns IRepetitiveSegment[]

      サビ情報(見つからなければ空の配列) / Chorus parts (empty array if not found)

    • イベントリスナを削除する

      Remove event listener

      Parameters

      Returns boolean

      削除の成否 / Whether the listener was successfully removed or not

    • 楽曲の再生位置を指定する

      Seek specified position in the current media

      Parameters

      • position: number

        再生位置 [ms] / Media position [ms]

      Returns boolean

    • 楽曲の再生を一時停止する

      Pause playing music

      Returns boolean

      一時停止の成否

    • 楽曲の再生を開始する

      Start playing music

      Returns boolean

      開始の成否

    • 動画の現在のフレームを強制的に再描画する

      Force rendering current frame

      Returns Promise<number>

      動画の現在位置 [ms] / Video position [ms]

    • 楽曲の再生を停止する(一時停止したうえで先頭に巻き戻しする)

      Stop playing music (pause and then seek the beginning)

      Returns boolean

      停止の成否

    • 動画の再生位置を指定する

      Try setting video position

      Parameters

      • position: number

        再生位置 [ms] / Video position [ms]

      Returns Promise<number>