RTP is a protocol framework that is deliberately not complete. It is not steadfast in certain structures and can be modified in a way to suit a specific application. RTP is intended to be malleable to provide adequate functionality. This characteristic is known as Application Level Framing and is an important aspect of RTP.
So a profile specification document is needed for each application to specify the way RTP is used e.g. to define extensions or modifications to RTP that are specific to a particular class of applications. Participants in a RTP session should agree to a common format. Several header fields can be manipulated according to a specific application.
The extension bit may be set to indicate that the fixed header is followed by exactly one header extension. Extra fields may carry extra information useful for the using application.
The interpretation of the marker is defined by a profile. It is intended to allow significant events such as frame boundaries to be marked in the packet stream. A profile may define additional marker bits or specify that there is no marker bit by changing the number of bits in the payload type field
A profile also specifies a default static mapping of payload type codes to payload formats.