descriptionA small ffmpeg-based framebuffer media player
homepage URL
last changeFri, 10 Feb 2017 12:13:43 +0000 (10 15:43 +0330)
content tags

Fbff is a framebuffer/OSS media player using ffmpeg or libmpeg3.


To start it simply run:

  $ fbff file.sth

When playing video files, audio and video may get out of sync.  So I
suggest using this by default:

  $ fbff -u -s file.sth

And if that results in choppy playback, use:

  $ fbff -u -s100 file.sth

This means record A/V diff after the first few video frames (-u)
and synchronize each 100 video frames (-s100).  This should work for
most files.

The following table describes fbff keybinding.  Most of these commands
accept a numerical prefix.  The variable avdiff is used to synchronize
audio and video streams.  The synchronization is done after the 's' key
or the pause and seek commands.  '-', '+', and 'a' keys can be used to
change the value of avdiff as explained below.

==============	================================================
==============	================================================
p/space		pause
q		quit
i		print info
l/j/J		seek forward 10s/60s/600s
h/k/K		seek backward 10s/60s/600s
G		seek to the given minute
%		seek to the specified position in percents
^[/escape	clear numerical prefix
mx		mark position as 'x'
'x		jump to position marked as 'x'
s		synchronize audio/video with A-V equal to avdiff
-		set avdiff to -arg
+		set avdiff to +arg
a		set avdiff to current playback A-V diff
c		set synchronization steps
==============	================================================


The following options can be specified when starting fbff:

==============	================================================
==============	================================================
-z x		specify ffmpeg video zoom
-m x		magnify the video by duplicating pixels
-j x		jump every x video frames; for slow machines
-f		start full screen
-v x		select video stream; '-' disables video
-a x		select audio stream; '-' disables audio
-t		use time based seeking; only if the default doesn't work
-s		don't rely on video frame-rate; always synchronize
-u		record avdiff after the first few frames of video
-t path		the file containing the subtitles
-x x		adjust video position horizontally
-y x		adjust video position vertically
-r		adjust the video to the right of the screen
-b		adjust the video to the bottom of the screen
==============	================================================
2017-02-10 Ali Gholami... ffs: support for ffmpeg-3.2.3master
2015-03-30 Ali Gholami... fbff: clear only the current line for printing subtitles
2015-03-17 Ali Gholami... README: describe -x, -y, and -t
2015-03-17 Ali Gholami... fbff: printing subtitles
2015-03-17 Ali Gholami... ffs: decoding subtitles
2015-03-13 Ali Gholami... fbff: make terminal state local
2015-03-13 Ali Gholami... ffs: use AVFormatContext.duration if AVStream.duration...
2015-03-13 Ali Gholami... fbff: with no arguments % seeks to the beginning
2015-03-09 Ali Gholami... fbff: more accurate seeking and vi-like marks
2013-02-21 Ali Gholami... fbff: ignore oss device in pause command when no audio
2013-02-15 Ali Gholami... fbff: close the oss device when fbff is paused
2013-02-10 Ali Gholami... ffs: resample audio in ffs_adec()
2012-04-27 Ali Gholami... ffs: revert to the old ffmpeg api in ffs_adec()
2012-04-26 Ali Gholami... ffs: use the updated api in ffmpeg 0.10
2012-04-26 Ali Gholami... ffs: fix the uninitialized avpacket in ffs_adec()
2012-02-28 Ali Gholami... README: mention the new -u -s# options
2 years ago master
3 years ago tinyalsa
6 years ago libmpeg3
7 years ago nothreads_alsa