Apple FairPlay ইন্টিগ্রেশন
Swift, AVFoundation, SPC ও CKC বিনিময় এবং নিরাপদ সার্ভার অনুমোদন ব্যবহার করে iOS, iPadOS, tvOS ও Safari-তে DRM-X 6.0 FairPlay Streaming যুক্ত করুন।
Western (পশ্চিমি FairPlay সংযোগের পূর্বে অপেক্ষাকাল#
কনফিগার করো... FairPlay সার্টিফিকেট এবং সার্টিফিকেট যোগ করুন DRM-X কনসোলের মধ্যে ব্যক্তিগত-কি এনক্রিপ্ট করা হয়েছে। এর ফলে, সার্ভার একটি প্রকাশ করা হবে। HLS/CBCS উল্লিখিত বস্তুর জন্য ধরন Content ID তুমি পরীক্ষা করার পরিকল্পনা করেছ.
Apple সেশানের অনুরোধ#
প্রেরণ drmSystem: fairplay, manifestTypes: ["hls"]এবং উত ্ তম বিষয়কে , clientPlatform চিহ্নিত ব্যাক-এন্ড থেকে অনুমোদিত ব্যাক-এন্ড ব্যবহার করা হচ্ছে। HLS স্পষ্ট, সার্টিফিকেট রুট, CKC লাইসেন্স পথ, অনুমোদন নির্দেশ, এবং মুক্ত পথ।
AVFoundation অনুক্রম#
- সার্টিফিকেট লোড করোফিরে আসা থেকে এটা ফেরত দাও FairPlay সার্টিফিকেট URL ফিরে আসা অনুমোদন সঙ্গে.
- বিষয়বস্তু তৈরি করুন ।ব্যবহার করুন
skd://উল্লিখিত অবস্থান নির্দেশক পরিচিতি HLS অ্যাপ্লিকেশন-র সার্টিফিকেট ও সার্টিফিকেটের তালিকা নির্মাণ করা হবে - প্রেরণ SPC.POST একদম ঠিক SPC প্রাপ্ত লাইসেন্সের বাইট URL এবং সঠিক ভাবে গ্রহণ করুন CKC বাইট।
- শেষ কর এবং মুক্ত কর।বিষয়বস্তুর অনুরোধের প্রতি প্রতিক্রিয়া, তারপর মুক্তি দিন DRM-X কর্মের সমাপ্তির সময় সেশান প্রদর্শন করা হবে।
Safari আর আবেদন গ্রহন করে#
- আইফোন এবং আইপ্যাড পরীক্ষা করুন Safari স্থানীয় HLS FairPlay.
- পরীক্ষা macOS Safari সম ্ মানিত পৃষ ্ ঠাগুলোয় -- Shaka MSE FairPlay যেখানে এবং স্থানীয় HLS ফল.
- & পরীক্ষা iOS, iPadOSএবং tvOS প্লে-ব্যাক, এয়ার প্লে-ব্যাক পলিসি, AV অ্যাডাপ্টারের নীতি, ব্যাক-আপ পরিবর্তন, পুন:স্থকরণ এবং আউটপুট পরিবর্তন করা হয়েছে।
- বিভিন্ন ডেভেলপমেন্ট এবং উৎপাদন পদ্ধতি ব্যবহার করুন FairPlay ♪ বহন ও নির্মাণ কর ♪ পরিচয় যাচাইয়ের তথ্য.
iOS, iPadOSএবং tvOS স্থানীয় 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 এবং এয়ার প্লেস সিদ্ধান্ত
এক প্যাকেজ, তিনটি সমন্বিত পছন্দ#
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.
DRM-X 6.0