view src/libvorbis-1.3.3/doc/vorbisfile/chaining_example_c.html @ 83:ae30d91d2ffe

Replace these with versions built using an older toolset (so as to avoid ABI compatibilities when linking on Ubuntu 14.04 for packaging purposes)
author Chris Cannam
date Fri, 07 Feb 2020 11:51:13 +0000
parents 05aa0afa9217
children
line wrap: on
line source
<html>

<head>
<title>vorbisfile - chaining_example.c</title>
<link rel=stylesheet href="style.css" type="text/css">
</head>

<body bgcolor=white text=black link="#5555ff" alink="#5555ff" vlink="#5555ff">
<table border=0 width=100%>
<tr>
<td><p class=tiny>Vorbisfile documentation</p></td>
<td align=right><p class=tiny>vorbisfile version 1.3.2 - 20101101</p></td>
</tr>
</table>

<h1>chaining_example.c</h1>

<p>
The example program source:

<br><br>
<table border=0 width=100% color=black cellspacing=0 cellpadding=7>
<tr bgcolor=#cccccc>
	<td>
<pre width="80"><b>

<font color="#A020F0">#include &lt;vorbis/codec.h&gt;</font>
<font color="#A020F0">#include &lt;vorbis/vorbisfile.h&gt;</font>

<strong><font color="#4169E1"><a name="main"></a>int main()</font></strong>{
  OggVorbis_File ov;
  int i;

<font color="#A020F0">#ifdef _WIN32</font> <font color="#B22222">/* We need to set stdin to binary mode on windows. */</font>
  _setmode( _fileno( stdin ), _O_BINARY );
<font color="#A020F0">#endif</font>

  <font color="#B22222">/* open the file/pipe on stdin */</font>
  <font color="#4169E1">if</font>(ov_open_callbacks(stdin,&amp;ov,NULL,-1,OV_CALLBACKS_NOCLOSE)&lt;0){
    printf(<font color="#666666">"Could not open input as an OggVorbis file.\n\n"</font>);
    exit(1);
  }
  
  <font color="#B22222">/* print details about each logical bitstream in the input */</font>
  <font color="#4169E1">if</font>(ov_seekable(&amp;ov)){
    printf(<font color="#666666">"Input bitstream contained %ld logical bitstream section(s).\n"</font>,
           ov_streams(&amp;ov));
    printf(<font color="#666666">"Total bitstream playing time: %ld seconds\n\n"</font>,
           (long)ov_time_total(&amp;ov,-1));

  }<font color="#4169E1">else</font>{
    printf(<font color="#666666">"Standard input was not seekable.\n"</font>
           <font color="#666666">"First logical bitstream information:\n\n"</font>);
  }

  <font color="#4169E1">for</font>(i=0;i&lt;ov_streams(&amp;ov);i++){
    vorbis_info *vi=ov_info(&amp;ov,i);
    printf(<font color="#666666">"\tlogical bitstream section %d information:\n"</font>,i+1);
    printf(<font color="#666666">"\t\t%ldHz %d channels bitrate %ldkbps serial number=%ld\n"</font>,
           vi-&gt;rate,vi-&gt;channels,ov_bitrate(&amp;ov,i)/1000,
           ov_serialnumber(&amp;ov,i));
    printf(<font color="#666666">"\t\tcompressed length: %ld bytes "</font>,(long)(ov_raw_total(&amp;ov,i)));
    printf(<font color="#666666">" play time: %lds\n"</font>,(long)ov_time_total(&amp;ov,i));
  }

  ov_clear(&amp;ov);
  <font color="#4169E1">return</font> 0;
}

</b></pre>
	</td>
</tr>
</table>


<br><br>
<hr noshade>
<table border=0 width=100%>
<tr valign=top>
<td><p class=tiny>copyright &copy; 2000-2010 Xiph.Org</p></td>
<td align=right><p class=tiny><a href="http://www.xiph.org/ogg/vorbis/index.html">Ogg Vorbis</a></p></td>
</tr><tr>
<td><p class=tiny>Vorbisfile documentation</p></td>
<td align=right><p class=tiny>vorbisfile version 1.3.2 - 20101101</p></td>
</tr>
</table>

</body>

</html>