Android OpenCore error code定义在pv_return_codes.h文件中,下面是具体的错误码定义:
其中的RTSP错误码可以参考:标准RTSP 消息的错误代码
[cpp]
view plain
copy
- typedef int32 PVMFStatus;
- // Return codes
- /*
- Return code for general success
- */
- const PVMFStatus PVMFSuccess = 1;
- /*
- Return code for pending completion
- */
- const PVMFStatus PVMFPending = 0;
- /*
- Return code for never set
- */
- const PVMFStatus PVMFNotSet = 2;
- /*
- Return code for Command Complete
- */
- const PVMFStatus PVMFCmdCompleted = 3;
- // Error codes (negative values)
- /*
- Definition of first error event in range (not an actual error code).
- */
- const PVMFStatus PVMFErrFirst = (-1);
- /*
- Return code for general failure
- */
- const PVMFStatus PVMFFailure = (-1);
- /*
- Error due to cancellation
- */
- const PVMFStatus PVMFErrCancelled = (-2);
- /*
- Error due to no memory being available
- */
- const PVMFStatus PVMFErrNoMemory = (-3);
- /*
- Error due to request not being supported
- */
- const PVMFStatus PVMFErrNotSupported = (-4);
- /*
- Error due to invalid argument
- */
- const PVMFStatus PVMFErrArgument = (-5);
- /*
- Error due to invalid resource handle being specified
- */
- const PVMFStatus PVMFErrBadHandle = (-6);
- /*
- Error due to resource already exists and another one cannot be created
- */
- const PVMFStatus PVMFErrAlreadyExists = (-7);
- /*
- Error due to resource being busy and request cannot be handled
- */
- const PVMFStatus PVMFErrBusy = (-8);
- /*
- Error due to resource not ready to accept request
- */
- const PVMFStatus PVMFErrNotReady = (-9);
- /*
- Error due to data corruption being detected
- */
- const PVMFStatus PVMFErrCorrupt = (-10);
- /*
- Error due to request timing out
- */
- const PVMFStatus PVMFErrTimeout = (-11);
- /*
- Error due to general overflow
- */
- const PVMFStatus PVMFErrOverflow = (-12);
- /*
- Error due to general underflow
- */
- const PVMFStatus PVMFErrUnderflow = (-13);
- /*
- Error due to resource being in wrong state to handle request
- */
- const PVMFStatus PVMFErrInvalidState = (-14);
- /*
- Error due to resource not being available
- */
- const PVMFStatus PVMFErrNoResources = (-15);
- /*
- Error due to invalid configuration of resource
- */
- const PVMFStatus PVMFErrResourceConfiguration = (-16);
- /*
- Error due to general error in underlying resource
- */
- const PVMFStatus PVMFErrResource = (-17);
- /*
- Error due to general data processing
- */
- const PVMFStatus PVMFErrProcessing = (-18);
- /*
- Error due to general port processing
- */
- const PVMFStatus PVMFErrPortProcessing = (-19);
- /*
- Error due to lack of authorization to access a resource.
- */
- const PVMFStatus PVMFErrAccessDenied = (-20);
- /*
- Unused error code. Can be re-defined.
- */
- const PVMFStatus PVMFErrUnused_01 = (-21);
- /*
- Unused error code. Can be re-defined.
- */
- const PVMFStatus PVMFErrUnused_02 = (-22);
- /*
- Error due to the download content length larger than the maximum request size
- */
- const PVMFStatus PVMFErrContentTooLarge = (-23);
- /*
- Error due to a maximum number of objects in use
- */
- const PVMFStatus PVMFErrMaxReached = (-24);
- /*
- Return code for low disk space
- */
- const PVMFStatus PVMFLowDiskSpace = (-25);
- /*
- Error due to the requirement of user-id and password input from app for HTTP basic/digest authentication
- */
- const PVMFStatus PVMFErrHTTPAuthenticationRequired = (-26);
- /*
- PVMFMediaClock specific error. Callback has become invalid due to change in direction of NPT clock.
- */
- const PVMFStatus PVMFErrCallbackHasBecomeInvalid = (-27);
- /*
- PVMFMediaClock specific error. Callback is called as clock has stopped.
- */
- const PVMFStatus PVMFErrCallbackClockStopped = (-28);
- /*
- Error due to missing call for ReleaseMatadataValue() API
- */
- const PVMFStatus PVMFErrReleaseMetadataValueNotDone = (-29);
- /*
- Error due to the redirect error
- */
- const PVMFStatus PVMFErrRedirect = (-30);
- /*
- Error if a given method or API is not implemented. This is NOT the same as PVMFErrNotSupported.
- */
- const PVMFStatus PVMFErrNotImplemented = (-31);
- /*
- DRM license not found
- */
- const PVMFStatus PVMFErrDrmLicenseNotFound = (-32);
- /*
- DRM license has expired due to end time or usage count restriction
- */
- const PVMFStatus PVMFErrDrmLicenseExpired = (-33);
- /*
- DRM license has a start time restriction and current time is too early
- */
- const PVMFStatus PVMFErrDrmLicenseNotYetValid = (-34);
- /*
- DRM rights are insufficient for the requested operation
- */
- const PVMFStatus PVMFErrDrmInsufficientRights = (-35);
- /*
- DRM rights require higher output protection level than supported by the device
- */
- const PVMFStatus PVMFErrDrmOutputProtectionLevel = (-36);
- /*
- DRM clock rollback detected.
- */
- const PVMFStatus PVMFErrDrmClockRollback = (-37);
- /*
- DRM clock is not available or cannot be read
- */
- const PVMFStatus PVMFErrDrmClockError = (-38);
- /*
- DRM license store is corrupted
- */
- const PVMFStatus PVMFErrDrmLicenseStoreCorrupt = (-39);
- /*
- DRM license store is not valid for the device.
- */
- const PVMFStatus PVMFErrDrmLicenseStoreInvalid = (-40);
- /*
- DRM license store access failed
- */
- const PVMFStatus PVMFErrDrmLicenseStoreAccess = (-41);
- /*
- DRM Device data access failed
- */
- const PVMFStatus PVMFErrDrmDeviceDataAccess = (-42);
- /*
- DRM network error occurred in server communication
- */
- const PVMFStatus PVMFErrDrmNetworkError = (-43);
- /*
- DRM device ID cannot be determined
- */
- const PVMFStatus PVMFErrDrmDeviceIDUnavailable = (-44);
- /*
- DRM data is not matched to device
- */
- const PVMFStatus PVMFErrDrmDeviceDataMismatch = (-45);
- /*
- DRM cryptography operation failed
- */
- const PVMFStatus PVMFErrDrmCryptoError = (-46);
- /*
- DRM license not found, but a preview of the content is available.
- */
- const PVMFStatus PVMFErrDrmLicenseNotFoundPreviewAvailable = (-47);
- /*
- Error due to unable to communicate with server
- */
- const PVMFStatus PVMFErrDrmServerError = (-48);
- /*
- Error when a license server requests registration to a domain.
- */
- const PVMFStatus PVMFErrDrmDomainRequired = (-49);
- /*
- Error when a license server requests renewal of a domain registration.
- */
- const PVMFStatus PVMFErrDrmDomainRenewRequired = (-50);
- /*
- Error when a license server reports that the device is not part of the domain.
- */
- const PVMFStatus PVMFErrDrmDomainNotAMember = (-51);
- /*
- Error due to device currently not activated for drm-protected content playback
- */
- const PVMFStatus PVMFErrDrmDeviceNotActivated = (-52);
- /*
- The metering certificate was not found in the store.
- */
- const PVMFStatus PVMFErrDrmMeterCertNotFound = (-53);
- /*
- Service specific server error.
- */
- const PVMFStatus PVMFErrDrmServerServiceSpecific = (-54);
- /*
- An internal server error occurred.
- */
- const PVMFStatus PVMFErrDrmServerInternalError = (-55);
- /*
- The device limit for the domain has been reached.
- */
- const PVMFStatus PVMFErrDrmServerDeviceLimitReached = (-56);
- /*
- The metering identifier is unknown.
- */
- const PVMFStatus PVMFErrDrmServerUnknownMeteringID = (-57);
- /*
- The computer limit for the domain has been reached.
- */
- const PVMFStatus PVMFErrDrmServerComputerLimitReached = (-58);
- /*
- The protocol version specified was not supported by the server.
- */
- const PVMFStatus PVMFErrDrmServerProtocolVersionMismatch = (-59);
- /*
- The account identifier is unknown.
- */
- const PVMFStatus PVMFErrDrmServerUnknownAccountID = (-60);
- /*
- Server redirected request to different server due to protocol mismatch.
- */
- const PVMFStatus PVMFErrDrmServerProtocolRedirect = (-61);
- /*
- */
- /*
- ... this range reserved for future DRM-related errors
- */
- /*
- DRM Operational Error not otherwise specified
- */
- const PVMFStatus PVMFErrDrmOperationFailed = (-81);
- /*
- Error returned when the video container is not valid for progressive playback.
- */
- const PVMFStatus PVMFErrContentInvalidForProgressivePlayback = (-82);
- /*
- RTSP Error codes
- */
- const PVMFStatus PVMFErrRTSP400BadRequest = (-83);
- const PVMFStatus PVMFErrRTSP401Unauthorized = (-84);
- const PVMFStatus PVMFErrRTSP402CodePaymentRequired = (-85);
- const PVMFStatus PVMFErrRTSP403Forbidden = (-86);
- const PVMFStatus PVMFErrRTSP404NotFound = (-87);
- const PVMFStatus PVMFErrRTSP405MethodNotAllowed = (-88);
- const PVMFStatus PVMFErrRTSP406NotAcceptable = (-89);
- const PVMFStatus PVMFErrRTSP407ProxyAuthenticationRequired = (-90);
- const PVMFStatus PVMFErrRTSP408RequestTimeOut = (-91);
- const PVMFStatus PVMFErrRTSP410Gone = (-92);
- const PVMFStatus PVMFErrRTSP411LengthRequired = (-93);
- const PVMFStatus PVMFErrRTSP412PreconditionFailed = (-94);
- const PVMFStatus PVMFErrRTSP413RequestEntityTooLarge = (-95);
- const PVMFStatus PVMFErrRTSP414RequestURITooLarge = (-96);
- const PVMFStatus PVMFErrRTSP415UnsupportedMediaType = (-97);
- const PVMFStatus PVMFErrRTSP451ParameterNotUnderstood = (-98);
- const PVMFStatus PVMFErrRTSP452ConferenceNotFound = (-99);
- const PVMFStatus PVMFErrRTSP453NotEnoughBandwidth = (-100);
- const PVMFStatus PVMFErrRTSP454SessionNotFound = (-101);
- const PVMFStatus PVMFErrRTSP455MethodNotValidInThisState = (-102);
- const PVMFStatus PVMFErrRTSP456HeaderFieldNotValidForResource = (-103);
- const PVMFStatus PVMFErrRTSP457InvalidRange = (-104);
- const PVMFStatus PVMFErrRTSP458ParameterIsReadOnly = (-105);
- const PVMFStatus PVMFErrRTSP459AggregateOperationNotAllowed = (-106);
- const PVMFStatus PVMFErrRTSP460OnlyAggregateOperationAllowed = (-107);
- const PVMFStatus PVMFErrRTSP461UnsupportedTransport = (-108);
- const PVMFStatus PVMFErrRTSP462DestinationUnreachable = (-109);
- const PVMFStatus PVMFErrRTSP480UnsupportedClient = (-110);
- const PVMFStatus PVMFErrRTSP500InternalServerError = (-111);
- const PVMFStatus PVMFErrRTSP501NotImplemented = (-112);
- const PVMFStatus PVMFErrRTSP502BadGateway = (-113);
- const PVMFStatus PVMFErrRTSP503ServiceUnavailable = (-114);
- const PVMFStatus PVMFErrRTSP504GatewayTimeout = (-115);
- const PVMFStatus PVMFErrRTSP505RTSPVersionNotSupported = (-116);
- const PVMFStatus PVMFErrRTSP551OptionNotSupported = (-117);
- /*
- Reserve for future error code extensions
- */
- const PVMFStatus PVMFErrRTSPExtensionCode = (-137);
- /*
- Placeholder for last event in range.
- */
- const PVMFStatus PVMFErrLast = (-137);
- /*
- Macro to tell if a value is in PVMFErr range
- */
- #define IsPVMFErrCode(s) ((PVMFErrLast<=s)&&(s<=PVMFErrFirst))
- // Informational codes (positive values)
- const PVMFStatus PVMFInfoFirst = 10;
- /*
- Notification that a port was created
- */
- const PVMFStatus PVMFInfoPortCreated = 10;
- /*
- Notification that a port was deleted
- */
- const PVMFStatus PVMFInfoPortDeleted = 11;
- /*
- Notification that a port was connected
- */
- const PVMFStatus PVMFInfoPortConnected = 12;
- /*
- Notification that a port was disconnected
- */
- const PVMFStatus PVMFInfoPortDisconnected = 13;
- /*
- Notification that an overflow occurred (not fatal error)
- */
- const PVMFStatus PVMFInfoOverflow = 14;
- /*
- Notification that an underflow occurred (not fatal error)
- */
- const PVMFStatus PVMFInfoUnderflow = 15;
- /*
- Notification that a processing failure occurred (not fatal error)
- */
- const PVMFStatus PVMFInfoProcessingFailure = 16;
- /*
- Notification that end of data stream has been reached
- */
- const PVMFStatus PVMFInfoEndOfData = 17;
- /*
- Notification that a data buffer has been created
- */
- const PVMFStatus PVMFInfoBufferCreated = 18;
- /*
- Notification that buffering of data has started
- */
- const PVMFStatus PVMFInfoBufferingStart = 19;
- /*
- Notification for data buffering level status
- */
- const PVMFStatus PVMFInfoBufferingStatus = 20;
- /*
- Notification that data buffering has completed
- */
- const PVMFStatus PVMFInfoBufferingComplete = 21;
- /*
- Notification that data is ready for use
- */
- const PVMFStatus PVMFInfoDataReady = 22;
- /*
- Notification for position status
- */
- const PVMFStatus PVMFInfoPositionStatus = 23;
- /*
- Notification for node state change
- */
- const PVMFStatus PVMFInfoStateChanged = 24;
- /*
- Notification that data was discarded during synchronization.
- */
- const PVMFStatus PVMFInfoDataDiscarded = 25;
- /*
- Notification that error handling has started
- */
- const PVMFStatus PVMFInfoErrorHandlingStart = 26;
- /*
- Notification that error handling has completed
- */
- const PVMFStatus PVMFInfoErrorHandlingComplete = 27;
- /*
- Notification from a remote source
- */
- const PVMFStatus PVMFInfoRemoteSourceNotification = 28;
- /*
- Notification that license acquisition has started.
- */
- const PVMFStatus PVMFInfoLicenseAcquisitionStarted = 29;
- /*
- Notification that download content length is available
- */
- const PVMFStatus PVMFInfoContentLength = 30;
- /*
- Notification that downloaded content reaches the maximum request size, and will
- be truncated, especially for the case of unavailable content length
- */
- const PVMFStatus PVMFInfoContentTruncated = 31;
- /*
- Notification that source format is not supported, typically sent
- during protocol rollover
- */
- const PVMFStatus PVMFInfoSourceFormatNotSupported = 32;
- /*
- Notification that a clip transition has occurred while playing a playlist
- */
- const PVMFStatus PVMFInfoPlayListClipTransition = 33;
- /*
- Notification that content type for download or HTTP streaming is available
- */
- const PVMFStatus PVMFInfoContentType = 34;
- /*
- Notification that paticular track is disable. This one is on a per track basis.
- */
- const PVMFStatus PVMFInfoTrackDisable = 35;
- /*
- Notification that unexpected data has been obtained, especially for download,
- when client receives from server more data than requested in content-length header
- */
- const PVMFStatus PVMFInfoUnexpectedData = 36;
- /*
- Notification that server discnnect happens after download is complete
- */
- const PVMFStatus PVMFInfoSessionDisconnect = 37;
- /*
- Notification that new meadi stream has been started
- */
- const PVMFStatus PVMFInfoStartOfData = 38;
- /*
- Notification that node has processed a command with ReportObserver marker info
- */
- const PVMFStatus PVMFInfoReportObserverRecieved = 39;
- /*
- Notification that meta data is available with source node
- */
- const PVMFStatus PVMFInfoMetadataAvailable = 40;
- /*
- Notification that duration is available with source node
- */
- const PVMFStatus PVMFInfoDurationAvailable = 41;
- /*
- Notification that Change Position request not supported
- */
- const PVMFStatus PVMFInfoChangePlaybackPositionNotSupported = 42;
- /*
- Notification that the content is poorly inter-leaved
- */
- const PVMFStatus PVMFInfoPoorlyInterleavedContent = 43;
- /*
- Notification for actual playback position after repositioning
- */
- const PVMFStatus PVMFInfoActualPlaybackPosition = 44;
- /*
- Notification that the live buffer is empty
- */
- const PVMFStatus PVMFInfoLiveBufferEmpty = 45;
- /*
- Notification that a server has responded with 200 OK to a Playlist play request
- */
- const PVMFStatus PVMFInfoPlayListSwitch = 46;
- /*
- Notification of configuration complete
- */
- const PVMFStatus PVMFMIOConfigurationComplete = 47;
- /*
- Notification that the video track is falling behind
- */
- const PVMFStatus PVMFInfoVideoTrackFallingBehind = 48;
- /*
- Notification that memory is not available for new RTP packets
- */
- const PVMFStatus PVMFInfoSourceOverflow = 49;
- /*
- Notification for Media data length in shoutcast session
- */
- const PVMFStatus PVMFInfoShoutcastMediaDataLength = 50;
- /*
- Notification for clip bitrate in shoutcast session
- */
- const PVMFStatus PVMFInfoShoutcastClipBitrate = 51;
- /*
- Notification for shoutcast session
- */
- const PVMFStatus PVMFInfoIsShoutcastSesssion = 52;
- /*
- Notification that the engine must select tracks (for e.g. during a 3GPP FCS)
- */
- const PVMFStatus PVMFInfoTrackSelectionNeeded = 53;
- /*
- Notification for corrupted clip during playlist playback
- */
- const PVMFStatus PVMFInfoClipCorrupted = 54;
- /*
- Notification that source format has been updated
- */
- const PVMFStatus PVMFInfoSourceFormatUpdated = 55;
- /*
- Notification for invalid ts in the RTP packet
- */
- const PVMFStatus PVMFErrInvalidRTPTimeInPkt = 56;
- /*
- Notification that pvmiGetBufferAllocatorSpecificInfoSync was unsuccessful
- */
- const PVMFStatus PVMFPvmiBufferAllocatorNotAcquired = 55;
- /*
- Notification that pvmiGetBufferAllocatorSpecificInfoSync was successful
- */
- const PVMFStatus PVMFPvmiBufferAlloctorAcquired = 56;
- /*
- Placeholder for end of range
- */
- const PVMFStatus PVMFInfoLast = 100;