Apalis Framebuffer's Resolution

Hi community!

I have a video stream setup with Colibri IMX6 and Apalis IMX6.

Colibri subscribes the video;

gst-launch-1.0 *
** imxv4l2videosrc device=/dev/video0 ! *

** imxipuvideotransform ! **
** imxvpuenc_h264 bitrate=2000 ! **
** rtph264pay ! **
** udpsink host=192.168.200.100 port=5004**

and publishing to data packages at UDP.

Apalis subscribes the video packages from UDP

gst-launch-1.0 -v *
** udpsrc port=5004 ! *

** “application/x-rtp, media=(string)video, clock-rate=(int)90000, encoding-name=(string)H264, payload=(int)96, framerate=30/1” ! **
** rtph264depay ! **
** h264parse ! **
** imxvpudec ! **
** imxipuvideotransform ! **
** imxg2dvideosink window-width=800 window-height=600 framebuffer=/dev/fb0**

and streaming it from framebuffer output “HDMI”.

At the Apalis side framebuffer output resolution was always 1920x1080@60.
Video source streamed 640x480 but Apalis upscaled that video to 1920x1080@60.

When i tried the “fbset” commands;

fbset -xres xx -yres xx -geometry xx xx xx xx -timings xx xx xx

the framebuffer’s output’s video wasn’t stable.

After that tried to change the resolution at U-Boot terminal

"setenv vidargs ‘video=mxcfb1:dev=hdmi,1024x768M@60,if=RGB24’ "
saveenv

(resource is “Display Output, Resolution and Timings (Linux)”)

It worked but the resolutions weren’t customizable, you can use only the supplied resolutions and timings. I tried the read EDID datas and changed them (about 640x480 or 1280x720) but 1920x1080@60 never changed automatically. Is there anyway to use customizable resolutions?

Hello @erdemkahraman and Welcome to the Toradex Community!

Regarding your question, could you provide the version on the Hardware (including carrier board) and Software of your module?
What exactly is your application?
What is the resolution of the video?

It worked but the resolutions weren’t customizable, you can use only the supplied resolutions and timings.

This is normal, only supported resolution by the display and the SoM will work.

I tried the read EDID datas and changed them (about 640x480 or 1280x720) but 1920x1080@60 never changed automatically.

Where did you change the resolution, on the display or on the SoM? Which commands did you use?

Is there anyway to use customizable resolutions?

Which resolutions do you want to use?

Best regards,
Jaski

exactly my application is only streaming video at framebuffer. my module’s software is Linux 5.3.0 Multimedia Reference Image.

My system is supporting all usual resolutions.

setenv vidargs 'video=mxcfb1:dev=hdmi,1920x1080M@60,if=RGB24’
saveenv

I changed the resolution from u-boot terminal.

I wanna to use custom resolutions. For example

640x480@30
640x480@60
800x600@30
800x600@60
1280x720@60
1280x720@30
1920x1080@60
1920x1080@30

Hi @erdemkahraman

You need to set the resolution in the devicetree overlays (see Link) as this patch:

diff --git a/overlays/apalis-imx6_hdmi_overlay.dts b/overlays/apalis-imx6_hdmi_overlay.dts
index 7fb368e..5585d48 100644
--- a/overlays/apalis-imx6_hdmi_overlay.dts
+++ b/overlays/apalis-imx6_hdmi_overlay.dts
@@ -38,6 +38,7 @@
 
 &mxcfb2 {
        status = "okay";
+       mode_str ="800x480M@60";
 };

Only resolution availables in ‘drivers/video/fbdev/mxc/mxc_edid.c’ can be set.

Best regards,
Jaski