
{"id":10093,"date":"2022-06-21T09:10:47","date_gmt":"2022-06-21T09:10:47","guid":{"rendered":"https:\/\/developer.rdkcentral.com\/documentation\/documentation\/documentation\/rdk_video_documentation\/components\/open-sourced_components\/advanced_adaptive_media_player_aamp\/iptv_triage_guidelines\/"},"modified":"2025-03-25T05:18:35","modified_gmt":"2025-03-25T05:18:35","slug":"iptv_triage_guidelines","status":"publish","type":"page","link":"https:\/\/developer.rdkcentral.com\/documentation\/documentation\/rdk_video_documentation\/components\/advanced_adaptive_media_player_aamp\/iptv_triage_guidelines\/","title":{"rendered":"IPTV Triage Guidelines"},"content":{"rendered":"<p><br \/>\n <\/p>\n<p>This document is intended to support QA &amp; Field triage teams to do initial analysis for the failures.<\/p>\n<h3 class=\"wp-sub-header\"><strong>Logging of Interest<\/strong><\/h3>\n<div class=\"table-wrap\">\n\n\n<table class=\"wrapped confluenceTable\"><colgroup><col><col><\/colgroup><tbody><tr><td class=\"confluenceTd\"><p><strong>Logging String<\/strong><\/p><\/td><td class=\"confluenceTd\"><p><strong>Description<\/strong><\/p><\/td><\/tr><tr><td class=\"confluenceTd\"><p>systemId is Widevine<\/p><\/td><td class=\"confluenceTd\"><p>Widevine content protection identified from PSSH<\/p><\/td><\/tr><tr><td class=\"confluenceTd\"><p>systemId is PLAYREADY<\/p><\/td><td class=\"confluenceTd\"><p>Playready content protection identified from PSSH<\/p><\/td><\/tr><tr><td class=\"confluenceTd\"><p>initAampDRMSystem :: enter<\/p><\/td><td class=\"confluenceTd\"><p>Init\/create open cdm system<\/p><\/td><\/tr><tr><td class=\"confluenceTd\"><p>generateAampDRMSession :: enter<\/p><\/td><td class=\"confluenceTd\"><p>Open cdm session creation called<\/p><\/td><\/tr><tr><td class=\"confluenceTd\"><p>Setting Widevine as preferred drm<\/p><\/td><td class=\"confluenceTd\"><p>Preferred DRM Set to Widevine<\/p><\/td><\/tr><tr><td class=\"confluenceTd\"><p>MDS server spcific conent metadata found in initdata<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span><\/p><\/td><td class=\"confluenceTd\"><p>Valid content metadata found in PSSH<\/p><\/td><\/tr><tr><td class=\"confluenceTd\"><p>acquireLicense SUCCESS<\/p><\/td><td class=\"confluenceTd\"><p>License acquisition success<\/p><\/td><\/tr><tr><td class=\"confluenceTd\"><p>processKey: Key Usable<\/p><\/td><td class=\"confluenceTd\"><p>Acquired key was processed in open cdm and the key is ready to be used.<\/p><\/td><\/tr><tr><td class=\"confluenceTd\"><p>Found drm session READY with same keyID<\/p><\/td><td class=\"confluenceTd\"><p>Using the already created session since the keyID is not changed for the current tune.<\/p><\/td><\/tr><\/tbody><\/table>\n\n\n<\/div>\n<h3 class=\"wp-sub-header\"><u><strong>AAMP Overview<\/strong><\/u><\/h3>\n<p><span class=\"confluence-embedded-file-wrapper conf-macro output-inline\" data-hasbody=\"false\" data-macro-name=\"view-file\"><\/p>\n\n\n<div class=\"wp-block-file\"><a href=\"\/wp-content\/uploads\/sites\/16\/2023\/09\/AAMP-Overview.pptx\">AAMP-Overview.pptx<\/a><a href=\"\/wp-content\/uploads\/sites\/16\/2023\/09\/AAMP-Overview.pptx\" class=\"wp-block-file__button wp-element-button\" download>Download<\/a><\/div>\n\n\n<p><span class=\"companion-edit-button-placeholder edit-button-overlay\" data-linked-resource-container-id=\"211788259\" data-linked-resource-id=\"211788260\" data-template-name=\"companionEditIcon\" data-source-location=\"embedded-attachment\"> <\/span><\/span><\/p>\n<h3 class=\"wp-sub-header\"><u><strong>Topics<\/strong><\/u><\/h3>\n<h3 class=\"wp-sub-header\"><u><a href=\"\/documentation\/developer_handbook\/components-rdkv\/open-sourced_components__licensed_components\/components\/open-sourced_components\/advanced_adaptive_media_player_aamp\/iptv_triage_guidelines\/crash__hang_issue_analysis\" rel=\"nofollow\">Crash &amp; Hang Issue Analysis<\/a><\/u><\/h3>\n<h3 class=\"wp-sub-header\"><u><a href=\"\/documentation\/developer_handbook\/components-rdkv\/open-sourced_components__licensed_components\/components\/open-sourced_components\/advanced_adaptive_media_player_aamp\/iptv_triage_guidelines\/dash_playback_analysis\" rel=\"nofollow\">DASH Playback Analysis<\/a><\/u><\/h3>\n<h3 class=\"wp-sub-header\"><u><a href=\"\/documentation\/developer_handbook\/components-rdkv\/open-sourced_components__licensed_components\/components\/open-sourced_components\/advanced_adaptive_media_player_aamp\/iptv_triage_guidelines\/hls_playback_analysis\" rel=\"nofollow\">HLS Playback Analysis<\/a><br \/><\/u><\/h3>\n<h3 class=\"wp-sub-header\"><u><a href=\"\/documentation\/developer_handbook\/components-rdkv\/open-sourced_components__licensed_components\/components\/open-sourced_components\/advanced_adaptive_media_player_aamp\/iptv_triage_guidelines\/trick_play_flow_and_analysis\" rel=\"nofollow\">Trick Play Flow and Analysis<\/a><\/u><\/h3>\n<h3 class=\"wp-sub-header\"><u><a href=\"\/documentation\/developer_handbook\/components-rdkv\/open-sourced_components__licensed_components\/components\/open-sourced_components\/advanced_adaptive_media_player_aamp\/iptv_triage_guidelines\/failures_from_out_side_of_rdk\" rel=\"nofollow\">Failures from outside of RDK<\/a><\/u><\/h3>\n<h3 class=\"wp-sub-header\"><u>Useful Links<\/u><\/h3>\n<ol>\n<li>AAMP Playback Flow :&nbsp;<a href=\"\/documentation\/rdk_video_documentation\/components\/open-sourced_components\/advanced_adaptive_media_player_aamp\/aamp_playback_code_flow\" rel=\"nofollow\">AAMP Playback Code Flow<\/a><\/li>\n<li>Producing stack traces from google breakpad minidump manually :&nbsp;&nbsp;<a href=\"https:\/\/wiki.rdkcentral.com\/display\/DOC\/Google+Breakpad\" rel=\"nofollow\">Google Breakpad<\/a><\/li>\n<\/ol>\n<p><u>General Tune Failures<\/u><\/p>\n<h4 id=\"IPTVTriageGuidelines-UnrecoverableFailures-(theplaybackmayfailonthiscase)\"><strong><u>Unrecoverable Failures &#8211; ( the playback may fail on this case )<\/u><\/strong><\/h4>\n<div class=\"table-wrap\">\n\n\n<table class=\"relative-table wrapped confluenceTable\"><colgroup><col style=\"width: 2.16769%\"><col style=\"width: 15.7055%\"><col style=\"width: 5.35787%\"><col style=\"width: 17.7914%\"><col style=\"width: 5.60327%\"><col style=\"width: 5.35787%\"><col style=\"width: 33.5378%\"><col style=\"width: 2.00409%\"><col style=\"width: 2.49489%\"><\/colgroup><tbody><tr><td class=\"highlight-blue confluenceTd\" data-highlight-colour=\"blue\"><h4 id=\"IPTVTriageGuidelines-S.No\">S.No<\/h4><\/td><td class=\"highlight-blue confluenceTd\" data-highlight-colour=\"blue\"><h4 id=\"IPTVTriageGuidelines-AAMPErrorMapCode\">AAMP Error Map Code<\/h4><\/td><td class=\"highlight-blue confluenceTd\" data-highlight-colour=\"blue\"><h4 id=\"IPTVTriageGuidelines-MediaErrorCode\">Media Error Code<\/h4><\/td><td class=\"highlight-blue confluenceTd\" data-highlight-colour=\"blue\"><h4 id=\"IPTVTriageGuidelines-ErrorDescription\">Error Description<\/h4><\/td><td class=\"highlight-blue confluenceTd\" data-highlight-colour=\"blue\"><h4 id=\"IPTVTriageGuidelines-FailureonTuneStart\">Failure on Tune Start<\/h4><\/td><td class=\"highlight-blue confluenceTd\" data-highlight-colour=\"blue\"><h4 id=\"IPTVTriageGuidelines-FailureonMidTune\">Failure on Mid Tune<\/h4><\/td><td class=\"highlight-blue confluenceTd\" data-highlight-colour=\"blue\"><h4 id=\"IPTVTriageGuidelines-Reasonforfailures\">Reason for failures<\/h4><\/td><td class=\"highlight-blue confluenceTd\" data-highlight-colour=\"blue\"><h4 id=\"IPTVTriageGuidelines-HLS\">HLS<\/h4><\/td><td class=\"highlight-blue confluenceTd\" data-highlight-colour=\"blue\"><h4 id=\"IPTVTriageGuidelines-DASH\">DASH<\/h4><\/td><\/tr><tr><td class=\"confluenceTd\">1<\/td><td class=\"confluenceTd\">AAMP_TUNE_INIT_FAILED<\/td><td class=\"confluenceTd\">10<\/td><td class=\"confluenceTd\">AAMP: init failed<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><td class=\"highlight-red confluenceTd\" data-highlight-colour=\"red\"><br><\/td><td class=\"confluenceTd\">1. Manifest request failure.<br>2. Invalid or insufficient data in manifest playlist (content length if &#8220;0&#8221;).<br>3. If av track duration is &#8220;0&#8221;.<br>4. If seek target is out of range.<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><\/tr><tr><td class=\"confluenceTd\">2<\/td><td class=\"confluenceTd\">AAMP_TUNE_INIT_FRAGMENT_DOWNLOAD_FAILURE<\/td><td class=\"confluenceTd\">10<\/td><td class=\"confluenceTd\">AAMP: init fragment download failed<br><br><span><u><strong>String that will be logged<\/strong><\/u><\/span><br>(*) AAMP: init fragment download failed : Http Error Code<br>(*) AAMP: init fragment download failed : Curl Error Code<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><td class=\"confluenceTd\">Failed to download the initialization fragment, results in tune failure.<br><br>(*) Failure with VOD\/cDVR playback, the HTTP error code reflects actual CDN response interms of Curl or HTTP error values.<br><br>(*) Failure with Linear playback via FOG, the HTTP error code reflects FOG reported failure, which does not necessarily imply a CDN download failure.<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><\/tr><tr><td class=\"confluenceTd\">3<\/td><td class=\"confluenceTd\">AAMP_TUNE_INVALID_MANIFEST_FAILURE<\/td><td class=\"confluenceTd\">10<\/td><td class=\"confluenceTd\">AAMP: Invalid Manifest, parse failed<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><td class=\"highlight-red confluenceTd\" data-highlight-colour=\"red\"><br><\/td><td class=\"confluenceTd\">If the format of Manifest is invalid, then it will result in tune falure.<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><\/tr><tr><td class=\"confluenceTd\">4<\/td><td class=\"confluenceTd\">AAMP_TUNE_AUTHORISATION_FAILURE<\/td><td class=\"confluenceTd\">40<\/td><td class=\"confluenceTd\">AAMP: Authorization failure<br><span>(or)<\/span><br>AAMP: Authorization failure majorError<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><td class=\"highlight-red confluenceTd\" data-highlight-colour=\"red\"><br><\/td><td class=\"confluenceTd\">User is not entitled for the requested stream\/content.<br>In HLS : majorError = 3329 and minorError in (12012, 12013)<br>In DASH : Depends on sec-client error codes<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><\/tr><tr><td class=\"confluenceTd\">5<\/td><td class=\"confluenceTd\">AAMP_TUNE_UNTRACKED_DRM_ERROR<\/td><td class=\"confluenceTd\">50<\/td><td class=\"confluenceTd\"><span><u><strong>If 3321:<\/strong> <\/u><\/span>AAMP: Individualization server down majorerror<br><span>(or)<\/span><br>AAMP: DRM Failure majorError<br><span>(or)<\/span><br><span><u><strong>If AES(HLS):<\/strong><\/u><\/span> AAMP: DRM Failure<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><td class=\"highlight-red confluenceTd\" data-highlight-colour=\"red\"><br><\/td><td class=\"confluenceTd\">This can come in the case of unknown DRM errors, we can check the logs for understanding the DRM major and minor errorcodes to map the failure.<br>This can be seen with AVE and AES DRMs.<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><td class=\"highlight-red confluenceTd\" data-highlight-colour=\"red\"><br><\/td><\/tr><tr><td class=\"confluenceTd\">6<\/td><td class=\"confluenceTd\">AAMP_TUNE_DRM_INIT_FAILED<\/td><td class=\"confluenceTd\">50<\/td><td class=\"confluenceTd\">AAMP: DRM Initialization Failed<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><td class=\"highlight-red confluenceTd\" data-highlight-colour=\"red\"><br><\/td><td class=\"confluenceTd\">Widevine\/PlayReady DRM session initialization failed. <br>A platform or implementation issue can cause this error.<\/td><td class=\"highlight-red confluenceTd\" data-highlight-colour=\"red\"><br><\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><\/tr><tr><td class=\"confluenceTd\">7<\/td><td class=\"confluenceTd\">AAMP_TUNE_DRM_DATA_BIND_FAILED<\/td><td class=\"confluenceTd\">50<\/td><td class=\"confluenceTd\">AAMP: InitData-DRM Binding Failed<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><td class=\"highlight-red confluenceTd\" data-highlight-colour=\"red\"><br><\/td><td class=\"confluenceTd\">Failed to bind init data with DRM, could be due to invalid or incomplete initdata<\/td><td class=\"highlight-red confluenceTd\" data-highlight-colour=\"red\"><br><\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><\/tr><tr><td class=\"confluenceTd\">8<\/td><td class=\"confluenceTd\">AAMP_TUNE_DRM_CHALLENGE_FAILED<\/td><td class=\"confluenceTd\">50<\/td><td class=\"confluenceTd\">AAMP: DRM License Challenge Generation Failed<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><td class=\"confluenceTd\">Failed to generate DRM license request. Might be due to outdated data in \/opt\/drm<\/td><td class=\"highlight-red confluenceTd\" data-highlight-colour=\"red\"><br><\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><\/tr><tr><td class=\"confluenceTd\">9<\/td><td class=\"confluenceTd\">AAMP_TUNE_INVALID_DRM_KEY<\/td><td class=\"confluenceTd\">50<\/td><td class=\"confluenceTd\">AAMP: Invalid Key Error, from DRM<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><td class=\"confluenceTd\">Failed to extact license key from license response. It could be because of wrong response data or invalid key.<br>HLS with AES DRM.<br>DASH with WV and PR.<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><\/tr><tr><td class=\"confluenceTd\">10<\/td><td class=\"confluenceTd\">AAMP_TUNE_DRM_KEY_UPDATE_FAILED<\/td><td class=\"confluenceTd\">50<\/td><td class=\"confluenceTd\">AAMP: Failed to process DRM key<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><td class=\"confluenceTd\">Failed to process DRM key. Error code returned from the update API provides more details.<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><td class=\"highlight-red confluenceTd\" data-highlight-colour=\"red\"><br><\/td><\/tr><tr><td class=\"confluenceTd\">11<\/td><td class=\"confluenceTd\">AAMP_TUNE_UNSUPPORTED_STREAM_TYPE<\/td><td class=\"confluenceTd\">50<\/td><td class=\"confluenceTd\">AAMP: Unsupported Stream Type<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><td class=\"confluenceTd\">DRM sessions can be created for audio or video only. Unsupported media type received for session creation.<\/td><td class=\"highlight-red confluenceTd\" data-highlight-colour=\"red\"><br><\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><\/tr><tr><td class=\"confluenceTd\">12<\/td><td class=\"confluenceTd\">AAMP_TUNE_UNSUPPORTED_AUDIO_TYPE<\/td><td class=\"confluenceTd\">50<\/td><td class=\"confluenceTd\">AAMP: No supported Audio Types in Manifest<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><td class=\"highlight-red confluenceTd\" data-highlight-colour=\"red\"><br><\/td><td class=\"confluenceTd\">If the audio type in manifest is unknown by the player, then the playback will be failed.<\/td><td class=\"highlight-red confluenceTd\" data-highlight-colour=\"red\"><br><\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><\/tr><tr><td class=\"confluenceTd\">13<\/td><td class=\"confluenceTd\">AAMP_TUNE_DEVICE_NOT_PROVISIONED<\/td><td class=\"confluenceTd\">52<\/td><td class=\"confluenceTd\">AAMP: Device not provisioned<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><td class=\"highlight-red confluenceTd\" data-highlight-colour=\"red\"><br><\/td><td class=\"confluenceTd\">Device is not provisioned, see se-client error <br>SEC_CLIENT_RESULT_MAC_AUTH_NOT_PROVISIONED<\/td><td class=\"highlight-red confluenceTd\" data-highlight-colour=\"red\"><br><\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><\/tr><tr><td class=\"confluenceTd\">14<\/td><td class=\"confluenceTd\">AAMP_TUNE_FAILED_PTS_ERROR<\/td><td class=\"confluenceTd\">80<\/td><td class=\"confluenceTd\">AAMP: Playback failed due to PTS error<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><td class=\"confluenceTd\">If the injected fragment is discarded by the decoder due to PTS and other errors, then the playback will be failed with this error.<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><\/tr><tr><td class=\"confluenceTd\">15<\/td><td class=\"confluenceTd\">AAMP_TUNE_FAILURE_UNKNOWN<\/td><td class=\"confluenceTd\">100<\/td><td class=\"confluenceTd\">AAMP: Unknown Failure<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><td class=\"confluenceTd\">Otherthan the above described faiures will be logged with unknown failures.<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><\/tr><\/tbody><\/table>\n\n\n<\/div>\n<p><strong><u>Recoverable &#8211; ( on retry handling these case can be recoverable and the playback can play )<\/u><\/strong><\/p>\n<div class=\"table-wrap\">\n\n\n<table class=\"relative-table wrapped confluenceTable\"><colgroup><col style=\"width: 2.21402%\"><col style=\"width: 15.7032%\"><col style=\"width: 5.28905%\"><col style=\"width: 17.9172%\"><col style=\"width: 5.65806%\"><col style=\"width: 5.41205%\"><col style=\"width: 33.5793%\"><col style=\"width: 2.09102%\"><col style=\"width: 2.50103%\"><\/colgroup><tbody><tr><td class=\"highlight-blue confluenceTd\" data-highlight-colour=\"blue\"><h4 id=\"IPTVTriageGuidelines-S.No.1\">S.No<\/h4><\/td><td class=\"highlight-blue confluenceTd\" data-highlight-colour=\"blue\"><h4 id=\"IPTVTriageGuidelines-AAMPErrorMapCode.1\">AAMP Error Map Code<\/h4><\/td><td class=\"highlight-blue confluenceTd\" data-highlight-colour=\"blue\"><h4 id=\"IPTVTriageGuidelines-MediaErrorCode.1\">Media Error Code<\/h4><\/td><td class=\"highlight-blue confluenceTd\" data-highlight-colour=\"blue\"><h4 id=\"IPTVTriageGuidelines-ErrorDescription.1\">Error Description<\/h4><\/td><td class=\"highlight-blue confluenceTd\" data-highlight-colour=\"blue\"><h4 id=\"IPTVTriageGuidelines-FailureonTuneStart.1\">Failure on Tune Start<\/h4><\/td><td class=\"highlight-blue confluenceTd\" data-highlight-colour=\"blue\"><h4 id=\"IPTVTriageGuidelines-FailureonMidTune.1\">Failure on Mid Tune<\/h4><\/td><td class=\"highlight-blue confluenceTd\" data-highlight-colour=\"blue\"><h4 id=\"IPTVTriageGuidelines-Reasonforfailures.1\">Reason for failures<\/h4><\/td><td class=\"highlight-blue confluenceTd\" data-highlight-colour=\"blue\"><h4 id=\"IPTVTriageGuidelines-HLS.1\">HLS<\/h4><\/td><td class=\"highlight-blue confluenceTd\" data-highlight-colour=\"blue\"><h4 id=\"IPTVTriageGuidelines-DASH.1\">DASH<\/h4><\/td><\/tr><tr><td class=\"confluenceTd\">1<\/td><td class=\"confluenceTd\">AAMP_TUNE_MANIFEST_REQ_FAILED<\/td><td class=\"confluenceTd\">10<\/td><td class=\"confluenceTd\">AAMP: Manifest Download failed<br><br><span><u><strong>String that will be logged<\/strong><\/u><\/span><br>(*) AAMP: Manifest Download failed : Http Error Code<br>(*) AAMP: Manifest Download failed : Curl Error Code<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><td class=\"confluenceTd\">If manifest download failed and retry count exceedes MAX_MANIFEST_DOWNLOAD_RETRY(3)<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><\/tr><tr><td class=\"confluenceTd\">2<\/td><td class=\"confluenceTd\">AAMP_TUNE_FRAGMENT_DOWNLOAD_FAILURE<\/td><td class=\"confluenceTd\">10<\/td><td class=\"confluenceTd\">AAMP: fragment download failures<br><br><span><u><strong>String that will be logged<\/strong><\/u><\/span><br>(*) AAMP: fragment download failures : Http Error Code<br>(*) AAMP: fragment download failures : Curl Error Code<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><td class=\"confluenceTd\">If fragment download failed and retry count exceedes MAX_SEG_DOWNLOAD_FAIL_COUNT(10)<br><br>(*) Failure with VOD\/cDVR playback, the HTTP error code reflects actual CDN response interms of Curl or HTTP error values.<br><br>(*) Failure with Linear playback via FOG, the HTTP error code reflects FOG reported failure, which does not necessarily imply a CDN download failure.<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><\/tr><tr><td class=\"confluenceTd\">3<\/td><td class=\"confluenceTd\">AAMP_TUNE_CONTENT_NOT_FOUND<\/td><td class=\"confluenceTd\">20<\/td><td class=\"confluenceTd\">AAMP: Resource was not found at the URL(HTTP 404)<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><td class=\"confluenceTd\">If the manifest \/ fragment download failed with HTTP 404 error, then this error will be logged.<br>May be the requested manifest \/ fragment might not be availble in the server.<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><\/tr><tr><td class=\"confluenceTd\">4<\/td><td class=\"confluenceTd\">AAMP_TUNE_LICENCE_TIMEOUT<\/td><td class=\"confluenceTd\">50<\/td><td class=\"confluenceTd\">AAMP: DRM License Request Timed out<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><td class=\"confluenceTd\">License requset to server got timed out.<\/td><td class=\"highlight-red confluenceTd\" data-highlight-colour=\"red\"><br><\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><\/tr><tr><td class=\"confluenceTd\">5<\/td><td class=\"confluenceTd\">AAMP_TUNE_LICENCE_REQUEST_FAILED<\/td><td class=\"confluenceTd\">50<\/td><td class=\"confluenceTd\">AAMP: DRM License Request Failed<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><td class=\"confluenceTd\">License request failed with server returned error code.<br>HLS with AES DRM.<br>DASH with WV and PR.<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><\/tr><tr><td class=\"confluenceTd\">6<\/td><td class=\"confluenceTd\">AAMP_TUNE_FAILED_TO_GET_KEYID<\/td><td class=\"confluenceTd\">50<\/td><td class=\"confluenceTd\">AAMP: Failed to parse key id from PSSH<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><td class=\"confluenceTd\">Failed to parse key id from init data.<\/td><td class=\"highlight-red confluenceTd\" data-highlight-colour=\"red\"><br><\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><\/tr><tr><td class=\"confluenceTd\">7<\/td><td class=\"confluenceTd\">AAMP_TUNE_FAILED_TO_GET_ACCESS_TOKEN<\/td><td class=\"confluenceTd\">50<\/td><td class=\"confluenceTd\">AAMP: Failed to get access token from Auth Service<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><td class=\"highlight-red confluenceTd\" data-highlight-colour=\"red\"><br><\/td><td class=\"confluenceTd\">Failed to get access token from Auth Service;&nbsp; Access token is required to get license for streams from MDS servers.<\/td><td class=\"highlight-red confluenceTd\" data-highlight-colour=\"red\"><br><\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><\/tr><tr><td class=\"confluenceTd\">8<\/td><td class=\"confluenceTd\">AAMP_TUNE_CORRUPT_DRM_METADATA<\/td><td class=\"confluenceTd\">50<\/td><td class=\"confluenceTd\">AAMP: DRM Metadata error majorError<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><td class=\"highlight-red confluenceTd\" data-highlight-colour=\"red\"><br><\/td><td class=\"confluenceTd\">Multiple times same Metadata is set to AVE-DRM session or a bad Metadata for a stream set.<br>DRM Major errorcode : 3314<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><td class=\"highlight-red confluenceTd\" data-highlight-colour=\"red\"><br><\/td><\/tr><tr><td class=\"confluenceTd\">9<\/td><td class=\"confluenceTd\">AAMP_TUNE_DRM_DECRYPT_FAILED<\/td><td class=\"confluenceTd\">50<\/td><td class=\"confluenceTd\">AAMP: DRM Decryption Failed for Fragments<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><td class=\"confluenceTd\">If fragment decryption and retry count exceedes MAX_SEG_DRM_DECRYPT_FAIL_COUNT(10) or more fragments.<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><td class=\"highlight-red confluenceTd\" data-highlight-colour=\"red\"><br><\/td><\/tr><tr><td class=\"confluenceTd\">10<\/td><td class=\"confluenceTd\">AAMP_TUNE_CORRUPT_DRM_DATA<\/td><td class=\"confluenceTd\">51<\/td><td class=\"confluenceTd\">AAMP: DRM failure due to Corrupt DRM files<br><span>(or)<\/span><br><span><u><strong>If 3322, 3328 :<\/strong> <\/u><\/span>AAMP: DRM Failure possibly due to corrupt drm data; majorError<br><span><u><strong>If 3307 :<\/strong> <\/u><\/span>AAMP: DRM Failure possibly due to corrupt CertStore majorError<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><td class=\"highlight-red confluenceTd\" data-highlight-colour=\"red\"><br><\/td><td class=\"confluenceTd\">Class of AVE DRM library errors that suggest cached DRM files are corrupted.<br>(\/opt\/persistent\/adobe &#8211; might be corrupted)<br>DRM Major errorcode : 3322, 3328, 3307<br>This should trigger automatic &#8220;self healing&#8221; for next tune.<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><td class=\"highlight-red confluenceTd\" data-highlight-colour=\"red\"><br><\/td><\/tr><tr><td class=\"confluenceTd\">11<\/td><td class=\"confluenceTd\">AAMP_TUNE_GST_PIPELINE_ERROR<\/td><td class=\"confluenceTd\">80<\/td><td class=\"confluenceTd\">GstPipeline Error:Decrypt Error<br>GstPipeline Error:Your GStreamer installation is missing a plug-in<br>GstPipeline Error:video decode error<br>GstPipeline Error:HDCP Authentication Failure<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><td class=\"confluenceTd\">Triggered by GST_MESSAGE_ERROR, with human readable description extracted using gst_message_parse_error.<br>Check the logs for better understanding.<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><\/tr><tr><td class=\"confluenceTd\">12<\/td><td class=\"confluenceTd\">AAMP_TUNE_PLAYBACK_STALLED<\/td><td class=\"confluenceTd\">7600<\/td><td class=\"confluenceTd\"><p>AAMP: Playback was stalled due to lack of new fragments<\/p><\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><td class=\"confluenceTd\">AAMP playback stalled because of the non-availability of sufficient fragments.<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><td class=\"highlight-green confluenceTd\" data-highlight-colour=\"green\">X<\/td><\/tr><\/tbody><\/table>\n\n\n<\/div>\n<p><\/p>","protected":false},"excerpt":{"rendered":"<p>This document is intended to support QA &amp; Field triage teams to do initial analysis [&hellip;]<\/p>\n","protected":false},"author":28,"featured_media":0,"parent":10015,"menu_order":22,"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-10093","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>IPTV Triage Guidelines - 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\/iptv_triage_guidelines\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"IPTV Triage Guidelines - RDK Documentation Portal | Documentation\" \/>\n<meta property=\"og:description\" content=\"This document is intended to support QA &amp; Field triage teams to do initial analysis [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/developer.rdkcentral.com\/documentation\/documentation\/rdk_video_documentation\/components\/advanced_adaptive_media_player_aamp\/iptv_triage_guidelines\/\" \/>\n<meta property=\"og:site_name\" content=\"RDK Documentation Portal | Documentation\" \/>\n<meta property=\"article:modified_time\" content=\"2025-03-25T05:18:35+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=\"6 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\/iptv_triage_guidelines\/\",\"url\":\"https:\/\/developer.rdkcentral.com\/documentation\/documentation\/rdk_video_documentation\/components\/advanced_adaptive_media_player_aamp\/iptv_triage_guidelines\/\",\"name\":\"IPTV Triage Guidelines - RDK Documentation Portal | Documentation\",\"isPartOf\":{\"@id\":\"https:\/\/developer.rdkcentral.com\/documentation\/#website\"},\"datePublished\":\"2022-06-21T09:10:47+00:00\",\"dateModified\":\"2025-03-25T05:18:35+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/developer.rdkcentral.com\/documentation\/documentation\/rdk_video_documentation\/components\/advanced_adaptive_media_player_aamp\/iptv_triage_guidelines\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/developer.rdkcentral.com\/documentation\/documentation\/rdk_video_documentation\/components\/advanced_adaptive_media_player_aamp\/iptv_triage_guidelines\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/developer.rdkcentral.com\/documentation\/documentation\/rdk_video_documentation\/components\/advanced_adaptive_media_player_aamp\/iptv_triage_guidelines\/#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 Video\",\"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\":\"IPTV Triage Guidelines\"}]},{\"@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":"IPTV Triage Guidelines - 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\/iptv_triage_guidelines\/","og_locale":"en_US","og_type":"article","og_title":"IPTV Triage Guidelines - RDK Documentation Portal | Documentation","og_description":"This document is intended to support QA &amp; Field triage teams to do initial analysis [&hellip;]","og_url":"https:\/\/developer.rdkcentral.com\/documentation\/documentation\/rdk_video_documentation\/components\/advanced_adaptive_media_player_aamp\/iptv_triage_guidelines\/","og_site_name":"RDK Documentation Portal | Documentation","article_modified_time":"2025-03-25T05:18:35+00:00","twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"6 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\/iptv_triage_guidelines\/","url":"https:\/\/developer.rdkcentral.com\/documentation\/documentation\/rdk_video_documentation\/components\/advanced_adaptive_media_player_aamp\/iptv_triage_guidelines\/","name":"IPTV Triage Guidelines - RDK Documentation Portal | Documentation","isPartOf":{"@id":"https:\/\/developer.rdkcentral.com\/documentation\/#website"},"datePublished":"2022-06-21T09:10:47+00:00","dateModified":"2025-03-25T05:18:35+00:00","breadcrumb":{"@id":"https:\/\/developer.rdkcentral.com\/documentation\/documentation\/rdk_video_documentation\/components\/advanced_adaptive_media_player_aamp\/iptv_triage_guidelines\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/developer.rdkcentral.com\/documentation\/documentation\/rdk_video_documentation\/components\/advanced_adaptive_media_player_aamp\/iptv_triage_guidelines\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/developer.rdkcentral.com\/documentation\/documentation\/rdk_video_documentation\/components\/advanced_adaptive_media_player_aamp\/iptv_triage_guidelines\/#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 Video","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":"IPTV Triage Guidelines"}]},{"@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\/10093","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=10093"}],"version-history":[{"count":5,"href":"https:\/\/developer.rdkcentral.com\/documentation\/wp-json\/wp\/v2\/pages\/10093\/revisions"}],"predecessor-version":[{"id":12205,"href":"https:\/\/developer.rdkcentral.com\/documentation\/wp-json\/wp\/v2\/pages\/10093\/revisions\/12205"}],"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=10093"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}