Qt Quick QML Digital Signage Demo Part 2

Following up on Qt Quick QML Digital Signage Demo Part 1, I’ve updated the digital signage demo to support the following: Play 5 videos in a loop Display 5 pictures in a loop where the picture is changed every 5 seconds Use a (twitter) RSS feed for the scrolling text I initially planned to use QML to list the media files, but it is apparently not possible without using C/C++ and I may do it later on. So instead, I hard-coded the video and picture playlists in the QML files with the ListModel element. Videos are located in the video directory and pictures in the pic folder. An index is needed to scroll thru the playlist, but QML does not support global variables, so I created a JavaScript file (globals.js) to store the video and picture index: // Global variables in JavaScript file var iVideoIndex = 0 var iPicIndex = […]

Qt Quick QML Digital Signage Demo Part 1

I’ve recently started to play around with Qt and since I’d like to do a digital signage player running on Raspberry Pi, I’ve decided to try to make a simple digital signage demo application to evaluate the development platform. In Part 1, my goal was to make a 3 zones layout with a video zone, a picture zone and a scrolling text zone. I would just play one hard-coded media in each zone and the video and scrolling text would have to continuously loop. I used Qt Creator to create  a “Pigital Signage” application (or should it be Πgital Signage ?). To create the 3 zones I used the Gridview Element with 3 rectangles: Video zone: 600×432 Picture zone: 200×432 Text zone: 800×48 Displaying the image is very easy with the Image Element:

The video playback was also supposed to be easy with the Video Element but it can […]

400 Free Raspberry Pi (Development) Boards for Qt 5 Developers

Remember the 25 – 35 USD ARM11 board Raspberry Pi ? Nokia is now getting involved and plans to speed up Qt 5 development on this nice little hardware. The Raspberry Pi Foundation has announced that Nokia would purchase 400 boards next month and give them away to Qt 5 developers who are willing to port software, develop apps, and test and improve the Qt 5 Linux stack. Mostly likely it will be the “high-end” 35 USD version with Ethernet support and 2556 MB RAM as show below. Beside its ridiculously cheap price, the board key features include Linux support, embedded GPU and OpenGL ES libraries that makes it a usable multimedia device capable of outputting 1080p. Nokia and ICS engineers have already started to port Qt to the Raspberry Pi board using the alpha boards. You can see the Qt Quick 2 emitter demo below running on one of the […]

OpenMAX (Open Media Acceleration)

OpenMAX (Open Media Acceleration) is a royalty-free, cross-platform set of C-language programming interfaces that provides abstractions for routines especially useful for audio, video, and still images. OpenMAX standard is managed by the non-profit technology consortium Khronos Group. OpenMAX allows developers to take advantages of hardware media decoding/encoding. For example, If you want to play video using Raspberry Pi hardware (VideoCore IV GPU in Broadcom BCM2835) you’ll have to use OpenMAX IL. OpenMAX provides three layers of interfaces: Application Layer (AL): Open standard for accelerating the capture, and presentation of audio, video, and images in multimedia applications on embedded and mobile devices. Integration Layer (IL) : API defining a standardized media component interface to enable developers and platform providers to integrate and communicate with multimedia codecs implemented in hardware or software. Development Layer (DL): APIs containing a comprehensive set of audio, video and imaging functions that can be implemented and optimized […]

Raspberry Pi at ARM Techcon 2011

Raspberry Pi Foundation is currently at ARM Techcon 2011 showcasing their 25 USD ARM11 Linux Computer unveiled last May. The board is build around Broadcom BCM2835 (ARM11 @ 700Mhz + GPU) application processor with 128/256MB “soldered” on top of the processor (Package on package (PoP) technology) and a USB Hub/Ethernet adapter chip and that’s it. The board features an Ethernet 10/100 RJ45 connector, 2 USB 2.0 port, an Audio out, HDMI and composite video output and an SD card slot. They currently only have the larger alpha board, the final board will be shrunk to the size of a business card and should be available in November 2011 (but most probably December). They believe the board will have better multimedia performance than the Beagleboard. I’m not convinced of that yet, but we’ll see. There will be two versions: Without network and 128 MB RAM – 25 USD Network support (Ethernet) and […]

Using Raspberry Pi as an Internet Kiosk

Following up on this morning post explaining how to get the kernel and minimal rootfs to run debian in qemu emulating an ARM1176 processor, I’ll show how to make a minimal rootfs to run Chrome browser in this platform. I tested it in QEMU, but this should also run on the Raspberry Pi hardware. First, you’ll have to complete the step I provided in Raspberry Pi Emulator in Ubuntu with Qemu. Start qemu: sudo qemu-system-arm -M versatilepb -cpu arm1176 -m 256 -hda rootfs.ext2 -kernel zImage -append “root=/dev/sda” -serial stdio Once you login to the console as root, create a new user (e.g guest): adduser guest This user will be needed to login with the graphical interface and ssh. In order to get an Internet Kiosk, we’ll need a web browser (Chromium) and a window manger. I chose fluxbox instead of gnome because of the size difference (8651 KB vs 1739 […]

Raspberry Pi Emulator in Ubuntu with Qemu

The Raspberry Pi board is a low cost board based on Broadcom BCM2835 media processor SoC with an ARM1176JZF-S core clocked at 700MHz. This board is currently under development and should be ready by end of November, beginning of December and will be sold for 25 USD (128MB RAM – no Ethernet) and 35 USD (256MB RAM – Ethernet). While we are waiting for the board, we can still test software using qemu to emulate a board based on an ARM1176 core with 128MB or 256 MB memory. I’ve tried to create a rootfs based on Ubuntu with rootstock but this only support processors with ARM cortex A8 and greater, so it would not work with ARM11. I’ll be using Debian Squeeze instead. Prerequisites My host computer is running Ubuntu 10.04.3 LTS, but any recent Ubuntu or Debian installation should work with these instructions. [Update: You won’t be able to […]

25 USD ARM11 Linux Computer

raspberry pi prototype

The Raspberry Pi Foundation has designed a 25 USD Linux computer prototype for computer education in both the developing and developed worlds. The foundation, a registered British charity, plans to develop, manufacture, and distribute the USB key-sized computer within the next 12 months. Their computer has a USB key form factor and is designed to plug into a TV or be combined with a touch screen for a low-cost tablet. Provisional specifications: 700MHz ARM11 128MB of SDRAM OpenGL ES 2.0 1080p30 H.264 high-profile decode Composite and HDMI video output USB 2.0 SD/MMC/SDIO memory card slot General-purpose I/O Open software (Ubuntu, Iceweasel, KOffice, Python) This device is much cheaper than OLPC XO (target price 100 USD), however, it does not include a keyboard, display nor batteries, so the market is different as it won’t work in places where electricity is unreliable. Watch the video below of David Braben introducing the 25 […]

EmbeddedTS embedded systems design