Skip to main content

KollusPlayerView

KollusPlayerView Class

#import <KollusPlayerView.h>

콘텐츠 재생, 화면 출력 제어, 이벤트 델리게이트 설정 등 플레이어의 모든 기능을 제어하는 핵심 클래스입니다.

Instance Methods

반환 타입메서드
idinitWithContentURL:
idinitWithMediaContentKey:
BOOLprepareToPlayWithMode:error:
BOOLplayWithError:
BOOLpauseWithError:
BOOLstopWithError:
BOOLscroll:error:
BOOLscrollStopWithError:
BOOLzoom:error:
BOOLaddBookmark:value:error:
BOOLremoveBookmark:error:
voidsetNetworkTimeOut:
voidsetBufferingRatio:
BOOLisOpened
BOOLsetSkipPlay
voidchangeBandWidth:
boolsetSubTitlePath:
boolsetSubTitleSubPath:
CGRectgetVideoPosition
CGFloatgetZoomValue
voidsetPauseOnForeground:
voidsetDisableZoomOut:
voidsetDecoder:
voidsetAIRate:

Properties

속성설명
id<KollusPlayerDelegate> delegate플레이어 관련 델리게이트
id<KollusPlayerDRMDelegate> DRMDelegateDRM 정보 관련 델리게이트
id<KollusPlayerLMSDelegate> LMSDelegateLMS 정보 관련 델리게이트
id<KollusPlayerBookmarkDelegate> bookmarkDelegate북마크 관련 델리게이트
KollusStorage * storageKollusStorage 포인터
NSString * contentURL재생할 콘텐츠 URL (Stream Play)
NSString * mediaContentKey재생할 콘텐츠 미디어 콘텐츠 키 (Local Play)
KollusContent * content사용 중인 콘텐츠 정보
BOOL AIRateEnableAI배속 지원 여부
NSTimeInterval currentPlaybackTime콘텐츠 현재 시간
NSTimeInterval liveDuration라이브 타임쉬프트 재생 길이
float currentPlaybackRate콘텐츠 재생 속도
NSArray * bookmarks북마크 정보 배열
KollusPlayerContentMode scalingMode콘텐츠 출력 모드
CGRect playerContentFrame플레이어 화면 영역
KollusPlayerRepeatMode repeatMode전체 반복 모드
BOOL screenConnectEnabled화면 출력 허용 여부
BOOL bookmarkModifyEnabled북마크 수정 권한 여부
BOOL debug디버그 로그 출력 여부
BOOL isPreparedToPlay재생 준비 완료 여부
BOOL isPlaying재생 중 여부
BOOL isBuffering버퍼링 진행 여부
BOOL isSeeking탐색 중 여부
BOOL isScrolling화면 이동 중 여부
BOOL isAudioOnly오디오 콘텐츠 여부
BOOL muteOnStart시작 시 음소거 여부
CGSize naturalSize원본 콘텐츠 영상 크기
BOOL isZoomedIn확대(zoom in) 여부
KollusPlayerType playerType플레이어 타입
NSString * customSkin플레이어 스킨 정보 JSON
KPSection * playSection미리보기 정보
NSInteger nRepeatStartTime반복 재생 시작 시간
NSInteger nRepeatEndTime반복 재생 종료 시간
NSInteger nPlaybackLimitDuration재생 제한 시간
NSString * strPlaybackLimitMessage재생 제한 안내 메시지
BOOL audioBackgroundPlay백그라운드 오디오 파일 재생
BOOL lmsOffDownloadContent다운로드 콘텐츠 LMS 비활성화 여부
NSUInteger proxyPort프록시 서버 포트 번호
BOOL intro인트로 여부
BOOL seekable탐색(Seek) 가능 여부
NSInteger nSecSkip지정 시간(sec) 후 건너뛰기
BOOL isLive라이브 여부
BOOL disablePlayRate배속 컨트롤 비활성화 여부
NSInteger nSeekableEnd탐색 가능한 최대 위치 (sec)
NSString * strCaptionStylePartner Portal에서 설정한 자막 스타일. "bg": 자막 배경 적용, 그 외: 사용자 정의 설정
BOOL forceNScreen강제 이어보기
BOOL ignoreZero이어보기 시간이 0에 가까울 때에도 이어보기 유효로 처리
BOOL isThumbnailEnable섬네일 사용 여부
BOOL isThumbnailSync섬네일 다운로드 방식 (sync, async)
NSString * fpsCertURLFairPlay 인증 URL
NSString * fpsDrmURLFairPlay DRM URL
NSInteger nOfflineBookmarkUse오프라인 북마크 사용 여부
NSInteger nOfflineBookmarkDownload1: 인덱스만 다운로드, 2: 인덱스/북마크 모두 다운로드
NSInteger nOfflineBookmarkReadOnly오프라인 북마크 추가/삭제 사용 여부 (0: 사용(기본값), 1: 사용 안 함)
NSMutableDictionary * chapterInfo챕터 정보 목록
NSString * strVideoWaterMark비디오 워터마크 문자열
NSInteger nVideoWaterMarkAlpha비디오 워터마크 알파 값
NSInteger nVideoWaterMarkFontSize비디오 워터마크 폰트 크기
NSString * strVideoWaterMarkFontColor비디오 워터마크 텍스트 색상
NSInteger nVideoWaterMarkShowTime비디오 워터마크 표시 시간
NSInteger nVideoWaterMarkHideTime비디오 워터마크 숨김 시간
NSString * extraDrmParam동적 DRM 파라미터
NSMutableArray * streamInfoListHLS ABR 정보 목록
KollusChat * kollusChat라이브 채팅 객체
NSInteger nextEpisodeShowTime다음 회차 재생 표시 시간
NSString * nextEpisodeCallbackURL다음 회차 재생 URL
NSMutableDictionary * nextEpisodeCallbackParams다음 회차 재생 파라미터
BOOL nextEpisodeShowButton다음 회차 재생 버튼 표시 여부
NSString *contentProviderKey콘텐츠 제공자 키
NSString *contentProviderName콘텐츠 제공자 이름
BOOL disableBackgroundAudio백그라운드 재생 가능 여부
NSInteger maxPlaybackRate콘텐츠 재생 속도 최댓값
NSMutableArray * listSubTitle자막 파일 리스트
NSMutableArray * listSubTitleSub서브 자막 파일 리스트

Method Details

(BOOL) addBookmark: (NSTimeInterval) position value: (NSString *) value error: (NSError **) error

북마크를 추가합니다. 북마크가 이미 존재하는 경우 덮어씁니다.

파라미터설명
position추가할 시간
value북마크 타이틀
error에러 상세
  • 반환값
    • YES: 가능
    • NO: 불가
(void) changeBandWidth: (int) bandWidth

HLS 재생 중 bandwidth를 변경합니다.

(CGRect) getVideoPosition

현재 비디오의 재생 영역 좌표를 반환합니다.

  • 반환값: 비디오 재생 영역 (CGRect)
(CGFloat) getZoomValue

비디오 출력화면 확대/축소 값

  • 반환값: 출력화면 확대/축소 비율 값
(id) initWithContentURL: (NSString *) url

콘텐츠 URL을 사용하여 플레이어를 생성

파라미터설명
url재생할 콘텐츠 URL
  • 반환값: 생성된 플레이어 ID
(id) initWithMediaContentKey: (NSString *) mck

미디어 콘텐츠 키를 사용하여 플레이어를 생성합니다. 오프라인(다운로드) 콘텐츠 재생 시 사용합니다.

파라미터설명
mck재생할 콘텐츠의 미디어 콘텐츠 키
  • 반환값: 생성된 플레이어 ID
(BOOL) isOpened

플레이어 생성 여부 확인

  • 반환값
    • YES: 생성됨
    • NO: 생성 안 됨
(BOOL) pauseWithError: (NSError **) error

일시정지 (prepareToPlayWithMode:error: 메서드 호출 및 성공한 경우에 사용)

파라미터설명
error에러 상세
  • 반환값
    • YES: 성공
    • NO: 실패
(BOOL) playWithError: (NSError **) error

재생 시작 (prepareToPlayWithMode:error: 메서드 호출 및 성공한 경우에 사용)

파라미터설명
error에러 상세
  • 반환값
    • YES: 성공
    • NO: 실패
(BOOL) prepareToPlayWithMode: (KollusPlayerType) type error: (NSError **) error

콘텐츠 재생 준비 (Kollus 플레이어 or Native)

파라미터설명
type플레이어 타입
error에러 상세
  • 반환값
    • YES: 성공
    • NO: 실패
(BOOL) removeBookmark: (NSTimeInterval) position error: (NSError **) error

북마크 삭제 (북마크 kind가 KollusBookmarkKindIndex인 북마크는 삭제되지 않음)

파라미터설명
position삭제할 북마크 시간
error에러 상세
  • 반환값
    • YES: 삭제 가능
    • NO: 삭제 불가
(BOOL) scroll: (CGPoint) distance error: (NSError **) error

비디오 출력화면을 이동

파라미터설명
distance이동할 거리
error에러 상세
  • 반환값
    • YES: 성공
    • NO: 실패
(BOOL) scrollStopWithError: (NSError **) error

비디오 출력화면 이동 중지 (화면 위치 고정)

파라미터설명
error에러 상세
  • 반환값
    • YES: 성공
    • NO: 실패
(void) setAIRate: (bool) bAIRate

AI배속 사용 설정

파라미터설명
bAIRateYES (기본값): AI배속, NO: 일반 배속
(void) setBufferingRatio: (NSInteger) bufferingRatio

버퍼링 배수 설정 (prepareToPlayWithMode:error: 메서드 호출 및 성공한 경우에 사용. PlayerTypeKollus인 경우에만 적용됩니다.)

파라미터설명
bufferingRatio설정할 버퍼링 배수
(void) setDecoder: (bool) bHW

코덱 설정

파라미터설명
bHWYES (기본값): 하드웨어 코덱, NO: 소프트웨어 코덱
(void) setDisableZoomOut: (BOOL) bDisable

줌 기능에서 축소(zoom out) 동작을 비활성화합니다.

파라미터설명
bDisableNO (기본값): zoom out(축소)기능 활성화, YES: zoom out 기능 비활성화
(void) setNetworkTimeOut: (NSInteger) timeOut

플레이어 네트워크 Timeout 설정

파라미터설명
timeOutTimeout 값 (sec)
(void) setPauseOnForeground: (BOOL) bPause

앱이 포그라운드 상태로 전환될 때 플레이어를 일시정지 상태로 유지할지 설정합니다.

파라미터설명
bPauseNO (기본값): 포그라운드 진입 시 자동 재생(기존과 동일), YES: 포그라운드 진입시 pause 상태로 유지됨. APP에서 필요한 경우 Play 처리 필요
(BOOL) setSkipPlay

재생 목록에서 현재 재생 중인 동영상을 건너뜁니다.

(bool) setSubTitlePath: (char *) path

자막 파일 선택

파라미터설명
path사용할 자막 파일 경로
  • 반환값
    • YES: 성공
    • NO: 실패
(bool) setSubTitleSubPath: (char *) path

서브 자막 파일 선택

파라미터설명
path사용할 자막 파일 경로
  • 반환값
    • YES: 성공
    • NO: 실패
(BOOL) stopWithError: (NSError **) error

재생 중지 (prepareToPlayWithMode:error: 메서드 호출 및 성공한 경우에 사용. PlayerTypeKollus인 경우에만 적용됩니다.)

파라미터설명
error에러 상세
  • 반환값
    • YES: 성공
    • NO: 실패
(BOOL) zoom: (UIPinchGestureRecognizer *) recognizer error: (NSError **) error

비디오 출력화면 확대/축소

파라미터설명
recognizerpinch 줌을 적용할 UIPinchGestureRecognizer 포인터
error에러 상세
  • 반환값
    • YES: 성공
    • NO: 실패

Property Details

속성설명
(BOOL) AIRateEnable
[read, write, nonatomic, unsafe_unretained]
AI배속 지원 여부
(BOOL) audioBackgroundPlay
[read, write, nonatomic, unsafe_unretained]
백그라운드 오디오 파일 재생
(id<KollusPlayerBookmarkDelegate>) bookmarkDelegate
[read, write, nonatomic, weak]
북마크 관련 델리게이트
(BOOL) bookmarkModifyEnabled
[read, nonatomic, unsafe_unretained]
북마크 수정 권한 여부
(NSArray*) bookmarks
[read, write, nonatomic, strong]
북마크 정보 배열
(KollusContent*) content
[read, nonatomic, weak]
사용 중인 콘텐츠 정보
(NSString*) contentURL
[read, write, nonatomic, copy]
재생할 콘텐츠 URL(Stream Play)
(float) currentPlaybackRate
[read, write, nonatomic, unsafe_unretained]
콘텐츠 재생 속도. 10배속까지 지원. 2배속 초과 시 품질 저하 및 오디오/비디오 싱크 문제가 발생할 수 있음.
(NSTimeInterval) currentPlaybackTime
[read, write, nonatomic, unsafe_unretained]
콘텐츠 현재 시간
(NSString*) customSkin
[read, write, nonatomic, copy]
플레이어 스킨 정보 JSON
(BOOL) debug
[read, write, nonatomic, unsafe_unretained]
디버그 로그 출력 여부
(id<KollusPlayerDelegate>) delegate
[read, write, nonatomic, weak]
플레이어 관련 델리게이트
(BOOL) disablePlayRate
[read, nonatomic, unsafe_unretained]
배속 컨트롤 비활성화 여부
(id<KollusPlayerDRMDelegate>) DRMDelegate
[read, write, nonatomic, weak]
DRM 정보 관련 델리게이트
(NSString*) extraDrmParam
[read, write, nonatomic, copy]
동적 DRM 파라미터
(BOOL) forceNScreen
[read, nonatomic, unsafe_unretained]
강제 이어보기
(BOOL) ignoreZero
[read, nonatomic, unsafe_unretained]
이어보기 시간 값이 작을 때에도 이어보기 유효
(NSString*) fpsCertURL
[read, write, nonatomic, copy]
FairPlay 인증 URL
(NSString*) fpsDrmURL
[read, write, nonatomic, copy]
FairPlay DRM URL
(BOOL) intro
[read, nonatomic, unsafe_unretained]
인트로 여부
(BOOL) isAudioOnly
[read, nonatomic, unsafe_unretained]
오디오 콘텐츠 여부
(BOOL) isBuffering
[read, nonatomic, unsafe_unretained]
버퍼링 진행 여부
(BOOL) isLive
[read, nonatomic, unsafe_unretained]
라이브 여부
(BOOL) isPlaying
[read, nonatomic, unsafe_unretained]
재생 중 여부
(BOOL) isPreparedToPlay
[read, nonatomic, unsafe_unretained]
재생 준비 완료 여부
(BOOL) isScrolling
[read, nonatomic, unsafe_unretained]
화면 이동 중 여부
(BOOL) isSeeking
[read, nonatomic, unsafe_unretained]
탐색 중 여부
(BOOL) isThumbnailEnable
[read, nonatomic, unsafe_unretained]
섬네일 사용 여부
(BOOL) isThumbnailSync
[read, nonatomic, unsafe_unretained]
섬네일 다운로드 방식(sync, async)
(BOOL) isZoomedIn
[read, nonatomic, unsafe_unretained]
확대(zoom in) 여부
(KollusChat*) kollusChat
[read, write, nonatomic, assign]
라이브 채팅 객체
(NSMutableArray*) listSubTitle
[read, nonatomic, assign]
자막 파일 리스트
(NSMutableArray*) listSubTitleSub
[read, nonatomic, assign]
서브 자막 파일 리스트
(NSTimeInterval) liveDuration
[read, nonatomic, unsafe_unretained]
라이브 타임쉬프트 재생 길이
(id<KollusPlayerLMSDelegate>) LMSDelegate
[read, write, nonatomic, weak]
LMS 정보 관련 델리게이트
(BOOL) lmsOffDownloadContent
[read, write, nonatomic, unsafe_unretained]
다운로드 콘텐츠 LMS 비활성화 여부
(NSString*) mediaContentKey
[read, write, nonatomic, assign]
재생할 콘텐츠의 미디어 콘텐츠 키(Local Play)
(BOOL) muteOnStart
[read, nonatomic, unsafe_unretained]
시작 시 음소거 여부
(CGSize) naturalSize
[read, nonatomic, unsafe_unretained]
원본 콘텐츠 영상 크기
(NSMutableDictionary*) nextEpisodeCallbackParams
[read, nonatomic, assign]
다음 회차 재생 파라미터
(NSString*) nextEpisodeCallbackURL
[read, nonatomic, copy]
다음 회차 재생 URL
(NSInteger) nextEpisodeShowTime
[read, nonatomic, unsafe_unretained]
다음 회차 재생 표시 시간
(BOOL) nextEpisodeShowButton
[read, nonatomic, unsafe_unretained]
다음 회차 재생 버튼 표시 여부
(NSString *) contentProviderKey
[read, nonatomic, copy]
콘텐츠 제공자 키
(NSString *) contentProviderName
[read, nonatomic, copy]
콘텐츠 제공자 이름
(BOOL) disableBackgroundAudio
[read, nonatomic, unsafe_unretained]
백그라운드 재생 가능 여부
(NSInteger) maxPlaybackRate
[read, nonatomic, unsafe_unretained]
콘텐츠 재생 속도 최댓값
(NSInteger) nOfflineBookmarkDownload
[read, nonatomic, unsafe_unretained]
1: 인덱스만 다운로드, 2: 인덱스/북마크 모두 다운로드
(NSInteger) nOfflineBookmarkReadOnly
[read, nonatomic, unsafe_unretained]
오프라인 북마크 추가/삭제 사용 여부 (0: 사용(기본값), 1: 사용 안 함)
(NSInteger) nOfflineBookmarkUse
[read, nonatomic, unsafe_unretained]
오프라인 북마크 사용 여부. 다운로드 콘텐츠에만 적용 (0: 사용 안 함, 1: 사용)
(NSInteger) nRepeatEndTime
[read, nonatomic, unsafe_unretained]
반복 재생 종료 시간
(NSInteger) nRepeatStartTime
[read, nonatomic, unsafe_unretained]
반복 재생 시작 시간
(NSInteger) nPlaybackLimitDuration
[read, nonatomic, unsafe_unretained]
재생 제한 시간
(NSString *) strPlaybackLimitMessage
[read, nonatomic, copy]
재생 제한 안내 메시지
(NSInteger) nSecSkip
[read, nonatomic, unsafe_unretained]
지정 시간(sec) 후 건너뜁니다
(NSInteger) nSeekableEnd
[read, nonatomic, unsafe_unretained]
탐색(Seek) 가능한 최댓값 (sec). seekable이 false일 때만 적용. -1: 탐색 불가
(NSInteger) nVideoWaterMarkAlpha
[read, nonatomic, unsafe_unretained]
비디오 워터마크 알파 값
(NSInteger) nVideoWaterMarkFontSize
[read, nonatomic, unsafe_unretained]
비디오 워터마크 폰트 크기
(NSInteger) nVideoWaterMarkHideTime
[read, nonatomic, unsafe_unretained]
비디오 워터마크 숨김 시간
(NSInteger) nVideoWaterMarkShowTime
[read, nonatomic, unsafe_unretained]
비디오 워터마크 표시 시간
(CGRect) playerContentFrame
[read, write, nonatomic, unsafe_unretained]
플레이어 화면 영역
(KollusPlayerType) playerType
[read, nonatomic, assign]
플레이어 타입
(KPSection*) playSection
[read, write, nonatomic, assign]
미리보기 정보
(NSUInteger) proxyPort
[read, write, nonatomic, unsafe_unretained]
프록시 서버 포트 번호
(KollusPlayerRepeatMode) repeatMode
[read, write, nonatomic, unsafe_unretained]
전체 반복 모드
(KollusPlayerContentMode) scalingMode
[read, write, nonatomic, unsafe_unretained]
콘텐츠 출력 모드
(BOOL) screenConnectEnabled
[read, nonatomic, unsafe_unretained]
화면 출력 허용 여부
(BOOL) seekable
[read, nonatomic, unsafe_unretained]
탐색(Seek) 가능 여부
(KollusStorage*) storage
[read, write, nonatomic, weak]
KollusStorage 포인터
(NSString*) strCaptionStyle
[read, nonatomic, copy]
Partner Portal에서 설정한 자막 스타일. "bg": 자막 배경 적용, 그 외: 사용자 정의 설정
(NSMutableArray*) streamInfoList
[read, nonatomic, assign]
HLS ABR 정보 목록
(NSString*) strVideoWaterMark
[read, nonatomic, copy]
비디오 워터마크에 표시할 문자열
(NSString*) strVideoWaterMarkFontColor
[read, nonatomic, copy]
비디오 워터마크 텍스트 색상