내용으로 건너뛰기

반복 설정 옵션

GitHub

Capgo의 AI 보조 설치를 사용하여 플러그인을 설치할 수 있습니다. AI 도구에 다음 명령어를 사용하여 Capgo 기능을 추가하세요:

터미널 창
npx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-plugins

다음과 같은 프롬프트를 사용하세요:

Use the `capacitor-plugins` skill from `Cap-go/capgo-skills` to install the `@capgo/capacitor-youtube-player` plugin in my project.

만약 Manual Setup을 선호한다면, 플러그인을 설치하기 위해 다음 명령어를 실행하고 아래의 플랫폼별 지침을 따르세요:

터미널 창
bun add @capgo/capacitor-youtube-player
bunx cap sync
import { YoutubePlayer } from '@capgo/capacitor-youtube-player';

메인 웹뷰에서 YouTube Referer 차단을 고치기

메인 웹뷰에서 YouTube Referer 차단을 고치기

YouTube가 플러그인 내에서 작동하는 경우 동일한 앱이 YouTube 페이지, 임베드, 또는 API를 통해 메인 웹뷰를 통해 작동하지 않는다면 Capacitor의 메인 웹뷰를 통해 Capacitor의 메인 웹뷰를 활성화하여 patchRefererHeader Capacitor의 구성에서

Capacitor가 동기화/업데이트 시 플러그인이 Capacitor를 패치하여 유효한 Referer 헤더를 포함하는 YouTube 요청을 포함하도록 함

{
"plugins": {
"YoutubePlayer": {
"patchRefererHeader": true,
"refererHeader": "https://www.youtube.com"
}
}
}
  • youtube.com, youtube-nocookie.com, youtu.be
  • 요청만 영향을 받습니다. Referer header 그들의 원래 값을 유지합니다.
  • refererHeader 는 선택 사항이며 기본값이 https://www.youtube.com.
  • Capacitor 8.x iOS 및 Android 플랫폼에 설치된 경우 지원됩니다.

API 개요

API 개요

새로운 YouTube 플레이어 인스턴스를 초기화합니다.

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.initialize({
playerId: 'my-player',
videoId: 'dQw4w9WgXcQ',
playerSize: { width: 640, height: 360 },
privacyEnhanced: true
});

클립보드에 복사

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.destroy({} as PlayerIdOptions);

비디오 재생을 중단하고 로딩을 취소합니다. 이 메서드를 사용할 때는 pauseVideo()를 사용하는 것을 권장합니다.

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.stopVideo({} as PlayerIdOptions);

현재 큐드 또는 로드된 비디오를 재생합니다. 마지막 플레이어 상태는 PLAYING (1)가 됩니다.

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.playVideo({} as PlayerIdOptions);

현재 재생 중인 비디오를 일시 정지합니다. 마지막 플레이어 상태는 PAUSED (2)가 됩니다. 이미 ENDED (0) 상태라면 그대로 유지됩니다.

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.pauseVideo({} as PlayerIdOptions);

비디오의 특정 시간으로 이동합니다. 플레이어가 일시 정지 상태라면 그 상태를 유지하고, 재생 중이라면 계속 재생합니다.

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.seekTo({} as SeekToOptions);

YouTube ID를 사용하여 비디오를 로드하고 재생합니다.

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.loadVideoById({} as VideoByIdMethodOptions);

ID를 사용하여 비디오를 큐합니다. (재생하지 않음). 썸네일을 로드하고 플레이어를 준비하지만, playVideo()가 호출될 때까지 비디오를 요청하지 않습니다.

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.cueVideoById({} as VideoByIdMethodOptions);

URL을 사용하여 비디오를 로드하고 재생합니다.

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.loadVideoByUrl({} as VideoByUrlMethodOptions);

URL을 사용하여 비디오를 큐합니다 (재생하지 않음).

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.cueVideoByUrl({} as VideoByUrlMethodOptions);

cuePlaylist

__CAPGO_KEEP_0__

__CAPGO_KEEP_1__

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.cuePlaylist({} as PlaylistMethodOptions);

loadPlaylist

__CAPGO_KEEP_0__

__CAPGO_KEEP_1__

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.loadPlaylist({} as PlaylistMethodOptions);

__CAPGO_KEEP_1__

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.nextVideo({} as PlayerIdOptions);

previousVideo

__CAPGO_KEEP_0__

__CAPGO_KEEP_1__

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.previousVideo({} as PlayerIdOptions);

Play a specific video in the playlist by index.

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.playVideoAt({} as PlayVideoAtOptions);

Mute the player audio.

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.mute({} as PlayerIdOptions);

Unmute the player audio.

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.unMute({} as PlayerIdOptions);

Check if the player is currently muted.

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.isMuted({} as PlayerIdOptions);

__CAPGO_KEEP_1__

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.setVolume({} as SetVolumeOptions);

__CAPGO_KEEP_3__

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.getVolume({} as PlayerIdOptions);

__CAPGO_KEEP_0__

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.setSize({} as SetSizeOptions);

getPlaybackRate

__CAPGO_KEEP_2__

__CAPGO_KEEP_0__

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.getPlaybackRate({} as PlayerIdOptions);

재생 속도 설정

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.setPlaybackRate({} as SetPlaybackRateOptions);

현재 비디오의 재생 속도 목록을 가져옵니다.

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.getAvailablePlaybackRates({} as PlayerIdOptions);

반복 재생을 설정합니다. 반복이 활성화되면 마지막 비디오 후에 플레이리스트는 시작부터 다시 시작합니다.

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.setLoop({} as SetLoopOptions);

셔플 재생을 설정합니다.

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.setShuffle({} as SetShuffleOptions);

getVideoLoadedFraction

getVideoLoadedFraction 섹션

비디오가 버퍼링 된 비율을 가져옵니다. 더욱 신뢰할 수 있는 getVideoBytesLoaded/getVideoBytesTotal.

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.getVideoLoadedFraction({} as PlayerIdOptions);

getPlayerState

getPlayerState 섹션

현재 플레이어 상태를 가져옵니다.

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.getPlayerState({} as PlayerIdOptions);

getAllPlayersEventsState

getAllPlayersEventsState 섹션

모든 활성 플레이어의 이벤트 상태를 가져옵니다. 여러 플레이어 인스턴스를 추적하는 데 유용합니다.

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.getAllPlayersEventsState();

getCurrentTime

getCurrentTime 섹션

현재 재생 위치(초)를 가져옵니다.

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.getCurrentTime({} as PlayerIdOptions);

fullscreen 모드를 켜거나 끕니다.

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.toggleFullScreen({} as ToggleFullScreenOptions);

현재 재생 품질을 가져옵니다.

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.getPlaybackQuality({} as PlayerIdOptions);

setPlaybackQuality

playback quality 설정

네트워크 조건에 따라 실제 품질이 다를 수 있습니다.

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.setPlaybackQuality({} as SetPlaybackQualityOptions);

getAvailableQualityLevels

quality level 가져오기

현재 비디오의 품질 레벨 목록을 가져옵니다.

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.getAvailableQualityLevels({} as PlayerIdOptions);

현재 비디오의 길이를 초 단위로 가져옵니다.

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.getDuration({} as PlayerIdOptions);

현재 비디오의 YouTube.com URL을 가져옵니다.

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.getVideoUrl({} as PlayerIdOptions);

현재 비디오의 임베드 code를 가져옵니다. HTML iframe 임베드 code를 반환합니다.

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.getVideoEmbedCode({} as PlayerIdOptions);

현재 플레이 리스트의 비디오 ID 배열을 가져옵니다.

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.getPlaylist({} as PlayerIdOptions);

getPlaylistIndex

getPlaylistIndex 섹션

현재 재생 중인 비디오의 플레이 리스트 인덱스를 가져옵니다.

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.getPlaylistIndex({} as PlayerIdOptions);

플레이어의 iframe DOM 요소를 가져옵니다. (웹 플랫폼 전용)

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.getIframe({} as PlayerIdOptions);

addEventListener

addEventListener 섹션

이벤트 리스너를 플레이어에 추가합니다. (웹 플랫폼 전용)

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
YoutubePlayer.addEventListener({
playerId: 'my-player',
eventName: 'onStateChange',
listener: (event) => {
console.log('Player state:', event.data);
},
});

removeEventListener

removeEventListener 섹션

이벤트 리스너를 플레이어에서 제거합니다. (웹 플랫폼 전용)

import { YoutubePlayer } from '@capgo/capacitor-youtube-player';
await YoutubePlayer.removeEventListener({} as PlayerEventListenerOptions<TEvent>);

PlayerIdOptions

PlayerIdOptions 섹션
export interface PlayerIdOptions {
playerId: string;
}
export interface SeekToOptions extends PlayerIdOptions {
playerId: string;
seconds: number;
allowSeekAhead: boolean;
}

VideoByIdMethodOptions

VideoByIdMethodOptions 섹션
export interface VideoByIdMethodOptions extends PlayerIdOptions {
playerId: string;
options: IVideoOptionsById;
}

VideoByUrlMethodOptions

VideoByUrlMethodOptions 섹션
export interface VideoByUrlMethodOptions extends PlayerIdOptions {
playerId: string;
options: IVideoOptionsByUrl;
}

PlaylistMethodOptions

PlaylistMethodOptions 섹션
export interface PlaylistMethodOptions extends PlayerIdOptions {
playerId: string;
playlistOptions: IPlaylistOptions;
}
export interface PlayVideoAtOptions extends PlayerIdOptions {
playerId: string;
index: number;
}
export interface SetVolumeOptions extends PlayerIdOptions {
playerId: string;
volume: number;
}
export interface SetSizeOptions extends PlayerIdOptions {
playerId: string;
width: number;
height: number;
}
export interface SetPlaybackRateOptions extends PlayerIdOptions {
playerId: string;
suggestedRate: number;
}
export interface SetLoopOptions extends PlayerIdOptions {
playerId: string;
loopPlaylists: boolean;
}
export interface SetShuffleOptions extends PlayerIdOptions {
playerId: string;
shufflePlaylist: boolean;
}

ToggleFullScreenOptions

ToggleFullScreenOptions 섹션
export interface ToggleFullScreenOptions extends PlayerIdOptions {
playerId: string;
isFullScreen: boolean | null | undefined;
}

실질적인 출처

실질적인 출처 섹션

이 페이지는 플러그인의 src/definitions.ts공개 API이 업스트림에서 변경될 때 다시 싱크를 실행하세요.

Getting Started에서 계속

Getting Started 섹션

Capgo를 사용 중이라면 Getting Started 대시보드와 API 운영을 계획하고 싶다면 Using @capgo/capacitor-youtube-player 자연스러운 기능을 사용하는 데 @capgo/capacitor-youtube-player API 개요 API 구현 세부 정보 소개 __CAPGO_KEEP_0__ 키 API 키 구현 세부 정보 for the implementation detail in API Keys, and 기기 구현 세부 정보 편집 페이지