Displaying 2 results from an estimated 2 matches for "m_oggstream".
Did you mean:
m_poggstream
2002 Mar 27
1
What exactly is threadsafe
...ume we want to use bitrate management */
vorbis_analysis( &m_vorbisBlock, NULL );
vorbis_bitrate_addblock( &m_vorbisBlock );
while( vorbis_bitrate_flushpacket( &m_vorbisDsp, &m_oggPacket ) ) {
/* weld the packet into the bitstream */
ogg_stream_packetin( &m_oggStream, &m_oggPacket );
writePage();
}
}
**Write Page looks like this**:
int result;
result = ogg_stream_pageout( &m_oggStream, &m_oggPage );
while( result != 0 ) {
m_sink->write( (char*)m_oggPage.header, m_oggPage.header_len );
m_sink->write( (char*)m_oggPag...
2008 Nov 30
1
ogg_stream_pageout function...
...ncode them:
ogg_page page;
ogg_packet packet;
m_frameSource.getYUVBits(m_buffer.y, m_buffer.u, m_buffer.v);
theora_encode_YUVin(&m_encoder, &m_buffer);
while(theora_encode_packetout(&m_encoder, isLastFrame, &packet))
ogg_stream_packetin(&m_oggStream, &packet);
while (ogg_stream_pageout(&m_oggStream, &page))
{
fwrite(page.header,page.header_len, 1, m_oggFile);
fwrite(page.body,page.body_len, 1, m_oggFile);
}
This piece of code runs in real-time. I want to remove the last while block
and save theora pack...