/go-amf

AMF (Action Message Format) encoding/decoding library for Go

Primary LanguageGoGNU Lesser General Public License v3.0LGPL-3.0

AMF encoding/decoding library for Go Build status

The Adobe Integrated Runtime and Adobe Flash Player use AMF to communicate between an application and a remote server. AMF encodes remote procedure calls (RPC) into a compact binary representation that can be transferred over HTTP/HTTPS or the RTMP/RTMPS protocol. Objects and data values are serialized into this binary format, which increases performance, allowing applications to load data up to 10 times faster than with text-based formats such as XML or SOAP.

AMF0

  • int / Number
  • float64 / Number
  • bool / Boolean
  • string / String
  • map[string]interface{} / Object
  • nil / Null
  • []interface{} / Array
  • time.Time / Date

AMF3

  • int, uint / Number
  • float64 / Number
  • bool / Boolean
  • string / String
  • map[string]interface{} / Object
  • nil / Null
  • []interface{} / Array
  • time.Time / Date

Unsupported

  • undefined (AMF0/3)
  • Vector* (AMF3)
  • typed objects (AMF0/3)