tag:blogger.com,1999:blog-3944174827064012298.post2974702115836015245..comments2023-12-19T16:55:37.721+01:00Comments on The Bugfree Blog ;-): QML Components for Video Decoding and Rendering POC Code AvailableLuca Carlonhttp://www.blogger.com/profile/05071568155815750619noreply@blogger.comBlogger25125tag:blogger.com,1999:blog-3944174827064012298.post-20756128596954991952013-09-18T12:35:45.240+02:002013-09-18T12:35:45.240+02:00Thanks luca for your pointers.
Following settings ...Thanks luca for your pointers.<br />Following settings helped to resolve the color depth issue in QML!<br /><br />QSurfaceFormat curSurface = QQuickWindow::format();<br />curSurface.setSamples(24);<br />curSurface.setRedBufferSize(8);<br />curSurface.setGreenBufferSize(8);<br />curSurface.setBlueBufferSize(8);<br />QQuickWindow::setFormat( curSurface );<br /><br />Now, how to optimize rendering performance, I am seeing some jittery video while rendering in QML as compared to smooth video while directly playing in omxplyaer. Any idea where to look at for the source of the issue?<br /><br />Please note this performance issue we are getting with 16bit default rendering as well.<br /><br />samhttps://www.blogger.com/profile/03334895370989340209noreply@blogger.comtag:blogger.com,1999:blog-3944174827064012298.post-43374144756452198692013-09-14T15:05:54.702+02:002013-09-14T15:05:54.702+02:00Yes, probably not using 24bits to represent colors...Yes, probably not using 24bits to represent colors.Luca Carlonhttps://www.blogger.com/profile/05071568155815750619noreply@blogger.comtag:blogger.com,1999:blog-3944174827064012298.post-62990118522409087302013-09-14T15:03:38.559+02:002013-09-14T15:03:38.559+02:00Images also loosing the colors at gradient areas r...Images also loosing the colors at gradient areas rendered directly in QML. Any idea what going wrong with QML?samhttps://www.blogger.com/profile/03334895370989340209noreply@blogger.comtag:blogger.com,1999:blog-3944174827064012298.post-77036750926462380772013-09-14T15:01:30.448+02:002013-09-14T15:01:30.448+02:00This comment has been removed by the author.samhttps://www.blogger.com/profile/03334895370989340209noreply@blogger.comtag:blogger.com,1999:blog-3944174827064012298.post-21904390897140478392013-09-14T14:15:34.799+02:002013-09-14T14:15:34.799+02:00Check that images showed in QML are 24bit depth.Check that images showed in QML are 24bit depth.Luca Carlonhttps://www.blogger.com/profile/05071568155815750619noreply@blogger.comtag:blogger.com,1999:blog-3944174827064012298.post-3208372747336363292013-09-14T13:00:48.485+02:002013-09-14T13:00:48.485+02:00yes.
1. I tried both fbset -depth 24/32
2. In add...yes. <br />1. I tried both fbset -depth 24/32<br />2. In addition i also confirmed hard coding 8/8/8/8 in libqeglfs.so where it enumerated from driver.<br />Do i need test 24bit only afresh both the things above?samhttps://www.blogger.com/profile/03334895370989340209noreply@blogger.comtag:blogger.com,1999:blog-3944174827064012298.post-21456114693568991982013-09-14T12:28:41.929+02:002013-09-14T12:28:41.929+02:00Are you running 24bit color depth?Are you running 24bit color depth?Luca Carlonhttps://www.blogger.com/profile/05071568155815750619noreply@blogger.comtag:blogger.com,1999:blog-3944174827064012298.post-89237212196702172962013-09-14T11:58:45.441+02:002013-09-14T11:58:45.441+02:00I am seeing the video quality issue (looks image c...I am seeing the video quality issue (looks image color quality problem) while comparing video playback between omxplayer directly and omx-component within the QML, that luca published. Is this because of color conversion (YUV->RGB) is happening between OMX.egl.video.renderer used in the omx pipline and QML domain. Is this problem could be resolved by exploring direct YUV rendering support in QML? If some one has explored this part i am looking for the help/suggestions to resolve the issue.samhttps://www.blogger.com/profile/03334895370989340209noreply@blogger.comtag:blogger.com,1999:blog-3944174827064012298.post-91264366475923755112013-04-09T11:16:04.953+02:002013-04-09T11:16:04.953+02:00I see now, thanks!I see now, thanks!Luca Carlonhttps://www.blogger.com/profile/05071568155815750619noreply@blogger.comtag:blogger.com,1999:blog-3944174827064012298.post-41276528770051154552013-04-09T09:36:50.236+02:002013-04-09T09:36:50.236+02:00Looking at https://github.com/carlonluca/pi/blob/3...Looking at https://github.com/carlonluca/pi/blob/30165151c34bfd09fe26037793cfa90063843033/PiOmxTextures/tools/compile_ffmpeg.sh<br /><br />Still seems to have the issue.Matthewhttps://www.blogger.com/profile/04131963012002020146noreply@blogger.comtag:blogger.com,1999:blog-3944174827064012298.post-91837276624382702332013-04-09T08:06:12.439+02:002013-04-09T08:06:12.439+02:00What you report seems to be some days old. Please,...What you report seems to be some days old. Please, refer to github.Luca Carlonhttps://www.blogger.com/profile/05071568155815750619noreply@blogger.comtag:blogger.com,1999:blog-3944174827064012298.post-5139421674764553802013-04-09T04:58:43.117+02:002013-04-09T04:58:43.117+02:00Found the problem, in compile_ffmpeg.sh, instead o...Found the problem, in compile_ffmpeg.sh, instead of reading<br />cd ffmpeg<br />git clone git://source.ffmpeg.org/ffmpeg.git ffmpeg_src<br />git checkout master <br />git checkout 8c51ea54897c2d8671b38efecc1422ad4ad344f9<br />cd ffmpeg_src<br /><br />it should be<br />cd ffmpeg<br />git clone git://source.ffmpeg.org/ffmpeg.git ffmpeg_src<br />cd ffmpeg_src<br />git checkout master <br />git checkout 8c51ea54897c2d8671b38efecc1422ad4ad344f9<br /><br />otherwise it's operating on the Pi git repo, not the FFMpeg one!Matthewhttps://www.blogger.com/profile/04131963012002020146noreply@blogger.comtag:blogger.com,1999:blog-3944174827064012298.post-57258296197049701692013-04-08T00:03:23.497+02:002013-04-08T00:03:23.497+02:00Awesome, thanks..will do. Awesome, thanks..will do. Matthewhttps://www.blogger.com/profile/04131963012002020146noreply@blogger.comtag:blogger.com,1999:blog-3944174827064012298.post-22542227480193396762013-04-06T12:54:33.738+02:002013-04-06T12:54:33.738+02:00Hi. Thank you very much for your work!
First of a...Hi. Thank you very much for your work!<br /><br />First of all: I tried the revision b30c3acffdb148e13897123640a41acece5ab6cf, which I suppose is the one you're working on. I got no build issue with that. Consider in the last weeks I merged recent sources of the omxplayer, which is based on a more recent version of ffmpeg. Maybe you're building against a different version of ffmpeg. The compile_ffmpeg.sh script now clones the correct revision of ffmpeg and builds it.<br />If I'm not mistaken, CodecID was removed in a recent version of ffmpeg.<br /><br />As for the lib, I started to do that work a week ago and it is now available in git, as I need it for another project. Anyway, it is not complete, it only exports the OMX_MediaProcessor class. If you want to merge your changes it will surely be very useful!<br /><br />For the resource leaks, I have to say I never tested more than a couple of media :-) Any work you do on that is surely useful, and I don't plan to work on that soon.<br />Consider that there are leaks I intentionally left behind for testing, and I added TODO comments. You might want to have a look at those.Luca Carlonhttps://www.blogger.com/profile/05071568155815750619noreply@blogger.comtag:blogger.com,1999:blog-3944174827064012298.post-14565519039887578342013-04-06T08:14:53.944+02:002013-04-06T08:14:53.944+02:00Hi,
Awesome effort...I've managed to use you...Hi,<br /> Awesome effort...I've managed to use your stuff and turn it into a shared library for use in another project, but I cloned your repo the other day, and tried compiling and a few things broke, I'm using the FFMpeg and the buildFFMpeg script, but getting :<br />In file included from ../PiOmxTextures/omxplayer_lib/DllAvFormat.h:27:0,<br /> from ../PiOmxTextures/omxplayer_lib/OMXCore.h:51,<br /> from ../PiOmxTextures/openmaxiltextureloader.cpp:51:<br />../PiOmxTextures/omxplayer_lib/DllAvCodec.h:75:46: error: use of enum 'CodecID' without previous declaration<br /><br />Any ideas where to start looking? Cheers<br /><br />Also, you interested in the plugin stuff I've done, also added an autoplay property and currently tracking down a resource leak, if you change media 97 times, it deadlocks (consistently, and a reboot is the only way to clear it!)..Once I've got these sorted, I'll send you a pull request if you want.<br />MatthewMatthewhttps://www.blogger.com/profile/04131963012002020146noreply@blogger.comtag:blogger.com,1999:blog-3944174827064012298.post-31713699467705475252013-03-18T00:00:26.604+01:002013-03-18T00:00:26.604+01:00Ignoring the audio track is not supported. You'...Ignoring the audio track is not supported. You'll have to implement yourself.<br /><br />OMXImage was left unmaintained since I started working on video, so you'll have to debug to see what is wrong.Luca Carlonhttps://www.blogger.com/profile/05071568155815750619noreply@blogger.comtag:blogger.com,1999:blog-3944174827064012298.post-35736110348777293842013-03-17T21:53:36.443+01:002013-03-17T21:53:36.443+01:00I would also want to know what is the easiest way ...I would also want to know what is the easiest way to disable audio decoding. Could you explain a little better?<br /><br />I was not able to get OMXImage to function. I am not sure how I should use it so I simply tried in this way:<br />OMXImage{<br /> source: "path/to/image.jpg"<br />}<br />The problem is that the app seems to go into infinite loop. Here’s the output: http://pastebin.com/3pBrC7cW<br /><br />OMXVideoSurface and OMXMediaProcessor are working fine. Thank you for the efforts and the code.<br />Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-3944174827064012298.post-80560659859647592772013-03-14T23:56:35.391+01:002013-03-14T23:56:35.391+01:00Never worked on something like this, but should be...Never worked on something like this, but should be sufficient to just discard the audio packets coming from ffmpeg.Luca Carlonhttps://www.blogger.com/profile/05071568155815750619noreply@blogger.comtag:blogger.com,1999:blog-3944174827064012298.post-54398230619104719672013-03-14T19:01:20.019+01:002013-03-14T19:01:20.019+01:00I've been playing with this and while trying t...I've been playing with this and while trying to disable the audio processing of a given media stream, I'm finding that the result is that both audio and video are missing - although application outputs state that the texture is being properly set up...<br /><br />Any ideas on where to go to achieve this? I noticed that there is a remark in the code for later improvements on runtime audio track selection - in this case it would be more the case of not processing it at all... without messing with the original media (which will have it).Wickwirehttps://www.blogger.com/profile/12876569167580747250noreply@blogger.comtag:blogger.com,1999:blog-3944174827064012298.post-17665641829179933552013-03-07T08:05:40.522+01:002013-03-07T08:05:40.522+01:00Well, yes... provide that header :-) I think the p...Well, yes... provide that header :-) I think the package you need is libboost-dev, but libboost-all-dev should bring that in. So check that file is in your sysroot.Luca Carlonhttps://www.blogger.com/profile/05071568155815750619noreply@blogger.comtag:blogger.com,1999:blog-3944174827064012298.post-34384894655849940342013-03-07T06:13:26.932+01:002013-03-07T06:13:26.932+01:00Thanks for your excellent work on this subject! I ...Thanks for your excellent work on this subject! I keep finding myself reading articles on your blog when I have troubles...<br /><br />I tried to download and run your example, but ran into a bit of trouble compiling it with Boost. I installed boost using apt-get install libboost-all-dev but I still receive boost/config.hpp not found errors. <br /><br />Do you have any advice for getting this up and running?Michael Blouinhttp://michaelblouin.canoreply@blogger.comtag:blogger.com,1999:blog-3944174827064012298.post-62550110909283568432013-03-04T02:16:29.699+01:002013-03-04T02:16:29.699+01:00Thanks! I'll try your solution.
I also wonder ...Thanks! I'll try your solution.<br />I also wonder is it possible to get gapless playback using this component?Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-3944174827064012298.post-25535821791965318792013-03-03T22:47:00.697+01:002013-03-03T22:47:00.697+01:00Try to set the framebuffer to 24bit depth. But dep...Try to set the framebuffer to 24bit depth. But depending on the version of your fw and Qt it might be sufficient or not. In the case follow the instructions in the related post.Luca Carlonhttps://www.blogger.com/profile/05071568155815750619noreply@blogger.comtag:blogger.com,1999:blog-3944174827064012298.post-31257430526495438392013-03-03T20:44:24.220+01:002013-03-03T20:44:24.220+01:00Thanks for this component!
I want to play H264 ful...Thanks for this component!<br />I want to play H264 full hd video with this component but video is playing in 16bit color mode. Do you know what problem it could be?Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-3944174827064012298.post-57262439502089252372013-02-23T18:14:52.751+01:002013-02-23T18:14:52.751+01:00thx for your share ! going to have fun with this !...thx for your share ! going to have fun with this !Anonymousnoreply@blogger.com