I'm trying to use the JPEG codecs for the C64+ (actually for the C674 but they should be compatible AFAIK):
I run into issues as I need an ELF library instead of the provided COFF. I'm using the dm8168 and I make it all the way through compiling but fail on linking due to the incompatible format.
What is the possibility of getting an ELF version of the JPEG encoder?
JPEG codecs in ELF format are available for C6678 @ http://software-dl.ti.com/dsps/dsps_public_sw/codecs/C6678_Video_Codecs/01_00_001/index_FDS.html. Can you please check if those work for you?
thanks for the prompt response. I won't be able to test this until next week unfortunately due to some other priorities but I'll keep you posted.
I did download the package and confirmed it was an ELF library so we're off to a good start at least.
I'm going to start the same task in the DM8168, I have read a lot of posts where some people says that is not possible to port the JPEG encoder, however I will try it. I just wanted to ask you If you got some good result doing this and if that is the case any help about how to do it is really appreciated, maybe some useful links that you could have found or some kind of guide could be pretty useful for me!
Thanks in advance Andreas,
I had to abandon my efforts due to shifting priorities but I'm getting to the point of picking it up again. I never really made any progress with the C66 version as that was the only ELF based at that moment but according to some TI sources, that is our best bet.
Would love to collaborate and see how close we can get.
I understand. I started trying to make the codec compile with the EZSDK and currently I'm trying to solve some build issues. I am using this guide as first step: http://processors.wiki.ti.com/index.php/MP3_Decoder_Integration_in_EZSDK
Since some months ago I was able to integrate the mp3 codec, the thing is that in that guide, we are adding the codec to the audioenc component of openMax, so basically what I'm trying to do is to use the vlpb component instead of the aenc since this a generic component which takes an input buffers and copies it to an output buffer in the DSP, this is in the DSP side. About the arm side, I included the codec in the encode demo instead of the adec_snt demo.
So from my point of view this should be the plan (and let me know if it makes sense):1. Port the codec and solve any build errors2. Try to use some functions of the codec from the vlpb component to see if it works, if so...3. Create an omx component for the JPEG encoder using the vlpb as reference (component-sources/omx_XX_XX_XX_XX/src/ti/omx/comp/vlpb)
4. Finally we would be able to use the openMax API to get access to the component from some application
Comments? Does TI has some recommendation? or maybe you have this already done?
the MP3 decoder is a great starting point. I did the same thing and created a jpegenc component for OMX, except I derived it from the audio encode component.
The problem is the codec library itself as it comes in the wrong format so the linker will fail. I tried it with the C66 version and it gets me further but I still end up with link errors that are internal to the linker.
My current plan of attack is similar to yours. Port pieces of my software JPEG encoder to run on the DSP using IMGLib. Vlpb is a great reference point. I don't necessarily need to run it as an OMX component as long as it can be used from within OMX.
Any TI comments would be really helpful at this point. The quickest for everyone would be if someone on the inside (with access to the JPEG DSP source code) could just recompile it. I'd be happy to test it.
Andreas Engberg76462 I did the same thing and created a jpegenc component for OMX
Could you share the component? at least I would save time on that and be focused solving the linker errors.
Andreas Engberg76462Port pieces of my software JPEG encoder to run on the DSP using IMGLib.
I didn't know about IMGLib, so it is a C library and you are thinking about replacing some functions to perform them in a optimized way in the DSP? That would be like create the codec again right?
I agree with you, can someone from TI could help on this?
Thanks Andreas! I will keep you informed about any progress on this!
I can absolutely share the component with you. Contact me via email (andreas.engberg at arthrex dot com) as I just need to know a few things about you and the company you work for.
IMGLib is a DSP library with a number of image functions. It's capable of doing most of the work that a JPEG encoder needs but I'd rather use a TI defined codec. But you are correct, in essence writing a new codec.
Hi Andreas and David,
Can you please move this discussion to DM814x/816x forum: http://e2e.ti.com/support/dsp/davinci_digital_media_processors/default.aspx?
IVAHD decoder (188.8.131.52) is already part of EZSDK (184.108.40.206), even including OMX component. DM81xx team can provide IVAHD JPEG encoder (it exists) as well, and you may be able to modify JPEG dec OMX component to create JPEG enc OMX component.
We'll move back to the DM81xx folder. I think that's where I started before being moved over here but that was before EZSDK 5.04
I'll look into the IVAHD JPEG encoder.
This JPEG codec is compatible with DM8148? I can't find JPEG codec for DM8148。please help me。
All content and materials on this site are provided "as is". TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with regard to these materials, including but not limited to all implied warranties and conditions of merchantability, fitness for a particular purpose, title and non-infringement of any third party intellectual property right. TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with respect to these materials. No license, either express or implied, by estoppel or otherwise, is granted by TI. Use of the information on this site may require a license from a third party, or a license from TI.
TI is a global semiconductor design and manufacturing company. Innovate with 100,000+ analog ICs andembedded processors, along with software, tools and the industry’s largest sales/support staff.