Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. Mobile and Embedded
  4. Trying to show an encoded with base64 contents of a qvideoframe into html

Trying to show an encoded with base64 contents of a qvideoframe into html

Scheduled Pinned Locked Moved Unsolved Mobile and Embedded
9 Posts 4 Posters 887 Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • J Offline
    J Offline
    Jafar.Sag.Sibil
    wrote on 24 Mar 2021, 04:06 last edited by
    #1

    I received a correct qvideoframe object from qcamera using qabstractvideosurface and convert it to base64

    			QByteArray arr ( (char *) frame.image ( ).bits ( ) );
    			qDebug ( ) << arr.toBase64 ( ) << endl;
    

    Now I sent the encoded data to some html client how can I show it

    <img src="data:image/png;base64,$encodedContent" />  <!-- invalid -->
    <img src="data:image/png;base64,$encodedContent" />  <!-- invalid -->
    
    R 1 Reply Last reply 24 Mar 2021, 10:28
    0
    • J Jafar.Sag.Sibil
      24 Mar 2021, 04:06

      I received a correct qvideoframe object from qcamera using qabstractvideosurface and convert it to base64

      			QByteArray arr ( (char *) frame.image ( ).bits ( ) );
      			qDebug ( ) << arr.toBase64 ( ) << endl;
      

      Now I sent the encoded data to some html client how can I show it

      <img src="data:image/png;base64,$encodedContent" />  <!-- invalid -->
      <img src="data:image/png;base64,$encodedContent" />  <!-- invalid -->
      
      R Offline
      R Offline
      raven-worx
      Moderators
      wrote on 24 Mar 2021, 10:28 last edited by
      #2

      @Jafar-Sag-Sibil
      frame.image().bits() is not PNG image data

      the docs show to convert it to PNG

      --- SUPPORT REQUESTS VIA CHAT WILL BE IGNORED ---
      If you have a question please use the forum so others can benefit from the solution in the future

      1 Reply Last reply
      1
      • S Offline
        S Offline
        SGaist
        Lifetime Qt Champion
        wrote on 24 Mar 2021, 19:25 last edited by
        #3

        Hi,

        You know that an img tag is not meant to provide a video stream to a person loading the page ?

        Interested in AI ? www.idiap.ch
        Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

        1 Reply Last reply
        2
        • J Offline
          J Offline
          Jafar.Sag.Sibil
          wrote on 25 Mar 2021, 08:40 last edited by
          #4

          if you mean that I need audio beside my image => yes I know because I want create something like pantomime
          if you mean I can't display as video in img tag => no please describe

          J 1 Reply Last reply 25 Mar 2021, 08:43
          0
          • J Jafar.Sag.Sibil
            25 Mar 2021, 08:40

            if you mean that I need audio beside my image => yes I know because I want create something like pantomime
            if you mean I can't display as video in img tag => no please describe

            J Offline
            J Offline
            jsulm
            Lifetime Qt Champion
            wrote on 25 Mar 2021, 08:43 last edited by
            #5

            @Jafar-Sag-Sibil said in Trying to show an encoded with base64 contents of a qvideoframe into html:

            no please describe

            You could also read about HTML: https://www.w3schools.com/tags/tag_img.asp
            "The <img> tag is used to embed an image in an HTML page."

            https://forum.qt.io/topic/113070/qt-code-of-conduct

            1 Reply Last reply
            0
            • J Offline
              J Offline
              Jafar.Sag.Sibil
              wrote on 25 Mar 2021, 08:52 last edited by Jafar.Sag.Sibil
              #6

              @jsulm said in Trying to show an encoded with base64 contents of a qvideoframe into html:

              no please describe
              Anyway I want grab an image from qt show that in some html client
              new code is

              			QImage		 image = frame.image ( );
              			QByteArray ba;
              			QBuffer		 buffer ( &ba );
              			buffer.open ( QIODevice::WriteOnly );
              			image.save ( &buffer, "PNG" );
              			qDebug ( ) << buffer.data ( ).toBase64 ( ) << endl;
              

              output is

              D libuntitled_armeabi-v7a.so: "iVBORw0KGgoAAAANSUhEUgAAAyAAAAJYCAYAAACadoJwAAAACXBIWXMAAAsTAAALEwEAmpwYAAAgAElEQVR4nHy96ZItSXIe9rlHZJ6t6m7dPbdnwewboDECwiqj8QfNyH/iDCgaQJjxafo1JD2CZHoTyPRDMlEDDUEAA3TPdN+lqs6WmRHh+uHuEZGnG8qeO1V1lsxYfP18Cfpf/7f/RYgYRAQRAVBARBggmOcZuRQAwK//8TeYlxlv3z/i7Zs3eDo+IISIw/aAw+EAyQuIGMSCkjMCMQAgpYR5nlEgAIAlZxQpCCFAiiADCCHicp1BTCDSf3PScWQRfT0wlmXBOI54/vw5vvHRAeMwYhwCckoIwwZxGABhhMCYrxHzPON0Jmw2Gzx/scGHH36IGAqGOGCeZwDAMAT4RUyIxHUdAICJAAA5ZYTYPuuXFB3fiICUEwAghogkWd9nQk4ZHHSNKQSICEQKiBiggFwyAkHXRAREBCZCEQGyrgMAcGAgAUWkjqvtm16BGVKkviZcUIogMhACIxX9TsltDsU+6/dMOSGGESEElJR1PANQSl49j4jgN8pS6rjiMEBSBjNhyfp+gc2fCVIEaUogJuzGAUUERaitqQimtEBEEGNEzhkhEIoUAEo7y2LvY8Rf//Vf43//P/4ej4+PePfZZxjGAa9ePdO15IxSMh4f32OeF8wEPD0dcZkniBQUjjoX0b3bjgOePXuG7X6v86Rii1QQQ0TIgsAMIkEcBuSk7xdiMDEgSvcZQM4FIr5PvsYBy5IQxmjf89unurYxBBAxlrRgnmcEZtv/ABRd41IIIgVt2Yo9t9FCKaXyUwGv1pcKgZnrXjqf93Tge0xEsOEj51y/57QqIghY04XPi0X/Zo4opSDbgENHv0SMnGeltwLM84wxBgzDgJIziggi2/p2V5GCOSv/1eeCEVh5SkQAf48BKQWCbPyk85WOv5zvdDWNfwvZHKmunfK88ZfocyI3eTHEAffI2Gw2eBYKODB2MYKYUErC09
              

              the size of image is detected correctly by html but still cannot show

              html code

              <img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAyAAAAJYCAYAAACadoJwAAAACXBIWXMAAAsTAAALEwEAmpwYAAAgAElEQVR4nHy96ZItyZEe9rlHZJ6lqu7aG6DG1sDMAAMQGBtxJJJm0gMMbYY0k0hRfBo8kMz0R68hM45JIgkNMNh6v7fvreVsmRkRrhuHhFZ3VC1VdetU+dkRkZ4+PL55x70v8f5uklCGpgIjAHFBKxhAilmUBlYyUE7788nPc39j4eGAh8MDzqcL5nnB06fPEUPAbr9HWhYUAkQEAQQiQs7A+XzCeEAZgbHAUtKyKkghIgEgoigEAAAMQSknMHMAIAQGESEkgs4MJgDiAhXux0+eP99PNlfg4kQhwExBOSSICJYSkTKCcnGcbUPePbsOTZx0d83IwAgLQUhBCxZdNxDxJISxmFAKQUsOq7AjJILAgIAgGJASnovACCi+m8AYI4QETAzSintfRz1J4o+L1P9rEgBc9DPRb1PkoS0LNgMW5Sia0REX7tnJAYxYZrOIGKQDTwyIEVATJAiECEwM9IiCCF+bfz+M8QAJkLKOl8QvT4TIefSxsI6byXr83Bge26srleyi0VQMSePUQUEQxDBAvqdUMMiEwoOQNBkFKu9yslg4ghovIzXTL+0z8JzDlbfP7F55jmB4zjiP022lyxrXPG6XzGqs7HA9HIDCWeQaxVLkPgSEh48nNEzAPYNa58r+LFBAxhiEiICCXAuKInDNSKSAmBKh8jnGAFEGwZy0l13lOOaMwoZQCrNZfUGw9igDMocofsa15FbFSZc33WzfWQjEhJza+5gDMkxmJdpnTS6CrMYhRepaMHOVk2ADYHsuwyDVvJZ7LZZVPb8fnXM9OgpqOBPfRERCgQ5F4itpz4PY6wXygjMyLDxMyFwgEiy+Qz+NjAzAgfkkhHAJo9seqjUOfXxM1OddyJCThkE1VX+NZjcj4Ne2ZDePfdd3HNE5gZ+3xAEUEgndfNEMFEmKczAGCeZ8QYEI" />
              

              the size was set to 800x600 in qt and html size that correct but with an empty content

              J 1 Reply Last reply 25 Mar 2021, 08:58
              0
              • J Jafar.Sag.Sibil
                25 Mar 2021, 08:52

                @jsulm said in Trying to show an encoded with base64 contents of a qvideoframe into html:

                no please describe
                Anyway I want grab an image from qt show that in some html client
                new code is

                			QImage		 image = frame.image ( );
                			QByteArray ba;
                			QBuffer		 buffer ( &ba );
                			buffer.open ( QIODevice::WriteOnly );
                			image.save ( &buffer, "PNG" );
                			qDebug ( ) << buffer.data ( ).toBase64 ( ) << endl;
                

                output is

                D libuntitled_armeabi-v7a.so: "iVBORw0KGgoAAAANSUhEUgAAAyAAAAJYCAYAAACadoJwAAAACXBIWXMAAAsTAAALEwEAmpwYAAAgAElEQVR4nHy96ZItSXIe9rlHZJ6t6m7dPbdnwewboDECwiqj8QfNyH/iDCgaQJjxafo1JD2CZHoTyPRDMlEDDUEAA3TPdN+lqs6WmRHh+uHuEZGnG8qeO1V1lsxYfP18Cfpf/7f/RYgYRAQRAVBARBggmOcZuRQAwK//8TeYlxlv3z/i7Zs3eDo+IISIw/aAw+EAyQuIGMSCkjMCMQAgpYR5nlEgAIAlZxQpCCFAiiADCCHicp1BTCDSf3PScWQRfT0wlmXBOI54/vw5vvHRAeMwYhwCckoIwwZxGABhhMCYrxHzPON0Jmw2Gzx/scGHH36IGAqGOGCeZwDAMAT4RUyIxHUdAICJAAA5ZYTYPuuXFB3fiICUEwAghogkWd9nQk4ZHHSNKQSICEQKiBiggFwyAkHXRAREBCZCEQGyrgMAcGAgAUWkjqvtm16BGVKkviZcUIogMhACIxX9TsltDsU+6/dMOSGGESEElJR1PANQSl49j4jgN8pS6rjiMEBSBjNhyfp+gc2fCVIEaUogJuzGAUUERaitqQimtEBEEGNEzhkhEIoUAEo7y2LvY8Rf//Vf43//P/4ej4+PePfZZxjGAa9ePdO15IxSMh4f32OeF8wEPD0dcZkniBQUjjoX0b3bjgOePXuG7X6v86Rii1QQQ0TIgsAMIkEcBuSk7xdiMDEgSvcZQM4FIr5PvsYBy5IQxmjf89unurYxBBAxlrRgnmcEZtv/ABRd41IIIgVt2Yo9t9FCKaXyUwGv1pcKgZnrXjqf93Tge0xEsOEj51y/57QqIghY04XPi0X/Zo4opSDbgENHv0SMnGeltwLM84wxBgzDgJIziggi2/p2V5GCOSv/1eeCEVh5SkQAf48BKQWCbPyk85WOv5zvdDWNfwvZHKmunfK88ZfocyI3eTHEAffI2Gw2eBYKODB2MYKYUErC09
                

                the size of image is detected correctly by html but still cannot show

                html code

                <img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAyAAAAJYCAYAAACadoJwAAAACXBIWXMAAAsTAAALEwEAmpwYAAAgAElEQVR4nHy96ZItyZEe9rlHZJ6lqu7aG6DG1sDMAAMQGBtxJJJm0gMMbYY0k0hRfBo8kMz0R68hM45JIgkNMNh6v7fvreVsmRkRrhuHhFZ3VC1VdetU+dkRkZ4+PL55x70v8f5uklCGpgIjAHFBKxhAilmUBlYyUE7788nPc39j4eGAh8MDzqcL5nnB06fPEUPAbr9HWhYUAkQEAQQiQs7A+XzCeEAZgbHAUtKyKkghIgEgoigEAAAMQSknMHMAIAQGESEkgs4MJgDiAhXux0+eP99PNlfg4kQhwExBOSSICJYSkTKCcnGcbUPePbsOTZx0d83IwAgLQUhBCxZdNxDxJISxmFAKQUsOq7AjJILAgIAgGJASnovACCi+m8AYI4QETAzSintfRz1J4o+L1P9rEgBc9DPRb1PkoS0LNgMW5Sia0REX7tnJAYxYZrOIGKQDTwyIEVATJAiECEwM9IiCCF+bfz+M8QAJkLKOl8QvT4TIefSxsI6byXr83Bge26srleyi0VQMSePUQUEQxDBAvqdUMMiEwoOQNBkFKu9yslg4ghovIzXTL+0z8JzDlbfP7F55jmB4zjiP022lyxrXPG6XzGqs7HA9HIDCWeQaxVLkPgSEh48nNEzAPYNa58r+LFBAxhiEiICCXAuKInDNSKSAmBKh8jnGAFEGwZy0l13lOOaMwoZQCrNZfUGw9igDMocofsa15FbFSZc33WzfWQjEhJza+5gDMkxmJdpnTS6CrMYhRepaMHOVk2ADYHsuwyDVvJZ7LZZVPb8fnXM9OgpqOBPfRERCgQ5F4itpz4PY6wXygjMyLDxMyFwgEiy+Qz+NjAzAgfkkhHAJo9seqjUOfXxM1OddyJCThkE1VX+NZjcj4Ne2ZDePfdd3HNE5gZ+3xAEUEgndfNEMFEmKczAGCeZ8QYEI" />
                

                the size was set to 800x600 in qt and html size that correct but with an empty content

                J Offline
                J Offline
                jsulm
                Lifetime Qt Champion
                wrote on 25 Mar 2021, 08:58 last edited by
                #7

                @Jafar-Sag-Sibil said in Trying to show an encoded with base64 contents of a qvideoframe into html:

                no please describe

                Describe what? That img is used to show images and not videos or anything else? Isn't that clear from HTML documentation?
                If you want to show video take a look at https://www.w3schools.com/html/html5_video.asp

                https://forum.qt.io/topic/113070/qt-code-of-conduct

                1 Reply Last reply
                0
                • J Offline
                  J Offline
                  Jafar.Sag.Sibil
                  wrote on 25 Mar 2021, 16:25 last edited by Jafar.Sag.Sibil
                  #8

                  I know what img tag does but I convert videoframe to image then use its base64 to embed on html
                  I want to show that image nothing else why are you angry man?
                  even I converted that image to png in save method

                  J 1 Reply Last reply 25 Mar 2021, 16:48
                  0
                  • J Jafar.Sag.Sibil
                    25 Mar 2021, 16:25

                    I know what img tag does but I convert videoframe to image then use its base64 to embed on html
                    I want to show that image nothing else why are you angry man?
                    even I converted that image to png in save method

                    J Offline
                    J Offline
                    jsulm
                    Lifetime Qt Champion
                    wrote on 25 Mar 2021, 16:48 last edited by
                    #9

                    @Jafar-Sag-Sibil said in Trying to show an encoded with base64 contents of a qvideoframe into html:

                    I want to show that image nothing else

                    I had the impression that you wanted to show video.
                    If you compare the qDebug() output to the html code you will see that your Base64 differ.
                    You should use the QByteArray (ba) to convert to Base64, not buffer.

                    https://forum.qt.io/topic/113070/qt-code-of-conduct

                    1 Reply Last reply
                    1

                    4/9

                    25 Mar 2021, 08:40

                    • Login

                    • Login or register to search.
                    4 out of 9
                    • First post
                      4/9
                      Last post
                    0
                    • Categories
                    • Recent
                    • Tags
                    • Popular
                    • Users
                    • Groups
                    • Search
                    • Get Qt Extensions
                    • Unsolved