
{"id":10040,"date":"2022-06-21T09:10:43","date_gmt":"2022-06-21T09:10:43","guid":{"rendered":"https:\/\/developer.rdkcentral.com\/documentation\/documentation\/documentation\/rdk_video_documentation\/components\/open-sourced_components\/advanced_adaptive_media_player_aamp\/aamp_compatibility__roadmap\/"},"modified":"2025-03-25T05:18:34","modified_gmt":"2025-03-25T05:18:34","slug":"aamp_compatibility__roadmap","status":"publish","type":"page","link":"https:\/\/developer.rdkcentral.com\/documentation\/documentation\/rdk_video_documentation\/components\/advanced_adaptive_media_player_aamp\/aamp_compatibility__roadmap\/","title":{"rendered":"AAMP Compatibility &amp; Roadmap"},"content":{"rendered":"\n <ul><li><span>AAMP is a native media player supporting DASH, HLS, Fragmented mp4, and progressive mp3\/mp4 stream formats.<\/span><\/li><li><span>Fronted by Universal Video Engine APIs.<\/span><\/li><li><span>Integrated with multiple DRM systems (Adobe Access, PlayReady,<span>&nbsp;<\/span><\/span><span>Widevine).<\/span><\/li>\n<li>Compatible with FOG Time Shift Buffer Service<\/li>\n<li>Currently licensed under Apache License, Version 2.0.<\/li>\n<\/ul>\n<h2 class=\"wp-main-header wp-block-heading\">Supported IP Video Formats<\/h2><div class=\"table-wrap\"> <table class=\"wrapped confluenceTable\"><colgroup><col><col><\/colgroup><thead><tr><th class=\"confluenceTh\"><p>IP Video Format<\/p><\/th><th class=\"confluenceTh\"><p>Status<\/p><\/th><\/tr><\/thead><tbody><tr><td colspan=\"1\" class=\"confluenceTd\">HLS\/TS &#8211; demuxed (separate audio\/video playlists)<\/td><td colspan=\"1\" class=\"confluenceTd\"><p>supported<\/p><\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\">HLS\/TS &#8211; muxed (single audio + video in each ts fragment)<\/td><td colspan=\"1\" class=\"confluenceTd\"><p>supported<\/p><\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\">HLS\/TS &#8211; direct media playlist playback support (with no main manifest)<\/td><td colspan=\"1\" class=\"confluenceTd\"><p>supported<\/p><\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\">HLS\/TS &#8211; muxed (multiple audio + video in each ts fragment)<\/td><td colspan=\"1\" class=\"confluenceTd\"><p>roadmap<\/p><\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\">HLS, Fragmented MP4 (aka&nbsp;<span>HLS-CMAF)<\/span><\/td><td colspan=\"1\" class=\"confluenceTd\"><p>supported<\/p><\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\">MPEG DASH ISOBMFF<\/td><td colspan=\"1\" class=\"confluenceTd\"><p>supported<\/p><\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\">Progressive MP4<\/td><td colspan=\"1\" class=\"confluenceTd\"><p>supported<\/p><\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\">Progressive MP3<\/td><td colspan=\"1\" class=\"confluenceTd\"><p>supported<\/p><\/td><\/tr><\/tbody><\/table> <\/div><h2 class=\"wp-main-header wp-block-heading\">Audio Support<\/h2><div class=\"table-wrap\"> <table class=\"wrapped confluenceTable\"><colgroup><col><col><\/colgroup><thead><tr><th class=\"confluenceTh\"><p>Codec<\/p><\/th><th class=\"confluenceTh\"><p>Format<\/p><\/th><\/tr><\/thead><tbody><tr><td class=\"confluenceTd\"><span>mp4a.40.2<\/span><\/td><td class=\"confluenceTd\">FORMAT_AUDIO_ES_AAC<\/td><\/tr><tr><td class=\"confluenceTd\"><span>mp4a.40.5<\/span><\/td><td class=\"confluenceTd\">FORMAT_AUDIO_ES_AAC<\/td><\/tr><tr><td class=\"confluenceTd\"><span>ac-3<\/span><\/td><td class=\"confluenceTd\">FORMAT_AUDIO_ES_AC3<\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><span>mp4a.a5<\/span><\/td><td colspan=\"1\" class=\"confluenceTd\">FORMAT_AUDIO_ES_AC3<\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><span>ec-3<\/span><\/td><td colspan=\"1\" class=\"confluenceTd\">FORMAT_AUDIO_ES_EC3<\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><span>ec+3<\/span><\/td><td colspan=\"1\" class=\"confluenceTd\">FORMAT_AUDIO_ES_ATMOS<\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><span>eac3<\/span><\/td><td colspan=\"1\" class=\"confluenceTd\">FORMAT_AUDIO_ES_EC3<\/td><\/tr><\/tbody><\/table> <\/div><h2 class=\"wp-main-header wp-block-heading\">Video Support<\/h2><div class=\"table-wrap\"> <table class=\"wrapped confluenceTable\"><colgroup><col><col><\/colgroup><thead><tr><th class=\"confluenceTh\"><p>Codec<\/p><\/th><th class=\"confluenceTh\"><p>Format<\/p><\/th><\/tr><\/thead><tbody><tr><td class=\"confluenceTd\"><span>avc1<\/span><\/td><td class=\"confluenceTd\">FORMAT_VIDEO_ES_H264<\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><span>hvc1.<\/span><\/td><td colspan=\"1\" class=\"confluenceTd\">FORMAT_VIDEO_ES_HEVC<\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><span>hev1.<\/span><\/td><td colspan=\"1\" class=\"confluenceTd\">FORMAT_VIDEO_ES_HEVC<\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><span>mpeg2v<\/span><\/td><td colspan=\"1\" class=\"confluenceTd\">FORMAT_VIDEO_ES_MPEG2<\/td><\/tr><\/tbody><\/table> <\/div><div class=\"conf-macro output-block\" data-hasbody=\"true\" data-macro-name=\"show-if\"><h2 class=\"wp-main-header wp-block-heading\">Text Track Support<\/h2><div class=\"table-wrap\"> <table class=\"wrapped confluenceTable\"><colgroup><col><col><col><\/colgroup><thead><tr><th class=\"confluenceTh\"><p>Type<\/p><\/th><th class=\"confluenceTh\"><p>RDK CC Manager<\/p><\/th><th colspan=\"1\" class=\"confluenceTh\"><p>Subtec<\/p><\/th><\/tr><\/thead><tbody><tr><td class=\"confluenceTd\">CEA608<\/td><td class=\"confluenceTd\"><p>supported<\/p><\/td><td colspan=\"1\" class=\"confluenceTd\">roadmap<\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\">CEA708<\/td><td colspan=\"1\" class=\"confluenceTd\"><p>supported<\/p><\/td><td colspan=\"1\" class=\"confluenceTd\">integration in progress<\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\">VTT<\/td><td colspan=\"1\" class=\"confluenceTd\">n\/a<\/td><td colspan=\"1\" class=\"confluenceTd\"><p>supported<\/p><\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\">TTML<\/td><td colspan=\"1\" class=\"confluenceTd\">n\/a<\/td><td colspan=\"1\" class=\"confluenceTd\"><p>supported<\/p><\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\">Teletext<\/td><td colspan=\"1\" class=\"confluenceTd\">n\/a<\/td><td colspan=\"1\" class=\"confluenceTd\">roadmap<\/td><\/tr><\/tbody><\/table> <\/div><\/div><h2 class=\"wp-main-header wp-block-heading\">Features<\/h2><div class=\"table-wrap\"> <table class=\"wrapped confluenceTable\"><colgroup><col><col><\/colgroup><thead><tr><th class=\"confluenceTh\"><p>Feature<\/p><\/th><th class=\"confluenceTh\"><br><\/th><\/tr><\/thead><tbody><tr><td colspan=\"1\" class=\"confluenceTd\">seek, pause, play<\/td><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\">VCR style FF\/REW leveraging iframe track<\/td><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\">live, VOD, and hot recording support<\/td><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><div class=\"content-wrapper\"><p class=\"conf-macro output-block\" data-hasbody=\"true\" data-macro-name=\"show-if\">time shift buffer support leveraging &#8220;FOG&#8221; component<\/p><\/div><\/td><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><\/tr><tr><td class=\"confluenceTd\">eventing for inband ID3 signals<\/td><td class=\"confluenceTd\"><br><\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\">EventStream timed metadata<\/td><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\">Session Based Statistics for latency histogram, http failure counts, time to top profile<\/td><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\">rich metrics including &#8220;Micro Event&#8221; profiling for visualizations of serial\/parallel contributors to tune time<\/td><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\">sub-fragment granularity seeking<\/td><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\">JPEG thumbnail support leveraging &#8216;image&#8217; sprite sheet track<\/td><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\">massively configurable<\/td><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\">state of the art hybrid throughput\/buffering model for ABR decisions<\/td><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\">raw pts based progress reporting<\/td><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\">virtual stream stitcher support, including randomly deferred license requests&nbsp;<\/td><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\">client and server side DAI<\/td><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\">support for Universal Video Engine (UVE) JS bindings for integration of native video engine with web apps<\/td><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\">extensible custom curl headers<\/td><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\">anomaly reporting and real time events to drive dashboards and onscreen diagnostics<\/td><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\">feature rich reference player web app, demonstrating use of native IP player functionality<\/td><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\">support for pre rolled IP video content and fast player switching<\/td><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><\/tr><\/tbody><\/table> <\/div><h2 class=\"wp-main-header wp-block-heading\">Roadmap<\/h2><div class=\"table-wrap\"> <table class=\"relative-table wrapped confluenceTable\"><colgroup><col><col style=\"width: 89.9041%\"><\/colgroup><thead><tr><th colspan=\"1\" class=\"confluenceTh\">Roadmap Item<\/th><th class=\"confluenceTh\"><br><\/th><\/tr><\/thead><tbody><tr><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td colspan=\"1\" class=\"confluenceTd\"><strong>Features:<\/strong><\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\">RDK-30256<\/td><td colspan=\"1\" class=\"confluenceTd\"><p><span>[Peacock] [HLS][DASH] thumbnail based scrubbing support (2101)<\/span><\/p><\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td colspan=\"1\" class=\"confluenceTd\">FriendMTS Watermarking Support<\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td colspan=\"1\" class=\"confluenceTd\">Red Button\/VCID Support (2101)<\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\">TBD<\/td><td colspan=\"1\" class=\"confluenceTd\"><p>slow motion support (arbitrary trick play speed)<\/p><\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td colspan=\"1\" class=\"confluenceTd\"><strong>Compatibility:<\/strong><\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td colspan=\"1\" class=\"confluenceTd\">[AAMP][HLS] Improved Compatibility and Formal Specification Compliance<\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td colspan=\"1\" class=\"confluenceTd\">Dolby AC-4 Audio Support<\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td colspan=\"1\" class=\"confluenceTd\">support for muxed HLS with AV fragments containing multiple audio and text tracks<\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td colspan=\"1\" class=\"confluenceTd\">Build support for playing shoutcast music streams in AAMP<\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td colspan=\"1\" class=\"confluenceTd\">[FOG] handle pending ATMOS DASH manifest change (Dolby Specification)<\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td colspan=\"1\" class=\"confluenceTd\"><strong>CDAI:<\/strong><\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td colspan=\"1\" class=\"confluenceTd\">[AAMP] Client Side VOD DAI Optimizations<\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td colspan=\"1\" class=\"confluenceTd\">harden mp4 playback to give option for non-Spotlight ad avail playback that may not have hls\/dash equivalents (was [AAMP] support for progressive audio\/video playback (such as streaming mp3 music and mp4 video) &#8211; phase#2)<\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td colspan=\"1\" class=\"confluenceTd\"><strong>Optimization \/ Robustness:<\/strong><\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><span>RDK-26162<\/span><\/td><td colspan=\"1\" class=\"confluenceTd\">[AAMP] Timed Metadata transmission optimization<\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td colspan=\"1\" class=\"confluenceTd\">[AAMP] delays refreshing playlists can interfere with fragment harvesting<\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td colspan=\"1\" class=\"confluenceTd\">[AAMP] Analysis\/mitigation for intermittent audio drops with demuxed content<\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td colspan=\"1\" class=\"confluenceTd\">[AAMP] support for Retry-After http header with HTTP 429 &#8220;TOO MANY REQUESTS&#8221; rate limiting directive<\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td colspan=\"1\" class=\"confluenceTd\">Root Cause Aware Player Switching<\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td colspan=\"1\" class=\"confluenceTd\">[AAMP] initialization fragments needlessly re-downloaded if ramping down and back up, or after transition to ad and back to main content<\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><span>DELIA-39964<\/span><\/td><td colspan=\"1\" class=\"confluenceTd\">[AAMP] [HLS\/DASH] tune fails if initial audio playlist download fails at tune time (without considering alternate audio profiles\/formats)<\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td colspan=\"1\" class=\"confluenceTd\"><strong>ABR:<\/strong><\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td colspan=\"1\" class=\"confluenceTd\">[AAMP][HLS\/DASH] Restrict Video profile based on display resolution<\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td colspan=\"1\" class=\"confluenceTd\">[AAMP] Capped VBR Support for DASH<\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td colspan=\"1\" class=\"confluenceTd\"><strong>Metrics \/ Profiling:<\/strong><\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td colspan=\"1\" class=\"confluenceTd\">Error reporting for catastrophic video decoder problems associated with bad streams (including stale PPS\/SPS)<\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td colspan=\"1\" class=\"confluenceTd\">AAMP\/FOG to report onMediaError event on loss of network connection<\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td colspan=\"1\" class=\"confluenceTd\">[AAMP] collect data to prove benefits of warming edge cache<\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td colspan=\"1\" class=\"confluenceTd\">[AAMP] Pass location data in HTTP upstream header<\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td colspan=\"1\" class=\"confluenceTd\">[AAMP] support for custom http headers configured by Resident app &#8211; centrally configured to include user privacy flags<\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td colspan=\"1\" class=\"confluenceTd\"><span>Send IP DAI Triggers to SSIMWAVE<\/span><\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td colspan=\"1\" class=\"confluenceTd\"><strong>Tech Debt:<\/strong><\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><span>DELIA-36671<\/span><\/td><td colspan=\"1\" class=\"confluenceTd\">[FOG] fragment bitrate reporting mechanism consistency<\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><span>RDK-27619<\/span><\/td><td colspan=\"1\" class=\"confluenceTd\">[AAMP] Configuration Management Refactoring for Consistency &amp; Control<\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td colspan=\"1\" class=\"confluenceTd\">evaluate pros\/cons of libxml vs libdash for DASH manifest parsing (FOG\/AAMP consolidation)<\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td colspan=\"1\" class=\"confluenceTd\"><strong>Configurability:<\/strong><\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td colspan=\"1\" class=\"confluenceTd\">In case of setDrmConfig api other than passing keySystem and LA_URL details, add capability to pass initData (in base64 format) alongwith initDataType (cenc_pssh,mspr_pro).<\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td colspan=\"1\" class=\"confluenceTd\"><span>Expose ePARAM_VODTRICKPLAYFPS, ePARAM_LINEARTRICKPLAYFPS in UVE<\/span><\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td colspan=\"1\" class=\"confluenceTd\"><strong>Misc:<\/strong><\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td colspan=\"1\" class=\"confluenceTd\">IP Linear TSB Internet Interruption Handling<\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td colspan=\"1\" class=\"confluenceTd\">[AAMP][DASH] JSPP control for audio format selection<\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td colspan=\"1\" class=\"confluenceTd\">Media Playback Plugin (Phase 1)<\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><span>RDK-30409<\/span><\/td><td colspan=\"1\" class=\"confluenceTd\"><p><span>Supports subtitles and closed captioning support on IP video streams<\/span><\/p><ul><li>Direct WebVTT support<\/li><\/ul><ul><li>IMSC1\/TTML testing &amp; improvements<\/li><\/ul><\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><span>DELIA-40048<\/span><\/td><td colspan=\"1\" class=\"confluenceTd\">[AAMP] tuning partially synchronous, blocking UI (ask: wholly asyn , interruptible tune support)<\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td colspan=\"1\" class=\"confluenceTd\">IP VIDEO robustness handling for bad streams (SPIKE)<\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td class=\"confluenceTd\">low latency DASH;&nbsp;<a href=\"https:\/\/www.theoplayer.com\/blog\/low-latency-dash\" class=\"rdk-inside-table\" rel=\"nofollow\">https:\/\/www.theoplayer.com\/blog\/low-latency-dash<\/a><\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td class=\"confluenceTd\"><span>signaling using emsg messages using a custom key rotation signal to indicate future KIDs<\/span><\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td class=\"confluenceTd\"><span>api to query MIME types and codecs (Video, audio, subtitles) supported by player<\/span><\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td class=\"confluenceTd\"><span>api to signal platform capabilities to the player so that player can use that when making decisions e.g if there are multiple video adaptation set in different codecs i.e.&nbsp; (HEVC, H.264) present in manifest and platform does not support HEVC, player shall select video adaptation set in H.264<\/span><\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td class=\"confluenceTd\"><span>api to enable\/disable\/retrieve extended profiling \/ timing \/ stats information corresponding to a playback session<\/span><\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td class=\"confluenceTd\"><span>getCurrentPosition to support reporting with UTC timestamp for live content<\/span><\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td colspan=\"1\" class=\"confluenceTd\">Removal of force encrypted init header workaround in AAMP (dynamic plugging and unplugging of decryptors)<\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td colspan=\"1\" class=\"confluenceTd\">Init header caching for DASH (for ad back to content transition)<\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td colspan=\"1\" class=\"confluenceTd\">refactoring to eliminate need for qtdemux patches<\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td colspan=\"1\" class=\"confluenceTd\">fragmentcollector_mpd.cpp cleanup &#8211; room for improvement here, in terms of improving code quality\/readability and streamlining\/optimization.<\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td colspan=\"1\" class=\"confluenceTd\"><span>UVE audio selection API enhancements<\/span><\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td colspan=\"1\" class=\"confluenceTd\"><span>document and resolve gstreamer discrepancies across SOC venders<\/span><\/td><\/tr><\/tbody><\/table> <\/div><h2 class=\"wp-main-header wp-block-heading\">Test Streams for Regression and New Device Bringup<\/h2><div class=\"table-wrap\"> <table class=\"wrapped confluenceTable\"><colgroup><col style=\"width: 471.0px\"><col style=\"width: 275.0px\"><col style=\"width: 178.0px\"><col style=\"width: 62.0px\"><\/colgroup><thead><tr><th class=\"confluenceTh\"><p>Locator<\/p><\/th><th class=\"confluenceTh\"><p>Description<\/p><\/th><th colspan=\"1\" class=\"confluenceTh\"><p>Codecs<\/p><\/th><th colspan=\"1\" class=\"confluenceTh\"><p>Notes<\/p><\/th><\/tr><\/thead><tbody><tr><td colspan=\"1\" class=\"confluenceTd\"><p><span><a href=\"https:\/\/bitmovin-a.akamaihd.net\/content\/MI201109210084_1\/m3u8s-fmp4\/f08e80da-bf1d-4e3d-8899-f0f6155f6efa.m3u8\" class=\"rdk-inside-table\" rel=\"nofollow\">https:\/\/bitmovin-a.akamaihd.net\/content\/MI201109210084_1\/m3u8s-fmp4\/f08e80da-bf1d-4e3d-8899-f0f6155f6efa.m3u8<\/a><\/span><\/p><\/td><td colspan=\"1\" class=\"confluenceTd\">Fragmented MP4 HLS<\/td><td colspan=\"1\" class=\"confluenceTd\"><p>avc1.4d400d,mp4a.40.2<\/p><\/td><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><p><a href=\"https:\/\/devimages.apple.com.edgekey.net\/iphone\/samples\/bipbop\/bipbopall.m3u8\" class=\"rdk-inside-table\" rel=\"nofollow\">http:\/\/devimages.apple.com\/iphone\/samples\/bipbop\/bipbopall.m3u8<\/a><\/p><\/td><td colspan=\"1\" class=\"confluenceTd\">HLS\/TS<\/td><td colspan=\"1\" class=\"confluenceTd\"><p>avc1.4d400d,mp4a.40.2<\/p><\/td><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><p><a rel=\"nofollow\" href=\"https:\/\/bitmovin-a.akamaihd.net\/content\/MI201109210084_1\/mpds\/f08e80da-bf1d-4e3d-8899-f0f6155f6efa.mpd\" class=\"rdk-inside-table\">https:\/\/bitmovin-a.akamaihd.net\/content\/MI201109210084_1\/mpds\/f08e80da-bf1d-4e3d-8899-f0f6155f6efa.mpd<\/a><\/p><\/td><td colspan=\"1\" class=\"confluenceTd\">MPEG DASH<\/td><td colspan=\"1\" class=\"confluenceTd\"><p>avc1.4d400d,mp4a.40.2<\/p><\/td><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><p><a href=\"https:\/\/devstreaming-cdn.apple.com\/videos\/streaming\/examples\/img_bipbop_adv_example_ts\/master.m3u8\" class=\"rdk-inside-table\" rel=\"nofollow\">https:\/\/devstreaming-cdn.apple.com\/videos\/streaming\/examples\/img_bipbop_adv_example_ts\/master.m3u8<\/a><\/p><\/td><td colspan=\"1\" class=\"confluenceTd\">muxed with explicit codecs<\/td><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><p><a href=\"https:\/\/multiplatform-f.akamaihd.net\/i\/multi\/april11\/sintel\/sintel-hd_,512x288_450_b,640x360_700_b,768x432_1000_b,1024x576_1400_m,.mp4.csmil\/master.m3u8\" class=\"rdk-inside-table\" rel=\"nofollow\">https:\/\/multiplatform-f.akamaihd.net\/i\/multi\/april11\/sintel\/sintel-hd_,512x288_450_b,640x360_700_b,768x432_1000_b,1024x576_1400_m,.mp4.csmil\/master.m3u8<\/a><\/p><\/td><td colspan=\"1\" class=\"confluenceTd\">muxed, no codecs<\/td><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><p><a href=\"https:\/\/cph-p2p-msl.akamaized.net\/hls\/live\/2000341\/test\/master.m3u8\" class=\"rdk-inside-table\" rel=\"nofollow\">https:\/\/cph-p2p-msl.akamaized.net\/hls\/live\/2000341\/test\/master.m3u8<\/a><\/p><\/td><td colspan=\"1\" class=\"confluenceTd\">demuxed with explicit codecs<\/td><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><p><a href=\"https:\/\/moctobpltc-i.akamaihd.net\/hls\/live\/571329\/eight\/playlist.m3u8\" class=\"rdk-inside-table\" rel=\"nofollow\">https:\/\/moctobpltc-i.akamaihd.net\/hls\/live\/571329\/eight\/playlist.m3u8<\/a><\/p><\/td><td colspan=\"1\" class=\"confluenceTd\">demuxed, no codecs<\/td><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><p><a class=\"rdk-inside-table\" rel=\"nofollow\" href=\"https:\/\/testassets.dashif.org\/\">https:\/\/testassets.dashif.org\/<\/a><\/p><p><a href=\"http:\/\/dashif.org\" class=\"rdk-inside-table\" rel=\"nofollow\">dashif.org<\/a> &#8211; test content &#8211; hundreds of assets, including multi-drm<\/p><\/td><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><p><a rel=\"nofollow\" class=\"rdk-inside-table\" href=\"https:\/\/bitmovin.com\/mpeg-dash-hls-examples-sample-streams\/\">https:\/\/bitmovin.com\/mpeg-dash-hls-examples-sample-streams\/<\/a><\/p><p>bitmovin &#8211; test content<\/p><\/td><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><p><a href=\"https:\/\/hlstests.eurofins-digitaltesting.com\/\" rel=\"nofollow\" class=\"rdk-inside-table\">https:\/\/hlstests.eurofins-digitaltesting.com<\/a><\/p><p><span>Eurofins Digital Testing&#8217;s HLS Test Suite is a set of test resources designed to test an HTTP Live Streaming player&#8217;s support for various HLS features including fragmented MP4 and failover.<\/span><\/p><\/td><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><\/tr><tr><td colspan=\"1\" class=\"confluenceTd\"><p><a class=\"rdk-inside-table\" rel=\"nofollow\" href=\"https:\/\/ottverse.com\/free-hls-m3u8-test-urls\/\">https:\/\/ottverse.com\/free-hls-m3u8-test-urls\/<\/a>&nbsp;<\/p><\/td><td colspan=\"1\" class=\"confluenceTd\">good suite of multi-lingual URLs<\/td><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><td colspan=\"1\" class=\"confluenceTd\"><br><\/td><\/tr><\/tbody><\/table> <\/div><p><br><\/p><p><br><\/p><p><br><\/p>\n","protected":false},"excerpt":{"rendered":"<p>AAMP is a native media player supporting DASH, HLS, Fragmented mp4, and progressive mp3\/mp4 stream [&hellip;]<\/p>\n","protected":false},"author":28,"featured_media":0,"parent":10015,"menu_order":6,"comment_status":"open","ping_status":"closed","template":"","meta":{"_bbp_topic_count":0,"_bbp_reply_count":0,"_bbp_total_topic_count":0,"_bbp_total_reply_count":0,"_bbp_voice_count":0,"_bbp_anonymous_reply_count":0,"_bbp_topic_count_hidden":0,"_bbp_reply_count_hidden":0,"_bbp_forum_subforum_count":0,"footnotes":""},"class_list":["post-10040","page","type-page","status-publish","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v24.9 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>AAMP Compatibility &amp; Roadmap - RDK Documentation Portal | Documentation<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/developer.rdkcentral.com\/documentation\/documentation\/rdk_video_documentation\/components\/advanced_adaptive_media_player_aamp\/aamp_compatibility__roadmap\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"AAMP Compatibility &amp; Roadmap - RDK Documentation Portal | Documentation\" \/>\n<meta property=\"og:description\" content=\"AAMP is a native media player supporting DASH, HLS, Fragmented mp4, and progressive mp3\/mp4 stream [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/developer.rdkcentral.com\/documentation\/documentation\/rdk_video_documentation\/components\/advanced_adaptive_media_player_aamp\/aamp_compatibility__roadmap\/\" \/>\n<meta property=\"og:site_name\" content=\"RDK Documentation Portal | Documentation\" \/>\n<meta property=\"article:modified_time\" content=\"2025-03-25T05:18:34+00:00\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"5 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/developer.rdkcentral.com\/documentation\/documentation\/rdk_video_documentation\/components\/advanced_adaptive_media_player_aamp\/aamp_compatibility__roadmap\/\",\"url\":\"https:\/\/developer.rdkcentral.com\/documentation\/documentation\/rdk_video_documentation\/components\/advanced_adaptive_media_player_aamp\/aamp_compatibility__roadmap\/\",\"name\":\"AAMP Compatibility &amp; Roadmap - RDK Documentation Portal | Documentation\",\"isPartOf\":{\"@id\":\"https:\/\/developer.rdkcentral.com\/documentation\/#website\"},\"datePublished\":\"2022-06-21T09:10:43+00:00\",\"dateModified\":\"2025-03-25T05:18:34+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/developer.rdkcentral.com\/documentation\/documentation\/rdk_video_documentation\/components\/advanced_adaptive_media_player_aamp\/aamp_compatibility__roadmap\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/developer.rdkcentral.com\/documentation\/documentation\/rdk_video_documentation\/components\/advanced_adaptive_media_player_aamp\/aamp_compatibility__roadmap\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/developer.rdkcentral.com\/documentation\/documentation\/rdk_video_documentation\/components\/advanced_adaptive_media_player_aamp\/aamp_compatibility__roadmap\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/developer.rdkcentral.com\/documentation\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Documentation\",\"item\":\"https:\/\/developer.rdkcentral.com\/documentation\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"RDK Entertainment\",\"item\":\"https:\/\/developer.rdkcentral.com\/documentation\/documentation\/rdk_video_documentation\/\"},{\"@type\":\"ListItem\",\"position\":4,\"name\":\"Components\",\"item\":\"https:\/\/developer.rdkcentral.com\/documentation\/documentation\/rdk_video_documentation\/components\/\"},{\"@type\":\"ListItem\",\"position\":5,\"name\":\"Advanced Adaptive Media Player (AAMP)\",\"item\":\"https:\/\/developer.rdkcentral.com\/documentation\/documentation\/rdk_video_documentation\/components\/advanced_adaptive_media_player_aamp\/\"},{\"@type\":\"ListItem\",\"position\":6,\"name\":\"AAMP Compatibility &amp; Roadmap\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/developer.rdkcentral.com\/documentation\/#website\",\"url\":\"https:\/\/developer.rdkcentral.com\/documentation\/\",\"name\":\"RDK Documentation Portal | Documentation\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/developer.rdkcentral.com\/documentation\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"AAMP Compatibility &amp; Roadmap - RDK Documentation Portal | Documentation","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/developer.rdkcentral.com\/documentation\/documentation\/rdk_video_documentation\/components\/advanced_adaptive_media_player_aamp\/aamp_compatibility__roadmap\/","og_locale":"en_US","og_type":"article","og_title":"AAMP Compatibility &amp; Roadmap - RDK Documentation Portal | Documentation","og_description":"AAMP is a native media player supporting DASH, HLS, Fragmented mp4, and progressive mp3\/mp4 stream [&hellip;]","og_url":"https:\/\/developer.rdkcentral.com\/documentation\/documentation\/rdk_video_documentation\/components\/advanced_adaptive_media_player_aamp\/aamp_compatibility__roadmap\/","og_site_name":"RDK Documentation Portal | Documentation","article_modified_time":"2025-03-25T05:18:34+00:00","twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"5 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/developer.rdkcentral.com\/documentation\/documentation\/rdk_video_documentation\/components\/advanced_adaptive_media_player_aamp\/aamp_compatibility__roadmap\/","url":"https:\/\/developer.rdkcentral.com\/documentation\/documentation\/rdk_video_documentation\/components\/advanced_adaptive_media_player_aamp\/aamp_compatibility__roadmap\/","name":"AAMP Compatibility &amp; Roadmap - RDK Documentation Portal | Documentation","isPartOf":{"@id":"https:\/\/developer.rdkcentral.com\/documentation\/#website"},"datePublished":"2022-06-21T09:10:43+00:00","dateModified":"2025-03-25T05:18:34+00:00","breadcrumb":{"@id":"https:\/\/developer.rdkcentral.com\/documentation\/documentation\/rdk_video_documentation\/components\/advanced_adaptive_media_player_aamp\/aamp_compatibility__roadmap\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/developer.rdkcentral.com\/documentation\/documentation\/rdk_video_documentation\/components\/advanced_adaptive_media_player_aamp\/aamp_compatibility__roadmap\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/developer.rdkcentral.com\/documentation\/documentation\/rdk_video_documentation\/components\/advanced_adaptive_media_player_aamp\/aamp_compatibility__roadmap\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/developer.rdkcentral.com\/documentation\/"},{"@type":"ListItem","position":2,"name":"Documentation","item":"https:\/\/developer.rdkcentral.com\/documentation\/"},{"@type":"ListItem","position":3,"name":"RDK Entertainment","item":"https:\/\/developer.rdkcentral.com\/documentation\/documentation\/rdk_video_documentation\/"},{"@type":"ListItem","position":4,"name":"Components","item":"https:\/\/developer.rdkcentral.com\/documentation\/documentation\/rdk_video_documentation\/components\/"},{"@type":"ListItem","position":5,"name":"Advanced Adaptive Media Player (AAMP)","item":"https:\/\/developer.rdkcentral.com\/documentation\/documentation\/rdk_video_documentation\/components\/advanced_adaptive_media_player_aamp\/"},{"@type":"ListItem","position":6,"name":"AAMP Compatibility &amp; Roadmap"}]},{"@type":"WebSite","@id":"https:\/\/developer.rdkcentral.com\/documentation\/#website","url":"https:\/\/developer.rdkcentral.com\/documentation\/","name":"RDK Documentation Portal | Documentation","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/developer.rdkcentral.com\/documentation\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"}]}},"_links":{"self":[{"href":"https:\/\/developer.rdkcentral.com\/documentation\/wp-json\/wp\/v2\/pages\/10040","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/developer.rdkcentral.com\/documentation\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/developer.rdkcentral.com\/documentation\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/developer.rdkcentral.com\/documentation\/wp-json\/wp\/v2\/users\/28"}],"replies":[{"embeddable":true,"href":"https:\/\/developer.rdkcentral.com\/documentation\/wp-json\/wp\/v2\/comments?post=10040"}],"version-history":[{"count":2,"href":"https:\/\/developer.rdkcentral.com\/documentation\/wp-json\/wp\/v2\/pages\/10040\/revisions"}],"predecessor-version":[{"id":11731,"href":"https:\/\/developer.rdkcentral.com\/documentation\/wp-json\/wp\/v2\/pages\/10040\/revisions\/11731"}],"up":[{"embeddable":true,"href":"https:\/\/developer.rdkcentral.com\/documentation\/wp-json\/wp\/v2\/pages\/10015"}],"wp:attachment":[{"href":"https:\/\/developer.rdkcentral.com\/documentation\/wp-json\/wp\/v2\/media?parent=10040"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}