I'm considering implementing the Theora format in the FPGA of the new camera. The previous model (Elphel 313 - http://www.elphel.com, https://sourceforge.net/projects/elphel) had smaller FPGA and was able to produce just motion JPEG utilizing 97% of the resources. The new (model 333) camera uses 3 times bigger FPGA (and also faster), it also has increased frame buffer and system memory. I've already ported old code to the new camera, it can produce motion JPEG at 1280x1024@30fps (1600x1200@20 fps, 2048x1536@12fps) and uses only 1/3 of the FPGA. So now I'm ready to start working on video compression (probably no motion compensation at first). Considering Ogg Theora format I've got a couple questions I could not find answers to: 1 - Legal stuff. Is it legal to implement VP3-related coding algorithms in FPGA? Or do the licenses to use the related patents apply to the software only? 2 - Where is the best place to find the documentation on the formats and required algorithms (not the source code of the software implementation)?
nice camera.> 1 - Legal stuff. Is it legal to implement VP3-related coding > algorithms in FPGA? Or do the licenses to use the related patents > apply to the software only?to my understanding you are allowed to do so.> 2 - Where is the best place to find the documentation on the formats > and required algorithms (not the source code of the software > implementation)?you might want to have a look at the spec http://v2v.cc/~j/Theora_I_spec.pdf (the latest version is also in svn http://svn.xiph.org/trunk/theora/doc/spec/) j
On Tue, Sep 07, 2004 at 02:41:02PM -0700, Andrey Filippov wrote:> I'm considering implementing the Theora format in the FPGA of the new > camera. The previous model (Elphel 313 - http://www.elphel.com, > https://sourceforge.net/projects/elphel) had smaller FPGA and was > able to produce just motion JPEG utilizing 97% of the resources. The > new (model 333) camera uses 3 times bigger FPGA (and also faster), it > also has increased frame buffer and system memory. I've already ported > old code to the new camera, it can produce motion JPEG at > 1280x1024@30fps (1600x1200@20 fps, 2048x1536@12fps) and uses only 1/3 > of the FPGA. So now I'm ready to start working on video compression > (probably no motion compensation at first).Wow, what a great product! I had no idea such hardware was commercially available. I'll buy one if you get theora working. :) Any plans for a 3 ccd version?> 1 - Legal stuff. Is it legal to implement VP3-related coding > algorithms in FPGA? Or do the licenses to use the related patents > apply to the software only?That was certainly the intent. From-scratch implementations are may be something of a gray area in that the patent grant we have in writing refers only to modifications of the original VP3 source code. To be sure you can at least base some of your work on the refernce source. The text of the grant is online at http://theora.org/svn.html, among other places.> 2 - Where is the best place to find the documentation on the formats > and required algorithms (not the source code of the software > implementation)?As j indicated, the spec is your best option here. Please let us know if you find any discrepancies/bugs/unclear sections. Good luck, and keep us posted! -r
> As j indicated, the spec is your best option here. Please let us know if > you find any discrepancies/bugs/unclear sections.Table 7.47 Weights and Divisors... Wrong column headers: P[0](L) P[1](UL) P[2](U) P[3](R) W[3](L) W[1](UL) W[2](U) W[3](R) PDIV should probably be changed to (that will match the text): P[0](L) P[1](DL) P[2](D) P[3](DR) W[0](L) W[1](DL) W[2](D) W[3](DR) PDIV Andrey