Exemplo n.º 1
0
int
main (int argc, char ** argv)
{
  OGGZ * oggz;
  OggzTable * tracks;
  long n;

  if (argc < 2) {
    printf ("usage: %s filename\n", argv[0]);
  }

  tracks = oggz_table_new ();

  if ((oggz = oggz_open ((char *)argv[1], OGGZ_READ | OGGZ_AUTO)) == NULL) {
    printf ("unable to open file %s\n", argv[1]);
    exit (1);
  }

  oggz_set_read_page (oggz, -1, read_page, tracks);

  while ((n = oggz_read (oggz, 1024)) > 0);

  oggz_close (oggz);

  oggz_table_delete (tracks);

  exit (0);
}
Exemplo n.º 2
0
static inline void
dealloc_oggz (/*@special@ */ oggdmux_prc_t * ap_prc)
/*@releases ap_prc->p_oggz_, ap_prc->p_tracks_ @ */
/*@ensures isnull ap_prc->p_oggz_, ap_prc->p_tracks_ @ */
{
  assert (ap_prc);
  if (ap_prc->p_tracks_)
    {
      oggz_table_delete (ap_prc->p_tracks_);
      ap_prc->p_tracks_ = NULL;
    }
  if (ap_prc->p_oggz_)
    {
      /* TODO: why did I comment this out? */
      /*   oggz_close (ap_prc->p_oggz_); */
      ap_prc->p_oggz_ = NULL;
    }
}