struct mp4ff; /* opaque */
-void mp4ff_set_sample_position(struct mp4ff *f, const int32_t track, const int32_t sample);
+void mp4ff_set_sample_position(struct mp4ff *f, int32_t track, int32_t sample);
int32_t mp4ff_total_tracks(const struct mp4ff *f);
-void mp4ff_get_decoder_config(const struct mp4ff *f, const int track,
+void mp4ff_get_decoder_config(const struct mp4ff *f, int track,
unsigned char** ppBuf, unsigned int* pBufSize);
struct mp4ff *mp4ff_open_read(struct mp4ff_callback *f);
void mp4ff_close(struct mp4ff *f);
int32_t mp4ff_get_sample_size(const struct mp4ff *f, int track, int sample);
-uint32_t mp4ff_get_sample_rate(const struct mp4ff *f, const int32_t track);
-uint32_t mp4ff_get_channel_count(const struct mp4ff * f,const int32_t track);
-int32_t mp4ff_num_samples(const struct mp4ff *f, const int track);
+uint32_t mp4ff_get_sample_rate(const struct mp4ff *f, int32_t track);
+uint32_t mp4ff_get_channel_count(const struct mp4ff * f, int32_t track);
+int32_t mp4ff_num_samples(const struct mp4ff *f, int track);
+uint64_t mp4ff_get_duration(const struct mp4ff *f, int32_t track);
struct mp4ff *mp4ff_open_read_metaonly(struct mp4ff_callback *f);
int mp4ff_meta_get_by_index(const struct mp4ff *f, unsigned int index,