This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

How can I set the video output position on the screen when I use gstreamer-ti and TIDmaiVideoSink ?

Other Parts Discussed in Thread: OMAP3530

Hi everyone,

     I want to specify the video output position on the screen and the window size, how can I implement it?  My platform is angstrom omap3530bealge, I use gstreamer-ti play video and output to TIDmaiVideoSink Thanks !

Best Regards,

Carl

  • Hi Carl,

       TIDmaiVideoSink does not support setting a position for the video, only the size (VGA, 480P, etc.)  You can set the position using the DSS2 interface, which is documented here:

    http://wiki.davincidsp.com/index.php/OMAP3_DSS2_Architecture

      However, I suspect that TIDmaiVideoSink will likely overwrite anything you set up through DSS2 so some customization of TIDmaiVideoSink might be required to prevent that.

    Regards, Clay

     

  • Hi,

    You can take a look at the TIDmaiVideoSink on DDOMPE's branch, it already have code to set the X and Y position (and a lot of other changes, so you will have to cherry pick what you are looking for)

    Diego

  • Hi Clay && ddompe

        Thanks for your reply! I modify the position by an easy  way:  just change the value of the overlay's output position:

        cd /sys/device/playform/omapdss/overlay1

        echo x,y >position

       This will change the video position on the screen.

    BestRegards,

    Carl

  • Hi ,

          I can adjust the video output position on the screen now, but how can I implement the video resize? I check the code of gsttidmaivideosink.c, and modified the code in function:

    gst_tidmaivideosink_init_env:

        if (gst_ti_env_is_defined("GST_TI_TIDmaiVideoSink_resizer")) {
            sink->resizer = gst_ti_env_get_boolean("GST_TI_TIDmaiVideoSink_resizer");
            printf("Setting resizer=%s\n",sink->resizer ? "TRUE" : "FALSE");
        }

         // I added the following line to set resizer enable followed above code(about line:373 in file gsttidmaivideosink.c).
         sink->resizer = 1; // added by carl

        then, when function: gst_tidmaivideosink_render was called, it print: Unable to initialize display, it's due to the failure of gst_tidmaivideosink_init_display,

        then i check gst_tidmaivideosink_init_display,  this function failed when call : Resize_create, and print: Failed to create resizer. I check code Resize_create

       and found it will open device: /dev/omap-resizer, but I found there's no such file on my device !  What's the reason ? Could you give me some suggestion ?

       My platform is beagleboard omap3530.