42 lines
1.9 KiB
ActionScript
42 lines
1.9 KiB
ActionScript
/* This Source Code Form is subject to the terms of the Mozilla Public
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
|
package org.mangui.osmf.plugins.utils {
|
|
import org.mangui.hls.event.HLSError;
|
|
import org.mangui.hls.event.HLSEvent;
|
|
import org.osmf.events.MediaErrorCodes;
|
|
|
|
public class ErrorManager {
|
|
|
|
public static function getMediaErrorCode(event : HLSEvent) : int {
|
|
var errorCode : int = MediaErrorCodes.NETSTREAM_PLAY_FAILED;
|
|
if (event && event.error) {
|
|
switch (event.error.code) {
|
|
case HLSError.FRAGMENT_LOADING_ERROR:
|
|
case HLSError.KEY_LOADING_ERROR:
|
|
case HLSError.MANIFEST_LOADING_IO_ERROR:
|
|
errorCode = MediaErrorCodes.IO_ERROR;
|
|
break;
|
|
case HLSError.FRAGMENT_LOADING_CROSSDOMAIN_ERROR:
|
|
case HLSError.KEY_LOADING_CROSSDOMAIN_ERROR:
|
|
case HLSError.MANIFEST_LOADING_CROSSDOMAIN_ERROR:
|
|
errorCode = MediaErrorCodes.SECURITY_ERROR
|
|
break;
|
|
case org.mangui.hls.event.HLSError.FRAGMENT_PARSING_ERROR:
|
|
case org.mangui.hls.event.HLSError.KEY_PARSING_ERROR:
|
|
case org.mangui.hls.event.HLSError.MANIFEST_PARSING_ERROR:
|
|
errorCode = MediaErrorCodes.NETSTREAM_FILE_STRUCTURE_INVALID;
|
|
break;
|
|
case org.mangui.hls.event.HLSError.TAG_APPENDING_ERROR:
|
|
errorCode = MediaErrorCodes.ARGUMENT_ERROR;
|
|
break;
|
|
}
|
|
}
|
|
return errorCode;
|
|
};
|
|
|
|
public static function getMediaErrorMessage(event : HLSEvent) : String {
|
|
return (event && event.error) ? event.error.msg : "Unknown error";
|
|
};
|
|
};
|
|
} |