Skip to content
This repository

omxplayer

branch: master
Octocat-spinner-32 cores Initial import March 22, 2012
Octocat-spinner-32 fonts added FreeSans.ttf as default font August 02, 2012
Octocat-spinner-32 guilib Initial import March 22, 2012
Octocat-spinner-32 linux Initial import March 22, 2012
Octocat-spinner-32 utils Add timestamps to log April 27, 2013
Octocat-spinner-32 .gitignore added .gitignore file August 12, 2012
Octocat-spinner-32 BitstreamConverter.cpp Fix for WMV3 files. No bitstream mangling is required for WMV3 or VC1… August 28, 2012
Octocat-spinner-32 BitstreamConverter.h Fix for WMV3 files. No bitstream mangling is required for WMV3 or VC1… August 28, 2012
Octocat-spinner-32 COPYING Initial import March 22, 2012
Octocat-spinner-32 DllAvCodec.h Fix sound with recent FFmpeg by converting from av_audio_convert API … January 23, 2013
Octocat-spinner-32 DllAvFilter.h fix build against ffmpeg >= 1.0 January 20, 2013
Octocat-spinner-32 DllAvFormat.h Use FFmpeg 0.10.2 June 05, 2012
Octocat-spinner-32 DllAvUtil.h silence ffmpeg June 11, 2012
Octocat-spinner-32 DllBCM.h Pick up some fixes from xbmc. January 23, 2013
Octocat-spinner-32 DllOMX.h Initial import March 22, 2012
Octocat-spinner-32 DllSwResample.h Fix sound with recent FFmpeg by converting from av_audio_convert API … January 23, 2013
Octocat-spinner-32 DynamicDll.cpp Initial import March 22, 2012
Octocat-spinner-32 DynamicDll.h Initial import March 22, 2012
Octocat-spinner-32 File.cpp Fix streaming video from named pipe January 03, 2013
Octocat-spinner-32 File.h Initial import March 22, 2012
Octocat-spinner-32 IAudioRenderer.h Add new options to configure audio and video file reading queues, and… March 25, 2013
Octocat-spinner-32 Makefile Merge pull request #102 from twolife/master February 01, 2013
Octocat-spinner-32 Makefile.ffmpeg Support ffmpeg 1.2 and float planar format April 20, 2013
Octocat-spinner-32 Makefile.include fixed Makefile.include for buildroot August 02, 2012
Octocat-spinner-32 OMXAudio.cpp Don't query PCM info when in passthough mode, it returns an error April 23, 2013
Octocat-spinner-32 OMXAudio.h Add new options to configure audio and video file reading queues, and… March 25, 2013
Octocat-spinner-32 OMXAudioCodecOMX.cpp Support ffmpeg 1.2 and float planar format April 20, 2013
Octocat-spinner-32 OMXAudioCodecOMX.h Support ffmpeg 1.2 and float planar format April 20, 2013
Octocat-spinner-32 OMXClock.cpp More care with going into and out of buffering. March 25, 2013
Octocat-spinner-32 OMXClock.h external SRT subtitles; smaller, customizable, subtitle buffer size; … January 26, 2013
Octocat-spinner-32 OMXCore.cpp Remove log messages for timeout failure when timeout=0 February 23, 2013
Octocat-spinner-32 OMXCore.h chmod fix December 28, 2012
Octocat-spinner-32 OMXOverlay.h Initial import March 22, 2012
Octocat-spinner-32 OMXOverlayCodec.h Initial import March 22, 2012
Octocat-spinner-32 OMXOverlayCodecText.cpp external SRT subtitles; smaller, customizable, subtitle buffer size; … January 26, 2013
Octocat-spinner-32 OMXOverlayCodecText.h Initial import March 22, 2012
Octocat-spinner-32 OMXOverlayText.h Initial import March 22, 2012
Octocat-spinner-32 OMXPlayerAudio.cpp Support ffmpeg 1.2 and float planar format April 20, 2013
Octocat-spinner-32 OMXPlayerAudio.h Add new options to configure audio and video file reading queues, and… March 25, 2013
Octocat-spinner-32 OMXPlayerSubtitles.cpp external SRT subtitles; smaller, customizable, subtitle buffer size; … January 26, 2013
Octocat-spinner-32 OMXPlayerSubtitles.h external SRT subtitles; smaller, customizable, subtitle buffer size; … January 26, 2013
Octocat-spinner-32 OMXPlayerVideo.cpp More care with going into and out of buffering. March 25, 2013
Octocat-spinner-32 OMXPlayerVideo.h Add new options to configure audio and video file reading queues, and… March 25, 2013
Octocat-spinner-32 OMXReader.cpp Use av_dump_format output for -i info option March 25, 2013
Octocat-spinner-32 OMXReader.h external SRT subtitles; smaller, customizable, subtitle buffer size; … January 26, 2013
Octocat-spinner-32 OMXStreamInfo.cpp Initial import March 22, 2012
Octocat-spinner-32 OMXStreamInfo.h Initial import March 22, 2012
Octocat-spinner-32 OMXSubtitleTagSami.cpp external SRT subtitles; smaller, customizable, subtitle buffer size; … January 26, 2013
Octocat-spinner-32 OMXSubtitleTagSami.h Change to std::string in COMXSubtitleTagSami (from XBMC) June 14, 2012
Octocat-spinner-32 OMXThread.cpp Initial import March 22, 2012
Octocat-spinner-32 OMXThread.h Initial import March 22, 2012
Octocat-spinner-32 OMXVideo.cpp Add new options to configure audio and video file reading queues, and… March 25, 2013
Octocat-spinner-32 OMXVideo.h Add new options to configure audio and video file reading queues, and… March 25, 2013
Octocat-spinner-32 RBP.h Initial import March 22, 2012
Octocat-spinner-32 README.md Point at active repo in readme June 18, 2013
Octocat-spinner-32 Srt.cpp external SRT subtitles; smaller, customizable, subtitle buffer size; … January 26, 2013
Octocat-spinner-32 Srt.h external SRT subtitles; smaller, customizable, subtitle buffer size; … January 26, 2013
Octocat-spinner-32 Subtitle.h external SRT subtitles; smaller, customizable, subtitle buffer size; … January 26, 2013
Octocat-spinner-32 SubtitleRenderer.cpp external SRT subtitles; smaller, customizable, subtitle buffer size; … January 26, 2013
Octocat-spinner-32 SubtitleRenderer.h external SRT subtitles; smaller, customizable, subtitle buffer size; … January 26, 2013
Octocat-spinner-32 Unicode.cpp OpenVG subtitles August 01, 2012
Octocat-spinner-32 Unicode.h OpenVG subtitles August 01, 2012
Octocat-spinner-32 omxplayer Added logging -g flag March 21, 2013
Octocat-spinner-32 omxplayer.cpp Added --keys / -k to list key bindings. April 25, 2013
Octocat-spinner-32 prepare-native-raspbian.sh Add Stasik0's prepare-native-raspbian.sh script to help building on t… March 26, 2013
Octocat-spinner-32 profiler.sh Initial import March 22, 2012
Octocat-spinner-32 system.h Initial import March 22, 2012
README.md

This tree is no longer under active delevopment. Updates will occur here: https://github.com/popcornmix/omxplayer

OMXPlayer

OMXPlayer is a commandline OMX player for the Raspberry Pi. It was developed as a testbed for the XBMC Raspberry PI implementation and is quite handy to use standalone.

Downloading OMXPlayer

git clone git://github.com/huceke/omxplayer.git

Compiling OMXPlayer

GCC version 4.7 is required.

Cross Compiling

You need the content of your sdcard somewhere mounted or copied. There might be development headers to install on the running Pi system for the crosscompiling.

Edit Makefile.include and change the settings according your locations.

make ffmpeg
make
make dist

Installing OMXPlayer

Copy over omxplayer-dist/* to the Pi /. You may want to specify a valid font path inside the omxplayer shell script.

Compiling on the Pi

You can also compile it on the PI the native way ;) Run this script (which will install packages and update firmware) ./prepare-native-raspbian.sh and build with make ffmpeg make

Using OMXPlayer

Usage: omxplayer [OPTIONS] [FILE]
Options :
         -h / --help                    print this help
         -n / --aidx  index             audio stream index    : e.g. 1
         -o / --adev  device            audio out device      : e.g. hdmi/local
         -i / --info                    dump stream format and exit
         -s / --stats                   pts and buffer stats
         -p / --passthrough             audio passthrough
         -d / --deinterlace             deinterlacing
         -w / --hw                      hw audio decoding
         -3 / --3d mode                 switch tv into 3d mode (e.g. SBS/TB)
         -y / --hdmiclocksync           adjust display refresh rate to match video (default)
         -z / --nohdmiclocksync         do not adjust display refresh rate to match video
         -t / --sid index               show subtitle with index
         -r / --refresh                 adjust framerate/resolution to video
         -g / --genlog                  generate log file
         -l / --pos n                   start position (in seconds)
              --boost-on-downmix        boost volume when downmixing
              --vol n                   Set initial volume in millibels (default 0)
              --subtitles path          external subtitles in UTF-8 srt format
              --font path               subtitle font
                                        (default: /usr/share/fonts/truetype/freefont/FreeSans.ttf)
              --font-size size          font size as thousandths of screen height
                                        (default: 55)
              --align left/center       subtitle alignment (default: left)
              --lines n                 number of lines to accommodate in the subtitle buffer
                                        (default: 3)
              --win "x1 y1 x2 y2"       Set position of video window
              --audio_fifo  n           Size of audio output fifo in seconds
              --video_fifo  n           Size of video output fifo in MB
              --audio_queue n           Size of audio input queue in MB
              --video_queue n           Size of video input queue in MB

For example:

./omxplayer -p -o hdmi test.mkv

Key Bindings

While playing you can use the following keys to control omxplayer:

z           Show Info
1           Decrease Speed
2           Increase Speed
j           Previous Audio stream
k           Next Audio stream
i           Previous Chapter
o           Next Chapter
n           Previous Subtitle stream
m           Next Subtitle stream
s           Toggle subtitles
d           Subtitle delay -250 ms
f           Subtitle delay +250 ms
q           Exit OMXPlayer
Space or p  Pause/Resume
-           Decrease Volume
+           Increase Volume
Left Arrow  Seek -30 s
Right Arrow Seek +30 s
Down Arrow  Seek -600 s
Up Arrow    Seek +600 s
Something went wrong with that request. Please try again.