A solution in Beamer (inspired @masu answer, but with clockwise increments).
It actually can be used both in Beamer or in non-presentation documents: the user selects where it is convenient one or the other option via the key beamer. Usually it is set to false allowing the selection of current and total value parameters. When beamer=true, the latter parameters are overridden by the Beamer settings \insertframenumber and \inserttotalframenumber.
\documentclass{beamer}
\usepackage{lmodern}
\usepackage{tikz}
\usetikzlibrary{calc}
\setbeamertemplate{navigation symbols}{}
\makeatletter
\newif\ifbeamer%
\pgfkeys{/visual counter/.cd,
thickness/.store in=\thickness,
thickness=0.4ex,
radius/.store in=\radius,
radius=1.5ex,
segment distance/.store in=\segdist,
segment distance=8,
color current frame/.store in=\colcurrframe,
color current frame=orange,
color old frame/.store in=\cololdframe,
color old frame=blue,
color next frame/.store in=\colnextframe,
color next frame=gray!30,
current value/.store in=\currentv,
current value=1,
total value/.store in=\totalv,
total value=5,
beamer/.is if=beamer,
beamer/.default=false,
countdown/.code={
\begin{tikzpicture}[fill color/.style={}]
\ifbeamer
\pgfkeys{/visual counter/.cd,
current value=\insertframenumber,
total value=\inserttotalframenumber,
}
\fi
\def\current{\currentv}
\def\tot{\totalv}
\def\radiusout{\radius}
\def\radiusin{\radius-\thickness}
\foreach \s[] in {1,...,\tot}
{
\ifnum\s>\current%
\tikzset{fill color/.append style={\colnextframe}}%
\fi%
\ifnum\s=\current%
\tikzset{fill color/.append style={\colcurrframe}}%
\fi%
\ifnum\s<\current%
\tikzset{fill color/.append style={\cololdframe}}%
\fi%
\fill[fill color]
({90-360/\tot * (\s - 1)-\segdist}:\radiusout) arc
({90-360/\tot * (\s - 1)-\segdist}:{90-360/\tot * (\s)+\segdist}:\radiusout) --
({90-360/\tot * (\s)+\segdist}:\radiusin) arc
({90-360/\tot * (\s)+\segdist}:{90-360/\tot * (\s - 1)-\segdist}:\radiusin);
}
\end{tikzpicture}
}
}
\newcommand{\setvcoptions}[1]{
\pgfkeys{/visual counter/.cd,#1}
}
\newcommand{\addvisualcounter}{%
\tikz\node[/visual counter/.cd, beamer=true,countdown]{};
}
% new footline with
\setbeamertemplate{footline}{
\begin{beamercolorbox}[wd=0.95\textwidth, ht=2ex,dp=1ex,sep=1ex]{footline}
\hfill%
\addvisualcounter
\end{beamercolorbox}
}
\makeatother
% Let's change some options:
\setvcoptions{
segment distance=9,
thickness=0.5ex
}
\begin{document}
\begin{frame}{Title}
bla bla bla
\begin{center}
\begin{tikzpicture}
\node[/visual counter/.cd,
current value=3, total value=8,
radius=1.5cm, thickness=0.5cm,color current frame=green!80!black,countdown] at (0,0){};
\end{tikzpicture}
\end{center}
\end{frame}
\begin{frame}{Something else}
This uses the ``beamer'' option so no need to explicitly set the counters:
\begin{center}
\begin{tikzpicture}[yshift=3cm]
\node[/visual counter/.cd, radius=1.25cm, thickness=0.25cm,
beamer=true,
color current frame=green!80!black,
color old frame=magenta!80!violet,
countdown] at (0,0){};
\end{tikzpicture}
\end{center}
\end{frame}
\begin{frame}{Different title}
bla bla bla
\begin{center}
\begin{tikzpicture}
\node[/visual counter/.cd, radius=1cm, thickness=0.1cm,
color current frame=cyan!70!blue,
color old frame=magenta!80!violet,
color next frame=orange!50,
current value=6,
total value=24,
countdown] at (0,0){};
\end{tikzpicture}
\end{center}
\end{frame}
\begin{frame}{Another one}
bla bla bla
\begin{center}
\begin{tikzpicture}
\node[/visual counter/.cd, radius=1.25cm, thickness=0.5cm,
color current frame=red!70!orange,
color old frame=red!70!black,
color next frame=orange!80,
segment distance=3,
current value=6,
total value=10,
countdown] at (0,0){};
\end{tikzpicture}
\end{center}
\end{frame}
\begin{frame}{Final}
bla bla bla
\begin{center}
\begin{tikzpicture}
\node[/visual counter/.cd, radius=1.25cm, thickness=0.25cm,
color current frame=red!70!orange,
color old frame=red!70!black,
beamer=true,
countdown] at (0,0){};
\end{tikzpicture}
\end{center}
\end{frame}
\end{document}
The result:
