]> git.sesse.net Git - vlc/blobdiff - include/vlc_fourcc.h
phonon: fix typo.
[vlc] / include / vlc_fourcc.h
index 3a1e8a6d6febe78f378edbca2b6d2943e9636bdc..46edc4edbaffa7268c9a7471e7b3901743bff38e 100644 (file)
 #define VLC_CODEC_ADPCM_IMA_WS VLC_FOURCC('A','I','W','S')
 #define VLC_CODEC_VMDAUDIO  VLC_FOURCC('v','m','d','a')
 #define VLC_CODEC_ADPCM_G726 VLC_FOURCC('g','7','2','6')
+#define VLC_CODEC_ADPCM_SWF VLC_FOURCC('S','W','F','a')
 #define VLC_CODEC_AMR_NB    VLC_FOURCC('s','a','m','r')
 #define VLC_CODEC_AMR_WB    VLC_FOURCC('s','a','w','b')
 #define VLC_CODEC_ALAC      VLC_FOURCC('a','l','a','c')
 #define VLC_CODEC_QCELP     VLC_FOURCC('Q','c','l','p')
 #define VLC_CODEC_302M      VLC_FOURCC('3','0','2','m')
 #define VLC_CODEC_DVD_LPCM  VLC_FOURCC('l','p','c','m')
+#define VLC_CODEC_DVDA_LPCM VLC_FOURCC('a','p','c','m')
 #define VLC_CODEC_BD_LPCM   VLC_FOURCC('b','p','c','m')
 #define VLC_CODEC_SDDS      VLC_FOURCC('s','d','d','s')
 #define VLC_CODEC_MIDI      VLC_FOURCC('M','I','D','I')
@@ -333,6 +335,15 @@ VLC_EXPORT( vlc_fourcc_t, vlc_fourcc_GetCodec, ( int i_cat, vlc_fourcc_t i_fourc
  */
 VLC_EXPORT( vlc_fourcc_t, vlc_fourcc_GetCodecFromString, ( int i_cat, const char * ) );
 
+/**
+ * It convert the gives fourcc to an audio codec when possible.
+ *
+ * The fourcc converted are aflt, araw/pcm , twos, sowt. When an incompatible i_bits
+ * is detected, 0 is returned.
+ * The other fourcc goes through vlc_fourcc_GetCodec and i_bits is not checked.
+ */
+VLC_EXPORT( vlc_fourcc_t, vlc_fourcc_GetCodecAudio, ( vlc_fourcc_t i_fourcc, int i_bits ) );
+
 /**
  * It returns the description of the given fourcc or NULL if not found.
  *
@@ -340,5 +351,25 @@ VLC_EXPORT( vlc_fourcc_t, vlc_fourcc_GetCodecFromString, ( int i_cat, const char
  */
 VLC_EXPORT( const char *, vlc_fourcc_GetDescription, ( int i_cat, vlc_fourcc_t i_fourcc ) );
 
+/**
+ * It returns a list (terminated with the value 0) of YUV fourccs in
+ * decreasing priority order for the given chroma.
+ *
+ * It will always return a non NULL pointer that must not be freed.
+ */
+VLC_EXPORT( const vlc_fourcc_t *, vlc_fourcc_GetYUVFallback, ( vlc_fourcc_t ) );
+
+/**
+ * It returns true if the given fourcc is YUV and false otherwise.
+ */
+VLC_EXPORT( bool, vlc_fourcc_IsYUV, ( vlc_fourcc_t ) );
+
+/**
+ * It returns true if the two fourccs are equivalent if their U&V planes are
+ * swapped.
+ */
+VLC_EXPORT( bool, vlc_fourcc_AreUVPlanesSwapped, (vlc_fourcc_t , vlc_fourcc_t ) );
+
+
 #endif /* _VLC_FOURCC_H */