Ejemplo n.º 1
0
int main(int argc, char ** argv)
  {
  bgav_t * b;
  bgav_options_t * opt;

  if(argc < 2)
    {
    fprintf(stderr, "Usage: %s <file>\n", argv[0]);
    return -1;
    }
  
  b = bgav_create();
  opt = bgav_get_options(b);
  bgav_options_set_sample_accurate(opt, 1);
  bgav_options_set_index_callback(opt, index_callback, NULL);
  
  if(!bgav_open(b, argv[1]))
    return -1;
  fprintf(stderr, "\n");
  if(b->demuxer->si)
    bgav_superindex_dump(b->demuxer->si);
  bgav_file_index_dump(b);

  bgav_close(b);
  return 0;
  }
Ejemplo n.º 2
0
// NOT PUBLIC
// Clears the bgav_t struct, destroying and then creating it
// NO NEED TO DO AV LOCK, only called in the opener thread
void ReadMedia::clearFile() {
	if (m_file != NULL)
		bgav_close( m_file );

	m_file = bgav_create();
	bgav_options_copy( bgav_get_options( m_file ) , m_opt);
	m_aeof = true;
	m_veof = true;
	m_pcm_seek = SEEK_NOTHING;
	m_frame_seek = SEEK_NOTHING;
}
Ejemplo n.º 3
0
static void *sfsamples_new(t_symbol *s, int argc, t_atom *argv)
{
    t_sfsamples *x = (t_sfsamples *)pd_new(sfsamples_class);
    // TODO convert args into a filename, so spaces are valid
    x->filename == &s_;

    outlet_new(&x->x_obj, &s_float);

    x->decoder = bgav_create(); 

    return(x);
}
Ejemplo n.º 4
0
static int open_avdec(void * priv, const char * location)
  {
  bgav_options_t * opt;
  avdec_priv * avdec = priv;

  avdec->dec = bgav_create();
  opt = bgav_get_options(avdec->dec);

  bgav_options_copy(opt, avdec->opt);
  
  if(!bgav_open(avdec->dec, location))
    return 0;
  return open_common(avdec);
  }
Ejemplo n.º 5
0
static int open_io_avdec(void * priv, gavf_io_t * io)
  {
  bgav_options_t * opt;
  avdec_priv * avdec = priv;

  avdec->dec = bgav_create();
  opt = bgav_get_options(avdec->dec);

  bgav_options_copy(opt, avdec->opt);
  
  if(!bgav_open_callbacks(avdec->dec, read_callback, 
                          gavf_io_can_seek(io) ? seek_callback : 0, io, 
                          gavf_io_filename(io), gavf_io_mimetype(io),
                          gavf_io_total_bytes(io)))
    return 0;
  return open_common(avdec);
  }