Displaying 13 results from an estimated 13 matches for "vorbis_synthesis_blockin".
2001 May 11
1
question about vorbis_synthesis_blockin
I'm looking at the vorbis_synthesis_blockin and pcmout functions, and I'm
confused about the positioning and determination of centerW wrt adding in
the next set of data. Specifically, it seems legal (in
vorbis_synthesis_pcmout) to return to the user any data up to the centerW
position; however, in vorbis_synthesis_blockin, if you have a...
2005 Jun 23
2
Sample accuracy in reading
...s files (straight reading at either
PCM sample lengths, or time lengths). However, I've run across a question.
When you call vorbis_synthesis_read, I assume that increments the internal
ptrs so you don't get the same data twice. The question is, what happens if
you call vorbis_synthesis and vorbis_synthesis_blockin? Does the next call
have what SHOULD be the next PCM data, or has it incidentally been
invalidated? A little simpler, is it safe to load another page packet and
decode while there is still pcm data waiting?
Thanks,
Christopher
2009 May 12
2
compile error of libtheora example
...yer_example.c:(.text+0x1646): undefined reference to
`vorbis_synthesis_read'
player_example.c:(.text+0x1700): undefined reference to
`ogg_stream_packetout'
player_example.c:(.text+0x171e): undefined reference to `vorbis_synthesis'
player_example.c:(.text+0x1736): undefined reference to
`vorbis_synthesis_blockin'
player_example.c:(.text+0x176b): undefined reference to
`ogg_stream_packetout'
player_example.c:(.text+0x17b4): undefined reference to `theora_control'
player_example.c:(.text+0x17f7): undefined reference to `theora_control'
player_example.c:(.text+0x180d): undefined reference to
`...
2006 Aug 31
0
OpenAl and Vorbis
...if (audiobufFill == fragsize) audiobufReady = true;
} else {
// no pending audio; is there a pending packet to decode?
if(ogg_stream_packetout(&oggStreamState,&oggPacket)>0){
if(vorbis_synthesis(&vorbisBlock,&oggPacket)==0) // test for success!
vorbis_synthesis_blockin(&vorbisDspState,&vorbisBlock);
}else{ // we need more data; break out to suck in another page
break;
}
}
}
//1)grab new data
if(!audiobufReady){
/* no data yet for somebody. Grab another page */
if(!source->requestData()) return 0;
while(ogg...
2006 Jan 19
0
want to know, how much data will be extracted from every single packet
...e byte no X in unpacked audio stream as it will be uncompressed PCM.
for now when program starts, i must run through all pages, getting all packets, extracting all of them and getting result datasize using such code:
....
if (vorbis_synthesis(&vorb_block,&m_packets[cur_packet_num]) == 0)
vorbis_synthesis_blockin(&vorb_dsp_state,&vorb_block);
int bout = vorbis_synthesis_pcmout(&vorb_dsp_state,NULL);
packet_result_data_size[cur_packet_num] =
bout * sizeof(int16) * vorb_info.channels;
....
of coz it's very slow, but i can't help to solve that problem so far. what can u say, folks?
i d...
1999 Oct 11
2
XMMS plugin patch
...d.vi.rate, od.vi.channels);
+ vorbis_ip.set_info(filename, -1, 128000, od.vi.rate, od.vi.channels);
while(i < 2) {
while(i < 2 && ogg_sync_pageout(&od.oy, &od.og) == 1) {
@@ -219,9 +219,11 @@
vorbis_synthesis(&od.vb, &od.op);
vorbis_synthesis_blockin(&od.vd, &od.vb);
if((samples = vorbis_synthesis_pcmout(&od.vd, &pcm)) > 0) {
+ gint16 *outptr = pcmout;
+
for(s = 0; s < samples; s++)
for(c = 0; c < od.vi.channels; c++)
- pcmout[(s * od.vi.channels + c) * s...
2006 Jan 19
0
re: want to know, how much data will be extracted from every single packet; solved but some issues
...found metion about the fact that for unpacking packet X one need unpack packet X - 1 befor.
I honestly tried do this, but in fact works properly only this code:
for (uint32 i = m_packets_number - 6; i < m_packets_number; i++)
{
?if (vorbis_synthesis(&vorb_block,&m_packets[i])==0)
? vorbis_synthesis_blockin(&vorb_dsp_state,&vorb_block);
?int bout = vorbis_synthesis_pcmout(&vorb_dsp_state,NULL);
?if (i == m_packets_number - 1)
?{
? m_packets_real_lengths[i] ?= 2 * m_vorb_info.channels * bout;
? m_data_size += m_packets_real_lengths[i];
?}
?vorbis_synthesis_read(&vorb_dsp_state,bo...
2007 Feb 15
1
Using decoding vorebis from a Vorbis / Theora Video
I am trying to write a media player in c# which will be able to play .ogg
video files which contain Theora video and Vorbis audio streams.
Currently I am using LibOgg and LibTheora (via a SWIG generated wrapper).
This currently is able to decode the video and output it to the screen. I
would like to use LibVorbis to decode the audio stream. Looking at the
documentation it looks like I have to use
2014 Sep 10
4
[RFC PATCH v1 0/3] Introducing ARM SIMD Support
libvorbis does not currently have any simd/vectorization.
Following patches add generic framework for simd/vectorization
and on top, add ARM-NEON simd vectorization using intrinsics.
I was able to get over 34% performance improvement on my
Beaglebone Black which is single Cortex-A8 based CPU.
You can find more information on metrics and procedure I used
to measure at
2001 Apr 05
1
decoder_example -- event driven?
...ogg_sync_pageout(&oy,&og);
ogg_stream_pagein(&os,&og); /* can safely ignore errors at
this point */
/* we have a packet. Decode it */
if(vorbis_synthesis(&vb,&op)==0) /* test for success! */
vorbis_synthesis_blockin(&vd,&vb);
/*
**pcm is a multichannel float vector. In stereo, for
example, pcm[0] is left, and pcm[1] is right. samples is
the size of each channel. Convert the float values
(-1.<=range<=1.) to whatever PCM format and write it out */...
1999 Oct 04
3
Detailed decoder pseudocode (was: Re: ETA?)
...d more data */
if(result==-1){ /* missing or corrupt data at this page position */
/* no reason to complain; already complained above */
}else{
/* we have a packet. Decode it */
char **pcm;
int samples;
vorbis_synthesis(&vb,&op);
vorbis_synthesis_blockin(&vd,&vb);
samples=vorbis_synthesis_pcmout(&vd,&pcm);
if(samples>0){
/* **pcm is a multichannel float vector. In stereo, for
example, pcm[0][...] is left, and pcm[1][...] is right.
samples is the size of each channel. Convert...
2002 Aug 06
0
Getting a GUI to work with Vorbis code
.../* no reason to complain; already complained above */
}else{
/* we have a packet. Decode it */
float **pcm;
int samples;
if(vorbis_synthesis(&vb,&op)==0) /* test for success! */
vorbis_synthesis_blockin(&vd,&vb);
/*
**pcm is a multichannel float vector. In stereo, for
example, pcm[0] is left, and pcm[1] is right. samples is
the size of each channel. Convert the float values
(-1.<=range<=1.) to...
2006 Oct 09
1
Vorbis primitive API examples (LONG)
...k_init(vd, vb);
}
} else {
/* Stream packet, not a header packet */
v_rv0 = vorbis_synthesis(vb, op, 1);
dprintf("Vorbis synthesis: %d %p %p\n", v_rv0, vb, op);
if (v_rv0 == 0) {
/* Block is valid for synthesis and synthesis is ready */
v_rv0 = vorbis_synthesis_blockin(vd, vb);
if (v_rv0 == 0) {
/* Synthesis was successful. Pull out the data */
int pcmSamples = 1;
ogg_int32_t **pcm;
int numChannels = 2; /* FIXME: Should really pull this from info */
int ii, jj;
while(pcmSamples > 0) {
pcmSamples = vorbis_synthesis_pcmout(vd, &...