Group PJMEDIA_ERRNO

group PJMEDIA_ERRNO

PJMEDIA specific error codes.

Defines

PJMEDIA_ERRNO_START

Start of error code relative to PJ_ERRNO_START_USER.

PJMEDIA_ERRNO_END
PJMEDIA_PORTAUDIO_ERRNO_START

Mapping from PortAudio error codes to pjmedia error space.

PJMEDIA_PORTAUDIO_ERRNO_END
PJMEDIA_ERRNO_FROM_PORTAUDIO(err)

Convert PortAudio error code to PJMEDIA error code. PortAudio error code range: 0 >= err >= -10000

PJMEDIA_LIBSRTP_ERRNO_START

Mapping from LibSRTP error codes to pjmedia error space.

PJMEDIA_LIBSRTP_ERRNO_END
PJMEDIA_ERRNO_FROM_LIBSRTP(err)

Convert LibSRTP error code to PJMEDIA error code. LibSRTP error code range: 0 <= err < 200

PJMEDIA_ERROR

General/unknown PJMEDIA error.

PJMEDIA_SDP_EINSDP

Generic invalid SDP descriptor.

PJMEDIA_SDP_EINVER

Invalid SDP version.

PJMEDIA_SDP_EINORIGIN

Invalid SDP origin (o=) line.

PJMEDIA_SDP_EINTIME

Invalid SDP time (t=) line.

PJMEDIA_SDP_EINNAME

Empty SDP subject/name (s=) line.

PJMEDIA_SDP_EINCONN

Invalid SDP connection info (c=) line.

PJMEDIA_SDP_EMISSINGCONN

Missing SDP connection info line.

PJMEDIA_SDP_EINATTR

Invalid attribute (a=) line.

PJMEDIA_SDP_EINRTPMAP

Invalid rtpmap attribute.

PJMEDIA_SDP_ERTPMAPTOOLONG

rtpmap attribute is too long.

PJMEDIA_SDP_EMISSINGRTPMAP

rtpmap is missing for dynamic payload type.

PJMEDIA_SDP_EINMEDIA

Invalid SDP media (m=) line.

PJMEDIA_SDP_ENOFMT

No payload format in the media stream.

PJMEDIA_SDP_EINPT

Invalid payload type in media.

PJMEDIA_SDP_EINFMTP

Invalid SDP “fmtp” attribute.

PJMEDIA_SDP_EINRTCP

Invalid SDP “rtcp” attribute.

PJMEDIA_SDP_EINPROTO

Invalid SDP media transport protocol.

PJMEDIA_SDPNEG_EINSTATE

Invalid state to perform the specified operation.

PJMEDIA_SDPNEG_ENOINITIAL

No initial local SDP.

PJMEDIA_SDPNEG_ENOACTIVE

No currently active SDP.

PJMEDIA_SDPNEG_ENONEG

No current offer or answer.

PJMEDIA_SDPNEG_EMISMEDIA

Media count mismatch in offer and answer.

PJMEDIA_SDPNEG_EINVANSMEDIA

Media type is different in the remote answer.

PJMEDIA_SDPNEG_EINVANSTP

Transport type is different in the remote answer.

PJMEDIA_SDPNEG_EANSNOMEDIA

No common media payload is provided in the answer.

PJMEDIA_SDPNEG_ENOMEDIA

No media is active after negotiation.

PJMEDIA_SDPNEG_NOANSCODEC

No suitable codec for remote offer.

PJMEDIA_SDPNEG_NOANSTELEVENT

No suitable telephone-event for remote offer.

PJMEDIA_SDPNEG_NOANSUNKNOWN

No suitable answer for unknown remote offer.

PJMEDIA_SDP_EMEDIANOTEQUAL

SDP media stream not equal.

PJMEDIA_SDP_EPORTNOTEQUAL

Port number in SDP media descriptor not equal.

PJMEDIA_SDP_ETPORTNOTEQUAL

Transport in SDP media descriptor not equal.

PJMEDIA_SDP_EFORMATNOTEQUAL

Media format in SDP media descriptor not equal.

PJMEDIA_SDP_ECONNNOTEQUAL

SDP connection description not equal.

PJMEDIA_SDP_EATTRNOTEQUAL

SDP attributes not equal.

PJMEDIA_SDP_EDIRNOTEQUAL

SDP media direction not equal.

PJMEDIA_SDP_EFMTPNOTEQUAL

SDP fmtp attribute not equal.

PJMEDIA_SDP_ERTPMAPNOTEQUAL

SDP ftpmap attribute not equal.

PJMEDIA_SDP_ESESSNOTEQUAL

SDP session descriptor not equal.

PJMEDIA_SDP_EORIGINNOTEQUAL

SDP origin not equal.

PJMEDIA_SDP_ENAMENOTEQUAL

SDP name/subject not equal.

PJMEDIA_SDP_ETIMENOTEQUAL

SDP time not equal.

PJMEDIA_CODEC_EUNSUP

Unsupported codec.

PJMEDIA_CODEC_EFAILED

Codec internal creation error.

PJMEDIA_CODEC_EFRMTOOSHORT

Codec frame is too short.

PJMEDIA_CODEC_EPCMTOOSHORT

PCM buffer is too short.

PJMEDIA_CODEC_EFRMINLEN

Invalid codec frame length.

PJMEDIA_CODEC_EPCMFRMINLEN

Invalid PCM frame length.

PJMEDIA_CODEC_EINMODE

Invalid mode.

PJMEDIA_EINVALIDIP

Invalid remote IP address (in SDP).

PJMEDIA_EASYMCODEC

Asymetric codec is not supported.

PJMEDIA_EINVALIDPT

Invalid payload type.

PJMEDIA_EMISSINGRTPMAP

Missing rtpmap.

PJMEDIA_EINVALIMEDIATYPE

Invalid media type.

PJMEDIA_EREMOTENODTMF

Remote does not support DTMF.

PJMEDIA_RTP_EINDTMF

Invalid DTMF digit.

PJMEDIA_RTP_EREMNORFC2833

Remote does not support RFC 2833

PJMEDIA_RTP_EINPKT

General invalid RTP packet error.

PJMEDIA_RTP_EINPACK

Invalid RTP packet packing.

PJMEDIA_RTP_EINVER

Invalid RTP packet version.

PJMEDIA_RTP_EINSSRC

RTP SSRC id mismatch.

PJMEDIA_RTP_EINPT

RTP payload type mismatch.

PJMEDIA_RTP_EINLEN

Invalid RTP packet length.

PJMEDIA_RTP_ESESSRESTART

RTP session restarted.

PJMEDIA_RTP_ESESSPROBATION

RTP session in probation

PJMEDIA_RTP_EBADSEQ

Bad RTP sequence number

PJMEDIA_RTP_EBADDEST

RTP media port destination is not configured

PJMEDIA_RTP_ENOCONFIG

RTP is not configured.

PJMEDIA_ENOTCOMPATIBLE

Generic incompatible port error.

PJMEDIA_ENCCLOCKRATE

Incompatible clock rate

PJMEDIA_ENCSAMPLESPFRAME

Incompatible samples per frame

PJMEDIA_ENCTYPE

Incompatible media type

PJMEDIA_ENCBITS

Incompatible bits per sample

PJMEDIA_ENCBYTES

Incompatible bytes per frame

PJMEDIA_ENCCHANNEL

Incompatible number of channels

PJMEDIA_ENOTVALIDWAVE

Not a valid WAVE file.

PJMEDIA_EWAVEUNSUPP

Unsupported WAVE file.

PJMEDIA_EWAVETOOSHORT

Wave file too short.

PJMEDIA_EFRMFILETOOBIG

Sound frame is too large for file buffer.

PJMEDIA_ENOSNDREC

No suitable audio capture device.

PJMEDIA_ENOSNDPLAY

No suitable audio playback device.

PJMEDIA_ESNDINDEVID

Invalid sound device ID.

PJMEDIA_ESNDINSAMPLEFMT

Invalid sample format for sound device.

PJMEDIA_SRTP_ECRYPTONOTMATCH

SRTP crypto-suite name not match the offerer tag.

PJMEDIA_SRTP_EINKEYLEN

Invalid SRTP key length for specific crypto.

PJMEDIA_SRTP_ENOTSUPCRYPTO

Unsupported SRTP crypto-suite.

PJMEDIA_SRTP_ESDPAMBIGUEANS

SRTP SDP contains ambigue answer.

PJMEDIA_SRTP_ESDPDUPCRYPTOTAG

Duplicated crypto tag.

PJMEDIA_SRTP_ESDPINCRYPTO

Invalid crypto attribute.

PJMEDIA_SRTP_ESDPINCRYPTOTAG

Invalid crypto tag.

PJMEDIA_SRTP_ESDPINTRANSPORT

Invalid SDP media transport for SRTP.

PJMEDIA_SRTP_ESDPREQCRYPTO

SRTP crypto attribute required in SDP.

PJMEDIA_SRTP_ESDPREQSECTP

Secure transport required in SDP media descriptor.

Functions

pj_str_t pjmedia_strerror(pj_status_t status, char *buffer, pj_size_t bufsize)

Get error message for the specified error code. Note that this function is only able to decode PJMEDIA specific error code. Application should use pj_strerror(), which should be able to decode all error codes belonging to all subsystems (e.g. pjlib, pjmedia, pjsip, etc).

Parameters
  • status – The error code.

  • buffer – The buffer where to put the error message.

  • bufsize – Size of the buffer.

Returns

The error message as NULL terminated string, wrapped with pj_str_t.