trm

trm — Compute MusicBrainz TRM Id using libmusicbrainz

Synopsis




                    GstTRM;

Object Hierarchy


  GObject
   +----GstObject
         +----GstElement
               +----GstTRM

Properties


  "proxy-address"            gchararray            : Read / Write
  "proxy-port"               guint                 : Read / Write

Description

GstTRM computes MusicBrainz TRM identifiers for audio streams using libmusicbrainz.

A TRM identifier is something like an 'acoustic fingerprint', the aim is to uniquely identify the same song regardless of which source it comes from or which audio format the stream is in.

The TRM element will collect about 30 seconds of audio and let libmusicbrainz calculate a preliminary audio signature from that. That audio signature will then be sent over the internet to a musicbrainz.org server which will calculate the TRM for that signature.

The TRM element will post a tag message with a GST_TAG_MUSICBRAINZ_TRMID tag on the bus once the TRM has been calculated (and also send a tag event with that information downstream).

Example pipeline

Here is a test pipeline to test the TRM element:

gst-launch -m filesrc location=somefile.ogg ! decodebin ! audioconvert ! trm ! fakesink

this should (among many other things) print the tag message with the TRM ID.

Element Information

plugin musicbrainz
author Jeremy Simon <jsimon13@yahoo.fr>
class Filter/Analyzer/Audio

Details

GstTRM

typedef struct _GstTRM GstTRM;

GStreamer TRM element. This structure is opaque (private).

Property Details

The "proxy-address" property

  "proxy-address"            gchararray            : Read / Write

proxy address.

Default value: NULL


The "proxy-port" property

  "proxy-port"               guint                 : Read / Write

proxy port.

Allowed values: [1,65535]

Default value: 8080