_write_mseed(stream, filename, encoding=None, reclen=None, byteorder=None, sequence_number=None, flush=True, verbose=0, **_kwargs)[source]

Write Mini-SEED file from a Stream object.


This function should NOT be called directly, it registers via the the write() method of an ObsPy Stream object, call this instead.

  • stream (Stream) A Stream object.
  • filename (str) Name of the output file or a file-like object.
  • encoding (int or str, optional) Should be set to one of the following supported Mini-SEED data encoding formats: ASCII (0)*, INT16 (1), INT32 (3), FLOAT32 (4)*, FLOAT64 (5)*, STEIM1 (10) and STEIM2 (11)*. If no encoding is given it will be derived from the dtype of the data and the appropriate default encoding (depicted with an asterix) will be chosen.
  • reclen (int, optional) Should be set to the desired data record length in bytes which must be expressible as 2 raised to the power of X where X is between (and including) 8 to 20. Defaults to 4096
  • byteorder (int or str, optional) Must be either 0 or '<' for LSBF or little-endian, 1 or '>' for MBF or big-endian. '=' is the native byte order. If -1 it will be passed directly to libmseed which will also default it to big endian. Defaults to big endian.
  • sequence_number (int, optional) Must be an integer ranging between 1 and 999999. Represents the sequence count of the first record of each Trace. Defaults to 1.
  • flush (bool, optional) If True, all data will be packed into records. If False new records will only be created when there is enough data to completely fill a record. Be careful with this. If in doubt, choose True which is also the default value.
  • verbose (int, optional) Controls verbosity, a value of 0 will result in no diagnostic output.


The reclen, encoding, byteorder and sequence_count keyword arguments can be set in the stats.mseed of each Trace as well as kwargs of this function. If both are given the kwargs will be used.

The stats.mseed.blkt1001.timing_quality value will also be written if it is set.

The stats.mseed.blkt1001.timing_quality value will also be written if it is set.


>>> from obspy import read
>>> st = read()
>>> st.write('filename.mseed', format='MSEED')