# transcoders.h File Reference

`#include <opal/buildopts.h>`
`#include <opal/mediafmt.h>`
`#include <opal/mediacmd.h>`
`#include <opal/mediasession.h>`
`#include <rtp/rtp.h>`

Include dependency graph for transcoders.h:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

## Data Structures

class | OpalMediaFormatPair
class | OpalTranscoder
class | OpalFramedTranscoder
class | OpalStreamedTranscoder
class | Opal_Linear16Mono_PCM
class | Opal_PCM_Linear16Mono
class | OpalEmptyFramedAudioTranscoder

## Defines

#define | OPAL_REGISTER_TRANSCODER(cls, input, output) PFACTORY_CREATE(OpalTranscoderFactory, cls, MakeOpalTranscoderKey(input, output), false)
#define | OPAL_REGISTER_L16_MONO()
#define | OPAL_DECLARE_EMPTY_TRANSCODER(fmt)
#define | OPAL_DEFINE_EMPTY_TRANSCODER(fmt)

## Typedefs

typedef std::pair< PString, PString > | OpalTranscoderKey
typedef PFactory< OpalTranscoder, OpalTranscoderKey > | OpalTranscoderFactory
typedef PFactory< OpalTranscoder, OpalTranscoderKey >::KeyList_T | OpalTranscoderList
typedef PFactory< OpalTranscoder, OpalTranscoderKey >::KeyList_T::iterator | OpalTranscoderIterator

## Functions

__inline OpalTranscoderKey | MakeOpalTranscoderKey (const OpalMediaFormat &from, const OpalMediaFormat &to)
__inline OpalTranscoderKey | MakeOpalTranscoderKey (const char *from, const char *to)

## Define Documentation

#define OPAL_DECLARE_EMPTY_TRANSCODER | ( | fmt |  | ) |

Value:

    class Opal_Empty_##fmt##_Encoder : public OpalEmptyFramedAudioTranscoder \
    { \
      public: \
        Opal_Empty_##fmt##_Encoder() \
          : OpalEmptyFramedAudioTranscoder(OpalPCM16, fmt) \
        { } \
    }; \
    class Opal_Empty_##fmt##_Decoder : public OpalEmptyFramedAudioTranscoder \
    { \
      public: \
        Opal_Empty_##fmt##_Decoder() \
          : OpalEmptyFramedAudioTranscoder(fmt, OpalPCM16) \
        { } \
    }; \

#define OPAL_DEFINE_EMPTY_TRANSCODER | ( | fmt |  | ) |

Value:

    OPAL_REGISTER_TRANSCODER(Opal_Empty_##fmt##_Encoder, OpalPCM16, fmt); \
    OPAL_REGISTER_TRANSCODER(Opal_Empty_##fmt##_Decoder, fmt,       OpalPCM16); \

#define OPAL_REGISTER_L16_MONO | ( |  | ) |

Value:

    OPAL_REGISTER_TRANSCODER(Opal_Linear16Mono_PCM, OpalL16_MONO_8KHZ, OpalPCM16); \
      OPAL_REGISTER_TRANSCODER(Opal_PCM_Linear16Mono, OpalPCM16,         OpalL16_MONO_8KHZ)

#define OPAL_REGISTER_TRANSCODER | ( | cls,
|  | input,
|  | output |  | ) | PFACTORY_CREATE(OpalTranscoderFactory, cls, MakeOpalTranscoderKey(input, output), false)

## Typedef Documentation

typedef PFactory<OpalTranscoder, OpalTranscoderKey> OpalTranscoderFactory

typedef PFactory<OpalTranscoder, OpalTranscoderKey>::KeyList_T::iterator OpalTranscoderIterator

typedef std::pair<PString, PString> OpalTranscoderKey

typedef PFactory<OpalTranscoder, OpalTranscoderKey>::KeyList_T OpalTranscoderList

## Function Documentation

__inline OpalTranscoderKey MakeOpalTranscoderKey | ( | const char * | from,
|  | const char * | to |
| ) |  |  |

__inline OpalTranscoderKey MakeOpalTranscoderKey | ( | const OpalMediaFormat & | from,
|  | const OpalMediaFormat & | to |
| ) |  |  |