Commit 7125eb63 authored by Timothy B. Terriberry's avatar Timothy B. Terriberry

Remove the extra argument from vorbis_synthesis().

Add vorbis_synthesis_trackonly() instead, so that this part of the API works
 like mainline libvorbis now.


git-svn-id: https://svn.xiph.org/trunk/Tremor@17374 0101bb08-14d6-0310-b084-bc0e0c8e3800
parent 4ec59aa6
......@@ -51,6 +51,7 @@
vorbis_synthesis_init;
vorbis_synthesis_restart;
vorbis_synthesis;
vorbis_synthesis_trackonly;
vorbis_synthesis_blockin;
vorbis_synthesis_pcmout;
vorbis_synthesis_read;
......
......@@ -171,7 +171,8 @@ extern int vorbis_synthesis_headerin(vorbis_info *vi,vorbis_comment *vc,
extern int vorbis_synthesis_init(vorbis_dsp_state *v,vorbis_info *vi);
extern int vorbis_synthesis_restart(vorbis_dsp_state *v);
extern int vorbis_synthesis(vorbis_block *vb,ogg_packet *op,int decodep);
extern int vorbis_synthesis(vorbis_block *vb,ogg_packet *op);
extern int vorbis_synthesis_trackonly(vorbis_block *vb,ogg_packet *op);
extern int vorbis_synthesis_blockin(vorbis_dsp_state *v,vorbis_block *vb);
extern int vorbis_synthesis_pcmout(vorbis_dsp_state *v,ogg_int32_t ***pcm);
extern int vorbis_synthesis_read(vorbis_dsp_state *v,int samples);
......
......@@ -24,7 +24,7 @@
#include "misc.h"
#include "block.h"
int vorbis_synthesis(vorbis_block *vb,ogg_packet *op,int decodep){
static int _vorbis_synthesis1(vorbis_block *vb,ogg_packet *op,int decodep){
vorbis_dsp_state *vd=vb->vd;
private_state *b=(private_state *)vd->backend_state;
vorbis_info *vi=vd->vi;
......@@ -82,6 +82,14 @@ int vorbis_synthesis(vorbis_block *vb,ogg_packet *op,int decodep){
}
}
int vorbis_synthesis(vorbis_block *vb,ogg_packet *op){
return _vorbis_synthesis1(vb,op,1);
}
int vorbis_synthesis_trackonly(vorbis_block *vb,ogg_packet *op){
return _vorbis_synthesis1(vb,op,0);
}
long vorbis_packet_blocksize(vorbis_info *vi,ogg_packet *op){
codec_setup_info *ci=(codec_setup_info *)vi->codec_setup;
oggpack_buffer opb;
......
......@@ -714,13 +714,13 @@ static int _fetch_and_process_packet(OggVorbis_File *vf,
if(result>0){
/* got a packet. process it */
granulepos=op.granulepos;
if(!vorbis_synthesis(&vf->vb,&op,1)){ /* lazy check for lazy
header handling. The
header packets aren't
audio, so if/when we
submit them,
vorbis_synthesis will
reject them */
if(!vorbis_synthesis(&vf->vb,&op)){ /* lazy check for lazy
header handling. The
header packets aren't
audio, so if/when we
submit them,
vorbis_synthesis will
reject them */
/* suck in the synthesis data and track bitrate */
{
......@@ -1580,9 +1580,9 @@ int ov_pcm_seek(OggVorbis_File *vf,ogg_int64_t pos){
/* remove the packet from packet queue and track its granulepos */
ogg_stream_packetout(vf->os,NULL);
vorbis_synthesis(&vf->vb,&op,0); /* set up a vb with
only tracking, no
pcm_decode */
vorbis_synthesis_trackonly(&vf->vb,&op); /* set up a vb with
only tracking, no
pcm_decode */
vorbis_synthesis_blockin(&vf->vd,&vf->vb);
/* end of logical stream case is hard, especially with exact
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment