iOS Release Note
2.3.32
Released date: 2025-12-30
Added Features
컨텐츠 다운로드 이벤트 데이터 전송
변경이유 : QoE 데이터 수집
영향범위 : No
App 변경 여부 : No
2.3.31
Released date: 2025-12-10
Added APIs
“Chapter.h” 추가
/// 챕터 Dictionary
@interface ChapterDict : NSObject
/// 챕터 언어
@property (nonatomic, retain) NSString* strLanguage;
/// 챕터 리스트
@property (nonatomic, retain) NSMutableArray* listChapter;/// 챕터 내용
@interface Chapter : NSObject
/// 챕터 위치
@property (nonatomic, unsafe_unretained) NSTimeInterval position;
/// 문자
@property (nonatomic, retain) NSString *value;변경이유 : 챕터 정보를 넣어 영상을 쉽게 탐색
영향범위 : No
App 변경 여부 : No
"KollusPlayerView.h" 에서
/// Chapter 정보 리스트
@property (nonatomic, readonly) NSMutableDictionary* chapterInfo;변경이유 : 챕터 정보를 넣어 영상을 쉽게 탐색
영향범위 : No
App 변경 여부 : No
App에서 사용 예제 :
func kollusPlayerView(_ kollusPlayerView: KollusPlayerView!, prepareToPlayWithError error: Error!) 이후에 적용
함수 func setChapterInfo() 참조
if let chapterInfo = playerView.chapterInfo as? [String: ChapterDict] { if chapterInfo.keys.contains("default_language_code") { NLog("챕터 언어에 \(String(describing: "default")) 값이 존재합니다.") chapterList = chapterInfo["default_language_code"]?.listChapter as! [Chapter] } else { NLog("챕터 언어에 default 값이 없습니다.") } NLog("chapterList : \(chapterList)") for chapter in chapterList { let value = (Float(chapter.position))/Float(data!.duration) controlView.sliderView.addChapter(value: value) } }
Fixed
Live 재생 시 play callback으로 tv out 설정 오류 수정
변경이유 : 오류 수정
영향범위 : No
App 변경 여부 : No
2.3.30
Released date: 2025-11-10
Added APIs
"KollusPlayerView.h" 에서
/// Content Provider Key
@property (nonatomic) NSString *contentProviderKey;
변경이유 : 사용자 행동 분석 action stats에서 데이터의 활용(KollusPlayer only)
영향범위 : No
App 변경 여부 : No
Added Features
Kollus Edge에서 다운로드 시 keep-alive 적용
변경이유 : network connect에 소모되는 시간 및 리소스를 절약
영향범위 : No
App 변경 여부 : No
network api 신규 필드 추가 및 timestamp 변경
변경이유 : 수집된 QoE 데이터 활용
영향범위 : No
App 변경 여부 : No
action stats api에 cpk 필드 추가
변경이유 : 사용자 행동 분석 action stats에서 데이터의 활용성을 높임
영향범위 : No
App 변경 여부 : No
2.3.29
Released date: 2025-10-27
Added Features
사용자 행동분석 데이터 전송 on/off (KollusPlayer only)
변경이유 : SDK 사용고객 해당없음, 고객별로 사용자 행동분석 데이터 전송을 on/off 하는 시나리오가 추가
영향범위 : No
App 변경 여부 : No
UserAgent의 device type 상세 구분
변경이유 : device별 hit 구분
영향범위 : No
App 변경 여부 : No
다운로드 요청시 DRM Callback 응답 내 고객사에서 설정한 메세지 미노출 수정
변경이유 : 컨텐츠 다운로드 요청 시, DRM Callback 응답을 false로 했을 때, 설정되어 있는 message로 노출
영향범위 : No
App 변경 여부 : No
2.3.28
Released date: 2025-08-12
Added Features
PIP 모드 재생 시 녹화 방지
변경이유 : PIP 모드 재생 시 녹화 방지
영향범위 : No
App 변경 여부 : No
2.3.27
Released date: 2025-08-06
Added Features
Live 재생중 알려진 블랙 스크린 발생시 에러코드 및 에러 리포트
변경이유 : 블랙 스크린 발생 파악
영향범위 : No
App 변경 여부 : No
2.3.26
Released date: 2025-06-24
Added Features
네트워크 품질 모니터링
변경이유 : 네트워크 품질 수집
영향범위 : No
App 변경 여부 : No
2.3.25
Released date: 2025-06-05
Added APIs
“KollusStorage.h" 에서
/// Kollus SDK 스토리지 폴더 설정 : 하위 폴더로 kollus 생성
@property (nonatomic, copy, readonly) NSString *storagePath;
(BOOL)setKollusPath:(NSString *)path;
변경이유 : SDK 스토리지 지정 폴더 API추가
영향범위 : No
App 변경 여부 : No
App에서 사용 예제
(BOOL)startStorage:(NSError**)error; 호출 전에 사용
storage = KollusStorage() let dateString = "2025/12/31" storage.applicationKey = "4172322ee271bxxxxxxxxxxx…..2880b2411" storage.applicationBundleID = "com.example.KollusPlayer" let paths = NSSearchPathForDirectoriesInDomains(.libraryDirectory, .userDomainMask, true) storage.setKollusPath(paths.first) try storage.start()
경고 : 이 메서드는 신규 앱에서만 사용해야 됨. 그렇지 않으면 기존 download된 컨텐츠는 볼 수 없음
startStorage 함수를 호출 전에 사용해야 됨 default path로 Documnet 폴더를 사용
2.3.24
Released date: 2025-05-15
Added APIs
“SubTitleInfo.h" 에서
/// AI 자막 여부
@property (nonatomic) BOOL isAISubtitles;
변경이유 : AI자막여부를 확인할 수 있는 API추가
영향범위 : No
App 변경 여부 : No
2.3.23
Released date: 2025-03-25
Added APIs
"KollusPlayerView.h" 에서
/// Content Provider Name
@property (nonatomic) NSString *contentProviderName;
변경이유 : 고객사 이름 제공
영향범위 : No
App 변경 여부 : No
/// 백그라운드 재생 가능 여부
@property (nonatomic, unsafe_unretained, readonly) BOOL disableBackgroundAudio;
변경이유 : 백그라운드 상태에서 컨텐츠 재생 여부
영향범위 : No
App 변경 여부 : No
2.3.22
Released date: 2025-02-25
Added Features
KollusSDK 에러수집 고도화
변경 이유 : Player 초기화 이전에 발생하는 에러 수집 목적
영향 범위 : No
App 변경 여부 : No
Fixed
HW Decoder 사용 시 Background에서 일시정지 상태로 Foreground로 전환시 currentPlaybackTime 오류 수정
변경 이유 : 오류 수정
영향 범위 : No
App 변경 여부 : No
HW Decoder 로 재생 중 재생을 종료하면서 백그라운드 진입 시 앱 충돌 현상 수정
변경 이유 : 오류 수정
영향 범위 : No
App 변경 여부 : No
2.3.21
Released date: 2025-02-06
Added Features
iOS KollusPlayer SDK 지원 최소 OS : iOS 15.0 부터 지원
변경 이유 : Xcode16에서는 on-device debugging이 iOS15부터 지원함
영향 범위 : YES(iOS15 미만 단말에서는 지원하지 않음)
App 변경 여부 : YES(Xcode 설정에서 Minmum Deployments를 최소 15.0으로 변경해야 함)
Fixed
iOS HLS 스트리밍 재생시 m3u8 header 부분에 Last-modified 확인하는 부분 제거
변경 이유 : On the fly 방식으로 HLS를 스트리밍하는 경우 header 부분에 Last-modified 정보가 포함되지 않아 재생 불가 상태임
영향 범위 : No
App 변경 여부 : No
2.3.20
Released date: 2025-01-14
Added APIs
"KollusPlayerView.h" 에서
/// 다음 회차 재생 Show Button
@property (nonatomic, unsafe_unretained, readonly) BOOL nextEpisodeShowButton;
변경이유 : 다음회차 자동재생 설정이 On인 경우라도 media_info option에 따라 [다음회] 버튼을 show/hide 처리
영향범위 : No(해당 flag 값을 필요로 하는 고객사에만 적용 필요)
App 변경 여부 : No(해당 flag 값을 필요로 하는 고객사에만 적용 필요)
Deleted APIs
"KollusPlayerView.h" 에서
/// Audio water mark 여부
@property (nonatomic, unsafe_unretained, readonly) BOOL isWaterMark;
변경이유 : AWT(Audio watermark) EOL 선언 & 현재 사용고객이 없는 상태임.
영향범위 : No
App 변경 여부 : No
Added Features
debug SDK 사용시 UI 구분
Debug용 SDK를 사용하여 App을 build 한 경우 사용자가 인지할 수 있도록 UI를 추가. (Debug 문자를 영상 상단에 표시)
변경이유 : Debug용 SDK를 배포 App에 적용되는 것을 방지
영향범위 : No
App 변경 여부 : No
컨텐츠별 미디어인포 복호화 키 적용
콘텐츠별 미디어인포 암호화키를 적용
변경이유 : 보안 강화
영향범위 : No
App 변경 여부 : No
2.3.19
Released date: 2024-12-17
Changed APIs
"KollusPlayerLMSDelegate.h" 에서
@param json 리퀘스트로 보낸 JSON 객체
@param error 네트워크 에러(nil: 성공)
(void)kollusPlayerView:(KollusPlayerView *)kollusPlayerView json:(NSDictionary *)json error:(NSError *)error;
=>
@param lmsData lms data 정보
@param resultJson lms result 정보
(void)kollusPlayerView:(KollusPlayerView *)kollusPlayerView lmsData:(NSString *)lmsData resultJson:(NSDictionary *)resultJson;
변경이유 : LMS data 정보에 전송받는 URL 추가 요청으로 API 변경
영향범위 : Yes(빌드 오류가 발생하기 때문에 App에서 변경된 API로 적용해야 함)
App 변경 여부 : Yes(빌드 오류가 발생하기 때문에 App에서 변경된 API로 적용해야 함)
Added Features
배속 설정시 자동재생 방지
일시정지 상태에서 배속이벤트 > SDK에서 설정값을 보관후 Play이벤트 시점에 배속 값 적용
변경이유 : 일시정지 상태에서 배속 설정하면 재생되는 현상 방지할 목적
영향범위 : No
App 변경 여부 : No
seeking중에 Pause 이벤트 올 시 skip 처리
컨텐츠 재생중에 seek 시 seek가 완료되기전에 pause 이벤트 올시 pause 결과가 일관성이 없음
변경이유 : seek중에 pause 이벤트 > seek 동작에 영향을 줄 수 있으므로 무시하도록 함
영향범위 : No
App 변경 여부 : No
2.3.18
Released date: 2024-11-07
Added APIs
"KollusPlayerView.h" 에서 ignoreZero 추가
/// 이어보기 시간 값이 작을 때에도 이어보기 유효
@property (nonatomic, unsafe_unretained, readonly) BOOL ignoreZero;
재생URL의 Query parameter로 전달된 ign_z flag의 값을 반환합니다.(default: false)
변경이유 : 이어보기 정보가 앞뒤로 일정시간 미만이면(KollusPlayer는 10초미만) 처음부터 재생하는 시나리오를 무시하고 이어보기를 원하는 고객사의 요구로 추가
영향범위 : No(해당 flag 값을 필요로 하는 고객사에만 적용 필요)
App 변경 여부 : No(해당 flag 값을 필요로 하는 고객사에만 적용 필요)
Added Features
이어보기 시간 값이 작을 때에도 이어보기 유효 flag
재생URL의 Query parameter로 전달된 ign_z flag의 값을 반환합니다.(default: false)
변경이유 : 이어보기 정보가 앞뒤로 일정시간 미만이면(KollusPlayer는 10초미만) 처음부터 재생하는 시나리오를 무시하고 이어보기를 원하는 고객사의 요구로 추가
영향범위 : No(해당 flag 값을 필요로 하는 고객사에만 적용 필요)
App 변경 여부 : No(해당 flag 값을 필요로 하는 고객사에만 적용 필요)
Kollus DRM및 컨텐츠 보안 강화
변경이유 : Kollus 보안 강화
영향범위 : Kollus 사용 고객 (V/G 암호화 버전 업그레이드 및 DRM 암/복호화 모듈 업데이트)
App 변경 여부 : No
2.3.17
Released date: 2024-09-11
Added Features
LMS Callback 전달 항목 추가 개발(백그라운드, 포그라운드 시 타임스탬프 값)
변경 이후 : 백그라운드에 사용자가 머물러 있는 시간을 계산하위 위한 기능 추가
영향 범위 : 신규 API이므로 영향 없음
앱 변경 여부 : 필요 없음
2.3.16
Released date: 2024-08-29
Added Features
on the fly DRM 적용 : 컨텐츠별 콜러스 DRM 적용
[V2.3.15] - 2024.08.13
PallyConFPSSDK.framework 2.3.0 적용 : 앱에서 교체해야 함\
SRT 자막 개행 문자 누락에 대한 예외처리
StorageManager nil 이면 ERROR_KOLLUS_STORAGE_IS_EMPTY 에러 처리
[V2.3.14] - 2024.06.25
PallyConFPSSDK.framework 2.1.0 적용 : 앱에서 교체해야 함
[V2.3.13] - 2024.06.19
[KollusAVPlayerView checkOutPut] Crash 현상 예외처리 보완
[V2.3.12] - 2024.05.09
AI배속 아이폰 재생시 끊기는 현상 개선
[V2.3.11] - 2024.04.15
AI배속 콘텐츠는 ios_player_type에 따라 재생
AI 배속 콘텐츠 정보 N-screen 에 추가
privacy manifest 파일 추가
/// 플레이어 타입 : hw, sw, native
@property (nonatomic, copy, readonly) NSString *iosPlayerType;
[V2.3.10] - 2024.03.28
[KollusProxyPlayerView checkOutPut] Crash 현상 예외처리
H/W Decoder 재생 시 Background Sound 재생 지원
다음회차 재생 시나리오 적용
다음회차 API 추가
/// 다음 회차 재생 Show Time
@property (nonatomic, unsafe_unretained, readonly) NSInteger nextEpisodeShowTime;
/// 다음 회차 재생 URL
@property (nonatomic, copy, readonly) NSString *nextEpisodeCallbackURL;
/// 다음 회차 재생 Params
@property (nonatomic, readonly) NSMutableDictionary *nextEpisodeCallbackParams;
[V2.3.9] - 2024.03.04
LMS 콜백내 AI 배속 재생 시간 추가 : at_playtime
iOS 지원 : iOS12 이상
연속 여러번 seek 시 이전 타이밍의 자막이 잠시 노출되는 현상 수정
[V2.3.8] - 2024.02.05
player ID 변경되는 것을 방지하기 위해 backup 저장
Native Player 에서도 AI 배속 정보 전달
[V2.3.7] - 2024.01.12
iOS Player sw 디코더 설정일 때 h265 영상 Seek 시 재생 화면이 비정상 출력되는 현상 수정
AI 배속 기능
구간 재생 파라미터 추가
AI 배속 관련 API 추가
KollusPlayerView.h에서
/// AI 배속 지원 여부
@property (nonatomic, unsafe_unretained) BOOL AIRateEnable;
/**
AI 배속 사용 설정
@param YES(default): YES : AI 배속, NO : 일반 배속
*/
(void) setAIRate:(bool)bAIRate;
/// Repeat Start Time
@property (nonatomic, unsafe_unretained, readonly) NSInteger nRepeatStartTime;
/// Repeat End Time
@property (nonatomic, unsafe_unretained, readonly) NSInteger nRepeatEndTime;
[V2.3.6] - 2023.11.01
H265 Hardware Decoder 기능 추가
북마크 타이틀에 urlencode 추가
고배속시 잔상남는 현상 수정
[V2.3.5] - 2023.08.10
Request Header 추가
[V2.3.4] - 2023.08.08
iOS SDK 영상 종료후 중앙 정렬 처리를 위해 앱에서 플레이어 release 처리
유선 이어폰 연결시 재생 상태는 기존으로 유지
DRM 처리 변경
[V2.3.3] - 2023.07.05
iOS 16.4.1 수강앱에서 sdk -2108 에러 수정
: 언어 및 지역/켈린더에서 불교력 선택유선 이어폰 연결시 A/V 싱크 이슈 수정
[V2.3.2] - 2023.05.16
UI lock 걸리는 현상 수정
[V2.3.1] - 2023.05.08
Copyright © CATENOID, lnc. All Rights Reserved.
E-mail. support@catenoid.net | Tel. 1544-4367