search for: vorbis_synthesis_blockin

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, &...