mov: Move code shared with CAF to a separate file
[ffmpeg.git] / libavformat / isom.h
index 8cc5ab7..2a7486d 100644 (file)
@@ -239,8 +239,21 @@ void ff_mp4_parse_es_descr(AVIOContext *pb, int *es_id);
 
 
 int ff_mov_read_esds(AVFormatContext *fc, AVIOContext *pb);
 
 
 int ff_mov_read_esds(AVFormatContext *fc, AVIOContext *pb);
-enum AVCodecID ff_mov_get_lpcm_codec_id(int bps, int flags);
 
 int ff_mov_read_stsd_entries(MOVContext *c, AVIOContext *pb, int entries);
 
 
 int ff_mov_read_stsd_entries(MOVContext *c, AVIOContext *pb, int entries);
 
+/**
+ * Compute codec id for 'lpcm' tag.
+ * See CoreAudioTypes and AudioStreamBasicDescription at Apple.
+ */
+static inline enum AVCodecID ff_mov_get_lpcm_codec_id(int bps, int flags)
+{
+    /* lpcm flags:
+     * 0x1 = float
+     * 0x2 = big-endian
+     * 0x4 = signed
+     */
+    return ff_get_pcm_codec_id(bps, flags & 1, flags & 2, flags & 4 ? -1 : 0);
+}
+
 #endif /* AVFORMAT_ISOM_H */
 #endif /* AVFORMAT_ISOM_H */