world leader in high performance signal processing
Trace: » multimedia

Blackfin/Linux Multimedia

The Blackfin/Linux includes sources from major cross platform multimedia frameworks. Not all codecs/formats are supported on the Blackfin today, but more are being added all the time.

ffmpeg

ffmpeg is a is a complete solution to record, convert and stream audio and video. It includes libavcodev, the leading audio/video codec library. The ffmpeg project is made of several components:

  • ffmpeg is a command line tool to convert one video file format to another. It also supports grabbing and encoding in real time from a TV card.
  • ffserver is an HTTP (RTSP is being developed) multimedia streaming server for live broadcasts. Time shifting of live broadcast is also supported.
  • ffplay is a simple media player based on SDL and on the FFmpeg libraries.
  • libavcodev is a library containing all the FFmpeg audio/video encoders and decoders. Most codecs were developed from scratch to ensure best performances and high code reusability.
  • libavformat is a library containing parsers and generators for all common audio/video formats.

For a list of file formats and codec supported by ffmepg, please refer to: http://www.ffmpeg.org/general.html#SEC3.

mplayer

mplayer is a movie player which runs on many systems (including Blackfin/Linux). It plays most MPEG/VOB, AVI, Ogg/OGM, VIVO, ASF/WMA/WMV, QT/MOV/MP4, RealMedia, Matroska, NUT, NuppelVideo, FLI, YUV4MPEG, FILM, RoQ, PVA files, supported by many native (including , XAnim, and Win32 DLL codecs. You can watch VideoCD, SVCD, DVD, 3ivx, DivX 3/4/5, WMV and even H.264 movies.

Please refer to http://www.mplayerhq.hu/design7/info.html for “Supported Input Formats”, “Supported Video and Audio Codecs”, “Supported Video Output Devices”, “Supported Audio Output Devices”. See the codec status table for the daily-generated list of currently supported codecs.

MPlayer features a very flexible codec architecture which allows it to use its own open source codecs, as well as open source libraries (including ffmpeg/libavcodec), Win32 codec DLLs and other binary codec modules.

vlc

vlc is a highly portable multimedia player for various audio and video formats (MPEG-1, MPEG-2, MPEG-4, DivX, mp3, ogg, …) as well as DVDs, VCDs and various streaming protocols. It can also be used as a server to stream in unicast or multicast in IPv4 or IPv6 on a high-bandwidth.

Today, we can build:: * vlc to stream compressed video over the network. (25fps QVGA) * mplayer to receive this stream, and display it on an LCD

Details are in the specific pages.

To see what type of engineering is going in to the Blackfin Multimedia Project see multimedia_optimizations wiki.

FAQ on multimedia support in Blackfin/Linux

Is Blackfin/Linux support xxx format, or xxx codec?

If the above multimedia projects support certain format or codec, Blackfin/Linux would support. We take source code from upstream and cross-compile for Blackfin.

Please read the projects' document, or search the web. E.g, Comparison_of_media_players#Video_format_support, Comparison_of_media_players#Audio_format_support, Comparison_of_media_players#Container_format_support.

Is RM/RMVB supported?

No. Mplayer can play RealMedia using binary codec. There is no such binary codec for Blackfin.

Is Adobe Flash supported?