# Apple FairPlay ইন্টিগ্রেশন

Swift, AVFoundation, SPC ও CKC বিনিময় এবং নিরাপদ সার্ভার অনুমোদন ব্যবহার করে iOS, iPadOS, tvOS ও Safari-তে DRM-X 6.0 FairPlay Streaming যুক্ত করুন।

FairPlay সার্টিফিকেট ও লাইসেন্স বিনিময়

বিনিময়ের পুরো প্রক্রিয়ায় SPC ও CKC-এর বাইনারি ডেটা অপরিবর্তিত রাখুন।

- 01**সার্টিফিকেট**

অনুমোদিত URL থেকে অ্যাপ্লিকেশনের সার্টিফিকেট লোড করুন।

- 02**SPC**

সার্টিফিকেট ও HLS শনাক্তকারী ব্যবহার করে ডিভাইসের SPC অনুরোধ তৈরি করুন।

- 03**CKC**

অনুমোদিত লাইসেন্স URL-এ SPC পাঠিয়ে CKC প্রতিক্রিয়া গ্রহণ করুন।

- 04**AVFoundation**

এনক্রিপ্ট করা ভিডিও চালাতে CKC-কে AVFoundation-এর কাছে দিন।

সার্টিফিকেট প্রত্যাখিত SPC চ্যালেঞ্জ প্রতিদ্বন্দ্বিতা CKC প্রতিস্থাপিত স্থানীয় প্লে-ব্যাক নিষ্ক্রিয় করা হবে। বাইনারি ও প্রতিক্রিয়া false হিসাবে false (সত্য নয়) ধার্য করা হয়।

**ডেভেলপমেন্টের অবস্থা**প্রকৃত আইফোন চেকস সংরক্ষিত ডাউনলোড, স্থানীয়, প্লে-লিস্ট মোড এবং রিগ্রেশন@ info: credit SDK HTTP অনুরোধ ব্লক করা হয়েছে; ডিভাইস Wi-Fi সংযুক্ত করা হয়েছে । প্লে-ব্যাক, শারীরিক আইপ্যাড ডিভাইস এবং আপনার নিজস্ব সামগ্রী নিয়ন্ত্রণ তালিকা মুক্ত করার পূর্বে সম্পূর্ণ ভাবে বন্ধ করা হয়েছে । প্যাকেজের নেটিভ নমুনা বন্টন অসাধারণ । HLS মাস্টার আর নতুন করে আইফোন ডাউনলোড করা হয়েছে ইংরেজী আর চীনা ওয়েবভিটি এর শিরোনাম হিসাবে। প্লেয়ার নতুন প্রকাশিত গ্রাহক নয়, উন্নয়ন উন্নয়নের অগ্রগতি তৈরী হচ্ছে। SDK. 

## Western (পশ্চিমি FairPlay সংযোগের পূর্বে অপেক্ষাকাল[#](#register-fairplay-before-integration)

কনফিগার করো... FairPlay সার্টিফিকেট এবং সার্টিফিকেট যোগ করুন DRM-X কনসোলের মধ্যে ব্যক্তিগত-কি এনক্রিপ্ট করা হয়েছে। এর ফলে, সার্ভার একটি প্রকাশ করা হবে। HLS/CBCS উল্লিখিত বস্তুর জন্য ধরন Content ID তুমি পরীক্ষা করার পরিকল্পনা করেছ.



## Apple সেশানের অনুরোধ[#](#request-the-apple-session)

প্রেরণ `drmSystem: fairplay`, `manifestTypes: ["hls"]`এবং উত ্ তম বিষয়কে , `clientPlatform` চিহ্নিত ব্যাক-এন্ড থেকে অনুমোদিত ব্যাক-এন্ড ব্যবহার করা হচ্ছে। HLS স্পষ্ট, সার্টিফিকেট রুট, CKC লাইসেন্স পথ, অনুমোদন নির্দেশ, এবং মুক্ত পথ।

**নেটিভ বাইট অপরিবর্তিত রাখা হবে**বেস64-ট্‌সফর্ম করবেন না, JSON-word wrap, বা resett SPC এবং CKC ফিরে আসা কোন তথ্য সুনির্দিষ্টভাবে উল্লেখ না করলে এর প্রয়োজন হবে । সঠিক বাইনারি অনুরোধ এবং প্রতিক্রিয়া ।



## AVFoundation অনুক্রম[#](#avfoundation-sequence)

- **সার্টিফিকেট লোড করো**ফিরে আসা থেকে এটা ফেরত দাও FairPlay সার্টিফিকেট URL ফিরে আসা অনুমোদন সঙ্গে.
- **বিষয়বস্তু তৈরি করুন ।**ব্যবহার করুন `skd://` উল্লিখিত অবস্থান নির্দেশক পরিচিতি HLS অ্যাপ্লিকেশন-র সার্টিফিকেট ও সার্টিফিকেটের তালিকা নির্মাণ করা হবে
- **প্রেরণ SPC.**POST একদম ঠিক SPC প্রাপ্ত লাইসেন্সের বাইট URL এবং সঠিক ভাবে গ্রহণ করুন CKC বাইট।
- **শেষ কর এবং মুক্ত কর।**বিষয়বস্তুর অনুরোধের প্রতি প্রতিক্রিয়া, তারপর মুক্তি দিন DRM-X কর্মের সমাপ্তির সময় সেশান প্রদর্শন করা হবে।



## Safari আর আবেদন গ্রহন করে[#](#safari-and-app-acceptance)

- আইফোন এবং আইপ্যাড পরীক্ষা করুন Safari স্থানীয় HLS FairPlay.
- পরীক্ষা macOS Safari সম ্ মানিত পৃষ ্ ঠাগুলোয় -- Shaka MSE FairPlay যেখানে এবং স্থানীয় HLS ফল.
- & পরীক্ষা iOS, iPadOSএবং tvOS প্লে-ব্যাক, এয়ার প্লে-ব্যাক পলিসি, AV অ্যাডাপ্টারের নীতি, ব্যাক-আপ পরিবর্তন, পুন:স্থকরণ এবং আউটপুট পরিবর্তন করা হয়েছে।
- বিভিন্ন ডেভেলপমেন্ট এবং উৎপাদন পদ্ধতি ব্যবহার করুন FairPlay ♪ বহন ও নির্মাণ কর ♪ পরিচয় যাচাইয়ের তথ্য.



আপেল SDK 

## iOS, iPadOSএবং tvOS স্থানীয় FairPlay[#](#ios-ipados-and-tvos-with-native-fairplay)



এটা Swift প্যাকেজ টার্গেট iOS এবং tvOS ১৫+, এটা ব্যবহার করে AVFoundationইউরোপের সচেতন থাক! AVContentKeySession উল্লিখিত সময় অবধি FairPlay সার্টিফিকেট আন-লক করুন, সার্টিফিকেট আন-লক করুন SPC/CKC বিনিময়, পুন:মূল্যায়ন, বাতিল, এবং সেশান মুক্তি।



```
import AVKit
import DrmXFairPlay

let controller = DrmXFairPlayPlayer()
let player = try await controller.prepare(
    endpoint: URL(string: "https://customer.example/api/drmx/playback-session")!,
    contentId: "course-12-lesson-4",
    contentType: .vod,
    customerHeaders: ["Authorization": "Bearer \(customerAccessToken)"]
)
playerViewController.player = player
player.play()
```



আপনার ব্যাক- এন্ড নীতি টেমপ্লেট নির্বাচন করে । কোনো পলিসি উল্লেখ করবেন না, স্পষ্ট URL, Site Key, Access Keyঅথবা এই অ্যাপ্লিকেশনের টুকরোয় লম্বা বা লম্বা টোকেন। HLS/CBCS শারীরিক আইপ্যাড, আইপ্যাড এবং মিডিয়ার মিডিয়া Apple TV ডিভাইস সহ HDMI এবং এয়ার প্লেস সিদ্ধান্ত







## এক প্যাকেজ, তিনটি সমন্বিত পছন্দ[#](#one-package-three-integration-choices)



Use Universal Player for iOS/iPadOS, Universal Player for tvOS, or the native AVPlayer integration above. All use the same DrmXFairPlay package and customer playback-session endpoint. The host application supplies customer authentication; tenant credentials remain on your backend.



স্ট্রীম প্লেয়ার প্লে-লিস্ট, স্বয়ংক্রিয়রূপে সংরক্ষণ করা হয়, পুনরায় অবস্থান নির্ধারণের জন্য বিভিন্ন স্থান, গতি, পছন্দ, অডিও/বর্জন, শিরোনাম, বুকমার্ক, ঐচ্ছিক অধ্যায়, এ-বি লুপ, ডেভেলপ, ডে-লেক্স, ডেভেল্‌স এবং পর্দার সাথে খাপ খাইয়ে নেয়। Apple TV দূর।



```
let playlist = try DrmXPlaylist(items: [
    DrmXPlaylistItem(contentId: "lesson-1", title: "Getting started"),
    DrmXPlaylistItem(contentId: "lesson-2", title: "Next lesson")
])
let model = DrmXUniversalPlayer(
    endpoint: URL(string: "https://customer.example/api/drmx/playback-session")!,
    playlist: playlist,
    storageNamespace: "your-tenant-and-viewer"
) {
    ["Authorization": "Bearer \(customerAccessToken)"]
}
// Retain the model with @StateObject or an owning coordinator.
DrmXUniversalPlayerView(model: model)
// Stop when the owning screen is actually dismissed.
model.stop()
```



Quality settings are maximum preferences within the returned session ceiling. AVPlayer adapts to available bandwidth; FairPlay licenses and output restrictions remain authoritative. Positions and bookmarks persist by customer/viewer namespace without storing playback credentials.



বর্তমানে চলমান ডিভেলপমেন্টের স্থান, পূর্ববর্তী/সিস্টেমের চলাচলের জন্য চিহ্নিত মান: CCভিডিও-র মধ্যে বৈশিষ্ট্য ও সম্পূর্ণ পর্দায় প্রদর্শন করা হবে। প্লে-লিস্ট দ্বারা প্লে-ব্যাক ও দূরবর্তী যোগাযোগ সংক্রান্ত পূর্ববর্তী তথ্য আড়াল করা হয়। VOD গ্রাহক/ভিউার-এর মাঝে এগিয়ে যাওয়া, যার মধ্যে ডাউনলোড করা হয়েছে এবং আবার শুরু হয়েছে, চূড়ান্ত ভিডিওর পর লাইন বন্ধ হয়ে গেছে।



### আইফোন এবং আইপ্যাডে সুরক্ষিত



অনুমোদিত হওয়া আবশ্যক `offlineEndpoint` চিহ্নিত স্থানে চলুন `DrmXUniversalPlayer` ডাউনলোড ও ডাউনলোড করার মোড সক্রিয় করা হবে। iOS প্রয়োগ করা হচ্ছে AVAssetDownloadURLSession স্থানীয় ফাইল HLS প্যাকেজ এবং AVContentKeySession অ্যাক্টিভেবলের জন্য ব্যবহারযোগ্য ডিভাইসের সংখ্যা FairPlay কি-রিংয়ের মধ্যে স্থানীয় কি ও স্থানীয় কি উপস্থিত রয়েছে। এর ফলে, দ্বিতীয় বিবরণের মধ্যে উপস্থিত সকল কি অন্তর্ভুক্ত করা যাবে না DRM License Tokensডাউনলোড অথবা পরিষ্কার কি। ডাউনলোড করা হলে গ্রাহক/ভিউারস দ্বারা দ্বারা পৃথক। অফলাইন লাইন সম্পূর্ণ বস্তুগুলির তালিকা সম্পূর্ণ হয়েছে এবং সেগুলো পুনরায় প্রকাশ করা হয়েছে। লাইসেন্সের ক্ষেত্রে নতুন অনলাইন অনুমোদন প্রয়োজন; শুধুমাত্র নির্বাচিত ডাউনলোড করা হবে।



এটা PHP নমুনা সমর্থন `fairplay`/`hls`/`ios` স্থায়ী অনুরোধ জানানো হয়েছে । প্রতিটি বিষয়বস্তুর জন্য বিশ্বস্ত রূপে কনফিগার করুন `hlsManifestUrl`; সার্টিফিকেট রুট ব্যবহার করে নতুন সাইনমেন্টে সক্রিয়করণ রুট ব্যবহার করা হয়েছে। FairPlay মেয়াদপূর্তীর বৈশিষ্ট্য। অফ-লাইন উপস্থিত মান পরিবর্তিত হলে, বর্তমান মান প্রয়োগ করা হবে। শুধুমাত্র ক্যাশে করা ভাষার ট্র্যাকগুলি নির্বাচন করা হবে। tvOS স্ট্রিম ব্যবহার করা হচ্ছে প্লেয়ার.



### পর্দার অনুলিপি তৈরি করুন



আইপ্যাড ব্যবহার ও ব্যবহার করুন Apple TV বিন্যাসের জন্য সিমুলেটর, প্লে-লিস্ট নিয়ন্ত্রণ, বৈশিষ্ট্য, এবং দূরবর্তী অবস্থান এ্যক্স। FairPlay এই সিমুলেটরের মধ্যে প্লে-ব্যাক উপলব্ধ নয়; SDK এই প্রদত্ত GDM দ্বারা একটি অসমর্থিত কী (key) নিবন্ধন ব্যবস্থা সৃষ্টি এবং এই প্রতিবেদন প্রকাশিত হয়। একটি অসমর্থিত কী (key)-র চলমান সংস্করণ। UI ফলাফল সংরক্ষিত প্লে-ব্যাক, অফ-লাইন সমর্থন ব্যবস্থা স্থাপন করা হবে না অথবা শারীরিক-device-manager-র সমর্থন গ্রহণ করা হবে না।



The player pauses audio/video when iOS reports active recording or mirroring and covers inactive scenes. A screenshot notification arrives after capture and cannot redact an already saved image. The earlier sample allowed movie pixels in a saved screenshot. After installing the expanded player with native AVPlayerViewController presentation, the user repeated the WayMaker screenshot/Photos check on the development iPhone and confirmed the video area was black. Test other playback states, devices, recordings, AirPlay, and output-policy changes separately before release.

<!-- Canonical: https://docs.drm-x.com/bn/sdk/apple -->
<!-- Language: bn -->
