[theora] trying to encode/decode videos using libtheora
    Ribamar Santarosa de Sousa 
    ribamar.santarosa at gmail.com
       
    Sat Aug 26 19:34:24 PDT 2006
    
    
  
On 8/25/06, Ralph Giles <giles at xiph.org> wrote:
> On Thu, Aug 24, 2006 at 10:26:32PM -0300, Ribamar Santarosa de Sousa wrote:
>
> > The source code is here:
> > http://opensvn.csie.org/ribamar/projects/streaming/cvaenc.c
>
> I've only taken a quick look, but it looks like you're not writing out
> all the ogg pages. A packet can map to multiple pages, or many packets
> can map to the same page. You want something like this:
>
>         while((ret = ogg_stream_pageout(&stream, &page) > 0){
>                 fwrite(page.header,1,page.header_len,fout);
>                 fwrite(page.body,1,page.body_len,fout);
>         }
>         if (ret < 0) {
>                 fprintf(finfo, "problem pageout-ing.\n");
>         }
>
Rillian,
        I think I had tried everything you've said (except the
        serial number, but now I did). In truth, I believe to
        have tried any arrangement possible of (packetin,
        pageout, flush) for every ogg_packet, and that the
        updated current code on
http://opensvn.csie.org/ribamar/projects/streaming/cvaenc.c
        is likely to be writing out the things correctly;
        However...
        $ theora/examples/dump_video a.ogg
        YUV4MPEG2 W0 H0 F0:0 Ip A0:0
        Done.
        Maybe the ogg_packets are corrupted. I've isolated the
        theora_decode_init segmentation fault in this file
        http://opensvn.csie.org/ribamar/projects/streaming/decode_init.c
        , which tries to encode and decode only the headers. Any
        light?
Thanks,
Riba
    
    
More information about the theora
mailing list