Browser multimedia test pages for Debian Edu

To check if multimedia work properly in the browser in Debian Edu, test pages are needed. This wiki page is the place to collect such test pages. Prefer direct links to a page with multimedia content over links to the top level on a site with several different multimedia pages.

It is also useful to consider the plugin reliability.

Plugins to test

There are several plugin packages available in Debian. Here are the ones we know about:

Usage graph

Requirement and conclusion

We need an embedded plugin with control buttions that is able to stream media files (ie not download first), which support as many of the video test sites we have been asked to get working.

It is an advange if the plugin do not take much space on the CD and DVD, ie avoid pulling it many new dependencies.

At the moment (Lenny 2008-11-23), the best option seem to be mozilla-mplayer. It support all but one video site, got embedded playing, control buttons and streaming. None of the other plugins fit the requirement that well.

Non-flash based

The testing is done using iceweasel and epiphany-browser (becuase 2008-07-20 iceweasel refuses to start due to #491536).

Page/feature

mozilla-mplayer

kaffeine-mozilla

mozilla-plugin-vlc

totem-mozilla

xine-plugin

gxineplugin

gecko-mediaplayer

Package version tested

3.55-1.1

0.4.3.1.dfsg-0.2

0.8.6.h-1

2.22.2-5

1.0.2-1

?

0.9.2-1 (not in Lenny!)

Embedded in web page

Yes

No

Yes

Yes

Yes

?

Yes

Control buttons (play, pause, full screen)

Yes

Yes

No

Yes

No

?

Yes

Streaming (as opposed to download first)

Yes

?

No

Yes

?

?

?

http://nrk.no/lyd/

OK

OK

Fail

?

OK

?

?

http://www1.nrk.no/nett-tv/klipp/386768

OK

OK

Fail

OK

OK

?

?

http://tv2.no/video/?progid=249168

Fail

OK

OK

Fail

OK

?

?

http://www.aftenposten.no/webtv/

OK

OK

Fail

Fail

OK

?

?

http://www.filmarkivet.no/open/

Tweak

Fail

Fail

Fail

Fail

?

?

http://snutt.no/MovieList.aspx?CategoryRef=CFA74416-1F71-4D7C-8AE5-03F3A10542C2

OK

OK

OK

OK

OK

?

?

http://loekebergskole.no/podpress/category/podcaster/comenius/norsong/

OK

OK

Fail

Fail

OK

?

?

http://www.dr.dk/NETTV/Update/2008/07/16/140035.htm

OK

OK

OK

OK

OK

?

?

http://media01.smartcom.no/Microsite/dss_01.aspx?eventid=3476

Fail

?

?

Strange

?

?

?

The mplayer-mozilla plugin need to be configured to use TCP for RTSP for filmarkivet.no to work.

Supported mime types

Those MIME types supported by most plugins are listed first, the the plugin supporting most MIME types are listed to the left. MIME types listed in /etc/mime.types are listed in bold.

MIME type

xine-plugin 1.0.2-1

kaffeine-mozilla 0.4.3.1.dfsg-0.2

gecko-mediaplayer 0.9.2-1

mozilla-mplayer 3.55-1.1

totem-mozilla 2.22.2-5

mozilla-plugin-vlc 0.9.6-1.1

gxineplugin 0.5.903-2

application/x-mplayer2

X

X

X

X

X

X

X

audio/mpeg

X

X

X

X

X

X

X

video/mpeg

X

X

X

X

X

X

X

video/quicktime

X

X

X

X

X

X

X

video/x-ms-asf-plugin

X

X

X

X

X

X

X

video/x-msvideo

X

X

X

X

X

X

X

application/ogg

X

X

X

X

X

X

application/x-ogg

X

X

X

X

X

X

audio/wav

X

X

X

X

X

X

audio/x-mpeg

X

X

X

X

X

X

audio/x-mpegurl

X

X

X

X

X

X

audio/x-ms-wma

X

X

X

X

X

X

audio/x-ogg

X

X

X

X

X

X

audio/x-wav

X

X

X

X

X

X

video/mp4

X

X

X

X

X

X

video/x-mpeg

X

X

X

X

X

X

video/x-ms-asf

X

X

X

X

X

X

video/x-ms-wmv

X

X

X

X

X

X

video/x-ms-wvx

X

X

X

X

X

X

audio/mp4

X

X

X

X

X

audio/mpeg2

X

X

X

X

X

audio/mpeg3

X

X

X

X

X

audio/ogg

X

X

X

X

X

audio/x-mpeg2

X

X

X

X

X

audio/x-mpeg3

X

X

X

X

X

audio/x-pn-realaudio-plugin

X

X

X

X

X

video/divx

X

X

X

X

X

video/msvideo

X

X

X

X

X

video/x-flv

X

X

X

X

X

video/x-quicktime

X

X

X

X

X

application/asx

X

X

X

X

application/smil

X

X

X

X

application/vnd.rn-realmedia

X

X

X

X

application/x-nsv-vp3-mp3

X

X

X

X

application/x-quicktimeplayer

X

X

X

X

audio/basic

X

X

X

X

audio/flac

X

X

X

X

audio/mp3

X

X

X

X

audio/x-basic

X

X

X

X

audio/x-flac

X

X

X

X

audio/x-pn-realaudio

X

X

X

X

audio/x-realaudio

X

X

X

X

image/x-quicktime

X

X

X

X

video/3gpp

X

X

X

X

video/x-ms-wm

X

X

X

X

application/vnd.rn-realaudio

X

X

X

application/x-drm-v2

X

X

X

application/x-ms-wmp

X

X

X

application/x-ms-wmv

X

X

X

application/xspf+xml

X

X

X

audio/x-m4a

X

X

X

audio/x-mod

X

X

X

audio/x-ms-wax

X

X

X

audio/x-ms-wmv

X

X

X

audio/x-scpls

X

X

X

video/fli

X

X

X

video/flv

X

X

X

video/vnd.divx

X

X

X

video/vnd.rn-realvideo

X

X

X

video/vnd.vivo

X

X

X

video/x-fli

X

X

X

video/x-matroska

X

X

X

video/x-mpeg2

X

X

X

video/x-ms-wmp

X

X

X

application/annodex

X

X

application/mpeg4-iod

X

X

application/mpeg4-muxcodetable

X

X

application/x-flash-video

X

X

application/x-google-vlc-plugin

X

X

audio/3gpp

X

X

audio/3gpp2

X

X

audio/annodex

X

X

audio/mpegurl

X

X

audio/x-matroska

X

X

audio/x-mp4

X

X

video/3gpp2

X

X

video/annodex

X

X

video/mpeg-system

X

X

video/ogg

X

X

video/x-m4v

X

X

video/x-mpeg-system

X

X

video/x-ogg

X

X

application/vnd.ms-asf

X

application/x-annodex

X

application/x-ms-wms

X

application/x-ogm

X

application/x-ogm-audio

X

application/x-ogm-video

X

application/x-vlc-plugin

X

application/x-xine-plugin

X

audio/168sv

X

audio/8svx

X

audio/aiff

X

audio/midi

X

audio/mpeg4

X

audio/musepack

X

audio/vnd.rn-realaudio

X

audio/x-16sv

X

audio/x-8svx

X

audio/x-aiff

X

audio/x-annodex

X

audio/x-mp3

X

audio/x-ms-asx

X

audio/x-musepack

X

audio/x-pn-aiff

X

audio/x-pn-au

X

audio/x-pn-wav

X

audio/x-pn-windows-acm

X

audio/x-real-audio

X

audio/x-wavpack

X

image/ilbm

X

image/png

X

image/x-ilbm

X

image/x-macpaint

X

image/x-pict

X

image/x-png

X

video/anim

X

video/mkv

X

video/mng

X

video/mpeg4

X

video/x-anim

X

video/x-annodex

X

video/x-flic

X

video/x-mng

X

video/x-ms-wax

X

video/x-ms-wma

X

video/x-nsv

X

video/x-wmv

X

This is the script used to generate the list of MIME types.

#
# List the supported MIME types of the available
# mozilla/firefox/iceweasel plugins.

cat > x.c <<EOF
#include <stdio.h>
int main(int argc, char *argv[]) {
  printf("%s\n", NPP_GetMIMEDescription());
  return 0;
}
EOF

( for f in /usr/lib/mozilla/plugins/*.so; do
    gcc -o x x.c $f -Wl,-rpath,/usr/lib/mozilla/plugins > /dev/null 2>&1
    pkg=`dpkg -S $f|cut -d: -f1`
    ver=`dpkg -l $pkg|awk '/^ii/ {print $3}' | sed s/:/_/g`
    if [ "$pkg" ] ; then
      if [ -x x ] ; then
        ./x | sed "s/;/;\n/g" | sed "s%^%$pkg:$ver:%" | sort
      else
        #echo error: Unable to fetch info from $f 1>&2
        for mime in $(strings $f |egrep '(audio|video|application|image)/') ; do
          echo "$pkg:$ver:$mime::;"
        done
      fi
    fi
done ) | perl -e '
my %mimetypes = ();
my %pkgs = ();
my %supported = ();
while (<>) {
# mozilla-plugin-vlc:0.8.6.h-4+lenny2:application/x-mplayer2::Windows Media;
  my ($pkg, $ver, $mime, $ext, $desc) = split(/:/);
  $pkgs{$pkg} = $ver;
  $supported{$pkg}++;
  $mimetypes{$mime}{$pkg} = 1;
}

my %official = ();
open(F, "/etc/mime.types");
while (<F>) {
  s/\#.*$//;
  next if m/^\s*$/;
  my ($mime) = split(/\s+/);
  $official{$mime} = 1;
}
close(F);

print "|| MIME type ||";
for my $pkg (sort { $supported{$b} <=> $supported{$a} } keys %pkgs) {
  my $ver = $pkgs{$pkg};
  print " $pkg $ver ||";
}
print "\n";
sub sorter {
  my $ret = scalar keys %{$mimetypes{$b}} <=> scalar keys %{$mimetypes{$a}};
  if (0 == $ret) {
    $ret = $a cmp $b;
  }
  return $ret;
}
sub wikibold {
  my $str = shift;
  return chr(39) x 3 . $str . chr(39) x 3 ;
}
for my $mime (sort sorter keys %mimetypes) {
  next if $mime =~ m/^\s*$/;
  if (exists $official{$mime}) {
    print "|| " . wikibold($mime) . " || ";
  } else {
    print "|| $mime || ";
  }
  for my $pkg (sort { $supported{$b} <=> $supported{$a} } keys %pkgs) {
    if ($mimetypes{$mime}{$pkg}) {
      print "  X ||";
    } else {
      print "    ||";
    }
  }
  print "\n";
}
'

Flash based

See DebianEdu/FlashInDebianEdu.