This fork adds a GLSL mlt_image type and filtering: https://github.com/hftom/mlt
If you extend it to support a new image type that holds elementary stream frames (JPEG2000), you can do _all_ processing on the GPU with GL output. I do think it can make sense to do what you want to do in that fork. However, I cannot help you a whole lot with your specific question other than to say, see src/modules/avformat/producer_avformat.c. I am still reviewing that branch and not in a position to help you extend it now. I wish you luck, and it sounds interesting! On Fri, Aug 3, 2012 at 12:40 AM, Sahan Devapriya <[email protected]> wrote: > Dear Brian, > > Sorry If am repeating the same thing again and again. > > My concern is that the advantage gained by using CUDA is lost by several > transfers between GPU and CPU, if I have got your point right. > > Is there any way I can hack avformat producer to output only demuxed JPEG > frames to MLT frame struct which can presumably be directed to a consumer > which then upload those frames to GPU within a OpenGL context where CUDA > decoding and OpenGL scaling things going to happen. > > I went through avformat producer and could not still able to spot the place > where AVCodec related things like avcodec_decode_video2() is called. > > Please help. > > What are your advices. > > > Regards > > Sahan > > > > On Fri, Aug 3, 2012 at 9:27 AM, Brian Matherly <[email protected]> wrote: >> >> >What I expect from MLT is reusing great collection of modules and tap >> > into GL consumer which I came across MLT development list for taking care >> > of >> > presenting images at consumer. >> >> >Is it possible to adapt avformat in any way that it can produce >> > uncompressed JPEG2000 frames destined to consumer. >> >Please shed some light. >> >Thank you very much for your thoughts. >> >> >> I don't see a way to do it. The "great collection of modules" you refer to >> assume that a frame is uncompressed. They wouldn't be able to do anything >> with JPEG2000 frames. >> >> The closest you could get would be: >> >> 1) Create a new producer that uses libavformat to demux the MXF file AND >> uses CUDA to decode the frames. Then you would have a producer that provides >> uncompressed frames like all the other producers. >> >> 2) That new producer could pass the uncompressed frames to a GL consumer >> for render to the screen. >> >> ~BM >> > > > ------------------------------------------------------------------------------ > Live Security Virtual Conference > Exclusive live event will cover all the ways today's security and > threat landscape has changed and how IT managers can respond. Discussions > will include endpoint security, mobile security and the latest in malware > threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ > _______________________________________________ > Mlt-devel mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/mlt-devel > -- +-DRD-+ ------------------------------------------------------------------------------ Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ _______________________________________________ Mlt-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/mlt-devel
