Displaying 18 results from an estimated 18 matches for "theora_state".
2006 Aug 28
2
add theora_user_yuv_out(theora_state *, yuv_buffer *) to libtheora?
Hi,
I'd like to add user-allocated frame memory to theora via a
theora_user_yuv_out callback. An additional helper function
(theora_user_buffer_is_freeable) would also be required.
With these two functions, user applications could submit memory
buffers directly to libtheora, which would reduce the number of frame
copies in a typical application from two per frame to one per frame.
I've
2005 Aug 05
3
decoder init/clear
Enabling the following function in tests/noop.c:
noop_test_decode ()
{
theora_info ti;
theora_state th;
theora_info_init (&ti);
theora_decode_init (&th, &ti);
theora_clear (&th);
theora_info_clear (&ti);
}
segfaults.
The cause is that theora_decode_init() expects a theora_info structure
which was previously initialized by passing actual bitstream data
through theora...
2004 Aug 04
2
theora_decode_init bug
I found a bug in theora_decode_init when I was implementing the decoder.
theora_decode_init should be zeroing the theora state structure right?
memset(th, 0, sizeof(theora_state));
// Erik
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.xiph.org/pipermail/theora-dev/attachments/20040805/26350ca4/attachment.htm
2004 Feb 06
0
Bug in src/player_example.c
...overed a bug which was preventing the player from working correctly, but
which only showed up in my player; it didn't seem to affect the original
player_example.
I've now found the cause, which is indeed a bug in either player_example.c or
libtheora itself. The example player declares a theora_state structure:
theora_state td;
Assumptions in libtheora assume that the element 'internal_encoder' (and maybe
others) is initialised to NULL. This declaration doesn't guarantee that
condition and this turned out to be the cause of problems I was experiencing
in my player.
A simpl...
2005 Sep 27
1
Question about number of frames in ogg/theora video file.
Hello.
How can I tell the number of frames in ogg/theora video file, without actually reading the file? Or, how can I tell
its playing time (which is basically the same thing).
I didn't find the information in THEORA_STATE, THEORA_INFO, but with the codec installed (illuminable oggcodecs),
Windows Media Player shows the ogg/theora file playing time, before it starts playing the file.
Thanks!
LS
2005 Feb 09
1
Trying to do windows encoding dll
..._length attribute of the ogg_page op
from encode has some reasonable value. But sizeof(*op->body) returns 1...
The output I get is a big black screen...
Any suggestions?
Thanks and best regards,
Florian
(Stuttgart, GERMANY)
#include <windows.h>
#include "theora/theora.h"
theora_state enc_state;
int enc_width, enc_height;
ogg_stream_state enc_stream;
theora_state dec_state;
int dec_width, dec_height;
ogg_stream_state dec_stream;
__declspec (dllexport) void startenc(int width, int height, int bitrate)
{
ogg_stream_init(&enc_stream, 290482);
enc_width = width;
enc_hei...
2005 Aug 05
0
libtheora test suite
...ether the
library contains memory leaks in its constructors and destructors.
This is the output of 'make check' as at changeset:9700:
make check-TESTS
make[2]: Entering directory `/home/conrad/src/xiph.org/theora/tests'
---- + Initializing theora_info struct ...
---- + Initializing theora_state for encoding ...
---- + Clearing theora_state ...
---- + Clearing theora_info struct ...
==9720==
==9720== 256 bytes in 1 blocks are definitely lost in loss record 1 of 1
==9720== at 0x1B90659D: malloc (vg_replace_malloc.c:130)
==9720== by 0x1B9357E4: oggpack_writeinit (bitwise.c:41)
==972...
2005 Oct 05
1
Simple encodig sample...
..._offset = 0;
int frame_y_offset = 0;
int video_hzn = 25;
int video_hzd = 1;
int video_an = 1;
int video_ad = 1;
int video_r = 320000;
int video_q = 16;
int frame_counter = 250;
signed char *yuvframe;
int fetch_video_page( ogg_page *videopage, ogg_stream_state *to,
theora_state *td )
{
yuv_buffer yuv;
ogg_packet op;
yuv.y_width = video_x;
yuv.y_height = video_y;
yuv.y_stride = video_x;
yuv.uv_width = video_x / 2;
yuv.uv_height = video_y / 2;
yuv.uv_stride = video_x / 2;
yuv.y = yuvframe;
yuv.u = yuvframe + video_x * video_y;...
2005 Aug 20
0
libtheora-1.0alpha5 release
....bz2
5add710b80b1cd8f3db9867d1fc9d151 libtheora-1.0alpha5.tar.gz
aa471d76d2c245407752935b20cfc67f libtheora-1.0alpha5.zip
Change summary: (libtheora-1.0alpha5 released 2005 August 20)
* Fixed bitrate management bugs that caused popping and encode
errors
* Fixed a crash problem with the theora_state internals not
being intialized properly.
* new utility function:
- theora_granule_shift()
* dump_video example now makes YUV4MPEG files by default, so
the results can be fed back to encoder_example and similar
tools. The old behavior is restored through the '-r' switch.
* ./c...
2006 Aug 01
1
Encoder init
Well, as you may have seen from my previous messages, I'm doing a webcam
stream program.
The encoder is working well right now, but I'm having some hard time with
the decoder.
I know the parameters used in the encoder, and they are not gonna change, so
I want to init the encoder directly into the client.
The problem is that if I give the values to theora_info and after that I
call
2007 Apr 12
0
Seek problem 1 - can't find frame number
...find a frame that is acceptable (which means it's before the wanted frame,
but not too much). But unfortunately I have have a lot of problems figuring
out the frame number after each jump.
When the decoder is correctly initialized, I can get the frame number by
calling theora_granule_frame(theora_state *,ogg_int64_t). But what do I have
to do while doing the jumps to find this?
This is what the code currently does just after seeking to a new place in the
file:
// Clear the current ogg buffers, find a new page, and fill the buffers again
int result;
ogg_sync_reset(&sync);
while ((result =...
2005 Aug 20
0
libtheora-1.0alpha5 release
....bz2
5add710b80b1cd8f3db9867d1fc9d151 libtheora-1.0alpha5.tar.gz
aa471d76d2c245407752935b20cfc67f libtheora-1.0alpha5.zip
Change summary: (libtheora-1.0alpha5 released 2005 August 20)
* Fixed bitrate management bugs that caused popping and encode
errors
* Fixed a crash problem with the theora_state internals not
being intialized properly.
* new utility function:
- theora_granule_shift()
* dump_video example now makes YUV4MPEG files by default, so
the results can be fed back to encoder_example and similar
tools. The old behavior is restored through the '-r' switch.
* ./c...
2008 Oct 29
1
forcing eos on last theora packet (was Re: Theora 1.0 RC2)
2008/10/29 Romain Beauxis <toots at rastageeks.org>:
>
> I am currently implementing theora for our application.
> In our model for generating ogg streams, we may want to stop
> a stream while not providing a new YUV data buffer for encoding.
>
> Current API doesn't allow such thing, since the eos flag is set by the
> packetout function only when the last_p parameter
2006 Aug 06
0
Newbie: How to rewind a videostream (long)
...oggSyncState;
ogg_page oggPage;
ogg_packet oggPacket;
ogg_stream_state vorbisStreamState;
ogg_stream_state theoraStreamState;
theora_info theoraInfo;
theora_comment theoraComment;
theora_state theoraState;
int theoraPageCount;
yuv_buffer yuvBuffer;
std::ifstream videoStream;
void rewind ();
void initMovie ();
void exitMovie ();...
2005 Nov 11
0
[PATCH] icecast video preview 2
...PREVIEW_KEYFRAME_INTERVAL 3
#include "logging.h"
+#include <png.h>
-
typedef struct _theora_codec_tag
{
theora_info ti;
@@ -40,9 +41,14 @@
int granule_shift;
ogg_int64_t last_iframe;
ogg_int64_t prev_granulepos;
+#ifdef WITH_PNG
+ theora_state td;
+ video_preview_t *video_preview;
+ yuv_buffer yuv;
+ int frame_count;
+#endif
} theora_codec_t;
-
static void theora_codec_free (ogg_state_t *ogg_info, ogg_codec_t *codec)
{
theora_codec_t *theora = codec->specific;
@@ -50,8 +56,17 @@
DEBUG0 ("freei...
2005 Nov 11
2
[PATCH] icecast video preview 2
Updated version of video preview covering frame writing every 3 keyframe
and a xsl typo.
Best regards :)
kysucix
--
Make things as simple as possible, but no simpler. - Albert Einstein
2005 Nov 11
1
[PATCH] icecast video preview
Hi. Here it is my patch to put a video preview of a theora stream in
status.xsl.
I just added a:
<video-preview>1</video-preview>
parameters in icecast.xml.in that control the previewing function.
It encodes a png in $webroot/$mountname.tmp and then move it to
$webroot/$mountname.png
As for now it saves a frame every theora keyframe, which is probably
too heavy for the server but
2006 Oct 06
0
V4L + Theora small app...
...nt iVideoAspNum = 1;
int iVideoAspDen = 1;
int iVideoBitrate = 400000;
int iVideoQuality = 15;
int iFrameCounter;
unsigned char* ucYUVframe = NULL;
FILE* pfOGGclip = NULL;
ogg_stream_state tOGGstreamState;
ogg_page tOGGpage;
ogg_packet tOGGpacket;
theora_state tTheoraState;
theora_info tTheoraInfo;
theora_comment tTheoraComment;
yuv_buffer tYUVbuffer;
int OGG_Init( void )
{
printf( "+++ OGG_Init() \n" );
srand( time( NULL ) );
/* Set up Theora encoder */
/* Theora has a divisible-by-sixteen restriction f...