Blame doc/examples/dump_seekindex.c

Packit c32a2d
/*
Packit c32a2d
	dump_seekindex: Scan a mpeg file and dump its seek index.
Packit c32a2d
Packit c32a2d
	copyright 2010 by the mpg123 project - free software under the terms of the LGPL 2.1
Packit c32a2d
	see COPYING and AUTHORS files in distribution or http://mpg123.org
Packit c32a2d
	initially written by Patrick Dehne
Packit c32a2d
*/
Packit c32a2d
Packit c32a2d
#include <mpg123.h>
Packit c32a2d
#include <stdio.h>
Packit c32a2d
Packit c32a2d
int main(int argc, char **argv)
Packit c32a2d
{
Packit c32a2d
	mpg123_handle *m;
Packit c32a2d
	off_t* offsets;
Packit c32a2d
	off_t step;
Packit c32a2d
	size_t fill, i;
Packit c32a2d
Packit c32a2d
	if(argc != 2)
Packit c32a2d
	{
Packit c32a2d
		fprintf(stderr, "\nI will dump the frame index of an MPEG audio file.\n");
Packit c32a2d
		fprintf(stderr, "\nUsage: %s <mpeg audio file>\n\n", argv[0]);
Packit c32a2d
		return -1;
Packit c32a2d
	}
Packit c32a2d
	mpg123_init();
Packit c32a2d
	m = mpg123_new(NULL, NULL);
Packit c32a2d
	mpg123_param(m, MPG123_RESYNC_LIMIT, -1, 0);
Packit c32a2d
	mpg123_param(m, MPG123_INDEX_SIZE, -1, 0);
Packit c32a2d
	mpg123_open(m, argv[1]);
Packit c32a2d
	mpg123_scan(m);
Packit c32a2d
Packit c32a2d
	mpg123_index(m, &offsets, &step, &fill;;
Packit c32a2d
	for(i=0; i
Packit c32a2d
		printf("Frame number %d: file offset %d\n", i * step, offsets[i]);
Packit c32a2d
	}
Packit c32a2d
Packit c32a2d
	mpg123_close(m);
Packit c32a2d
	mpg123_delete(m);
Packit c32a2d
	mpg123_exit();
Packit c32a2d
	return 0;
Packit c32a2d
}