Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
C++ decoder for Automatic Identification System for tracking ships and decoding maritime information
C++ Python Makefile HTML
branch: master
Failed to load latest commit information.
ais Merge branch 'multiline-multistation-bugfix' of…
bin Renamed params to comform to one coding style
docs Update mid.csv to reflect ITU changes (#27).
m4 An autoconf m4/bash macro to configure libais for other libraries. C+…
src Unbreak ais9 now that travis-ci fails when gunit c++ testing fails. (…
test Merge branch 'multiline-multistation-bugfix' of…
third_party Remove .svn
utils Bugfix for collecttypes
.gitignore Moved compatibility tests to follow the common structure
.travis.yml Run C++ gunit/gmock tests in addition to python
AUTHOR.txt Switch license to Apache 2.0. Version 0.14
CMakeLists.txt Starting over on cmake support
ChangeLog.html Trigger Travis CI
LICENSE Cleanup license file Replacing every x/y pair with a dedicated Ais class instance. Add tes…
Makefile-custom remove .so files Start to autoconf build + Travis-CI badge. factor out header initialization of mmsi, repeat and mmsi, plus more …
VERSION Replacing every x/y pair with a dedicated Ais class instance. Add tes… cleanup white space Start to autoconf build
create.sql Fixed getType so that it is now a const method cleanup white space Switch license to Apache 2.0. Version 0.14 Fix ais.decode' exception so that it appears as ais.DecodeException (… Replacing every x/y pair with a dedicated Ais class instance. Add tes… Added install_requires.


Library for decoding maritime Automatic Identification System messages.

See Also

Other open source AIS projects:


Building with legacy Makefile

make -f Makefile-custom test

Building with python

python build
python install

Building with CMake

cmake .


import ais
ais.decode('15PIIv7P00D5i9HNn2Q3G?wB0t0I', 0)
ais.decode('402u=TiuaA000r5UJ`H4`?7000S:', 0)
ais.decode('55NBjP01mtGIL@CW;SM<D60P5Ld000000000000P0`<3557l0<50@kk@K5h@00000000000', 0)
import ais
import ais.compatibility.gpsd
ais.compatibility.gpsd.mangle(ais.decode('55NBjP01mtGIL@CW;SM<D60P5Ld000000000000P0`<3557l0<50@kk@K5h@00000000000', 0))

AIS Specification Documents


The C++ code was switched to the Google style in November, 2012. Indenting should be by 2 spaces.

Something went wrong with that request. Please try again.