#include int main(int argc,char *argv[]) { GstTimeCache *tc; gint64 timestamp; guint64 location; gint group; GstTimeCacheCertainty certain; gst_init(&argc,&argv); tc = gst_timecache_new(); g_return_if_fail(tc != NULL); fprintf(stderr,"current group in timecache is %d\n",gst_timecache_get_group(tc)); // add an entry gst_timecache_add_entry(tc,0LL,0LL); // test for new entry if (gst_timecache_find_location(tc,0LL,×tamp)) fprintf(stderr,"found timestamp %Ld for location 0\n",timestamp); else fprintf(stderr,"ERROR: couldn't find timestamp for newly added entry at 0\n"); // test for entry not there if (gst_timecache_find_location(tc,1024LL,×tamp)) fprintf(stderr,"ERROR: found timestamp %Ld for location 1024\n",timestamp); else fprintf(stderr,"no timestamp found at 1024\n"); // add another entry gst_timecache_add_entry(tc,1024LL,1000000LL); // test for new entry if (gst_timecache_find_location(tc,1024LL,×tamp)) fprintf(stderr,"found timestamp %Ld for location 1024\n",timestamp); else fprintf(stderr,"ERROR: couldn't find timestamp for newly added entry at 1024\n"); // test for new entry if (gst_timecache_find_timestamp(tc,1000000LL,&location)) fprintf(stderr,"found location %Ld for location 1000000\n",location); else fprintf(stderr,"ERROR: couldn't find location for newly added entry at 1000000\n"); // create a new group group = gst_timecache_new_group(tc); // add a couple entries gst_timecache_add_entry(tc, 2048LL,2000000LL); gst_timecache_add_entry(tc, 3072LL,3000000LL); // first test for an existing entry if (gst_timecache_find_timestamp(tc,1000000LL,&location)) fprintf(stderr,"found location %Ld for location 1000000\n",location); else fprintf(stderr,"ERROR: couldn't find location for old entry at 1000000\n"); // then test for an new entry in the current group if (gst_timecache_find_timestamp(tc,3000000LL,&location)) fprintf(stderr,"found location %Ld for location 3000000\n",location); else fprintf(stderr,"ERROR: couldn't find location for old entry at 3000000\n"); }