Multimedia codecs (SBC-i.MX51)

Aus BECOM Systems Support
Version vom 22. August 2023, 20:35 Uhr von en>Peter (1 Version importiert)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Zur Navigation springen Zur Suche springen

Basic libraries

imx-lib
openembedded/recipes/imx-lib/imx-lib_10.07.11.bb
i.MX specific libraries for VPU, IPU, etc.
firmware-imx
openembedded/recipes/firmwares/firmware-imx_10.07.11.bb
Firmware for the VPU

Codec libraries

fsl-mm-codeclib
openembedded/recipes/fsl-mm-codeclib/fsl-mm-codeclib_1.9.0.bb
Libraries for all hardware de-/encoders

GStreamer support

A plug-in for the GStreamer framework (see here for the Wikipedia overview) allows for playing multimedia files using the i.MX hardware codecs.

gst-fsl-plugin
openembedded/recipes/gstreamer/gst-fsl-plugin_1.9.0.bb
Freescale GStreamer plug-in

In addition to the GStreamer plug-in, there are also patches applied to the GStreamer core.

Command-line usage

The gst-fsl-plugin comes with a command-line player that is called gplay. Simply supply the multimedia file as an argument to gplay. For more information, please have a look at the "Application Specification for gplay" document provided by Freescale at [1].

There's even a more low-level interface that can be used: gst-launch. Here is an example:

gst-launch filesrc location=avatar.mov ! qtdemux ! queue max-size-time=0 ! mfw_vpudecoder ! mfw_v4lsink disp-width=1024 disp-height=768

For more information, please refer to the "i.MX Linux Multimedia Framework User's Guide" available from Freescale at [2].

Media player

The SBC Gnome demo image comes with the Totem media player. Totem exclusively uses GStreamer to play multimedia files (audio and video).

To start Totem, navigate to Applications-->Sound & Video-->Movie Player {{#if: | {{{2}}} {{#if: | {{{3}}} {{#if: | {{{4}}} {{#if: | {{{5}}} {{#if: | {{{6}}} {{#if: | {{{7}}} {{#if: | {{{8}}} {{#if: | {{{9}}} {{#if: | {{{10}}}| }}| }}| }}| }}| }}| }}| }}| }}| }} in the Gnome menu.

If you are interested in which codecs are used in the background, start Totem from a Gnome terminal. Start playing any file and you can view a similar output in the terminal (look for the colored lines):

root@sbc-imx51:~# totem
MFW_GST_V4LSINK_PLUGIN 1.9.0 build on Oct  7 2010 23:14:53.
[INFO]	Product Info: i.MX51
VPU Version: firmware 13.4.0; libvpu: 5.1.0 
MFW_GST_VPU_DECODER_PLUGIN 1.9.0 build on Oct  7 2010 23:14:32.
BLN_MAD-MMCODECS_AACD_ARM_03.05.00  build on Nov 25 2009 15:02:24.
MFW_GST_AAC_PLUGIN 1.9.0 build on Oct  7 2010 23:14:15.
>>V4L_SINK: Actually buffer status:
	hardware buffer : 14
	software buffer : 0
[V4L Update Display]: left=5, top=202, width=440, height=184
Total rendered:3192

>>VPU_DEC: State: Ready to Null
>>V4L_SINK: All buffer freed, close device.
root@sbc-imx51:~#