Module ammosreader.AmmosAudioDataHeader
I provide an AMMOS data header for audio data frames.
Expand source code
"""I provide an AMMOS data header for audio data frames."""
import struct
from ammosreader.AmmosConstants import AmmosAudioDemodType
class AmmosAudioDataHeader:
"""I implement an AMMOS data header for audio data frames."""
HEADER_SIZE = 36 # 9 words
@classmethod
def from_bytes(cls, bytes):
"""I return an AMMOS data header from given bytes."""
assert len(bytes) == cls.HEADER_SIZE
elements = struct.unpack('<IIQIIIII', bytes)
sample_rate = elements[0]
status = elements[1]
frequency = elements[2]
demod_bandwidth = elements[3]
demod_type = AmmosAudioDemodType(elements[4])
number_of_samples = elements[5]
number_of_channels = elements[6]
sample_size = elements[7]
return AmmosAudioDataHeader(sample_rate, status, frequency, demod_bandwidth, demod_type,
number_of_samples, number_of_channels, sample_size)
def __init__(self, sample_rate, status, frequency, demod_bandwidth, demod_type, number_of_samples,
number_of_channels, sample_size):
"""I create a new instance of myself using the above parameters."""
self.sample_rate = sample_rate
self.status = status
self.frequency = frequency
self.demod_bandwidth = demod_bandwidth
self.demod_type = AmmosAudioDemodType(demod_type)
self.number_of_samples = number_of_samples
self.number_of_channels = number_of_channels
self.sample_size = sample_size
def __str__(self):
"""I return the string representation of myself."""
return ("\nAmmosAudioDataHeader\n" +
"Sample rate:" + str(self.sample_rate) + "\n" +
"Status:" + str(self.status) + "\n" +
"Frequency:" + str(self.frequency) + "\n" +
"Demodulation bandwidth:" + str(self.demod_bandwidth) + "\n" +
"Demodulation type:" + str(self.demod_type) + "\n" +
"Sample count:" + str(self.number_of_samples) + "\n" +
"Channel count:" + str(self.number_of_channels) + "\n" +
"Sample size:" + str(self.sample_size) + "\n")
Classes
class AmmosAudioDataHeader (sample_rate, status, frequency, demod_bandwidth, demod_type, number_of_samples, number_of_channels, sample_size)
-
I implement an AMMOS data header for audio data frames.
I create a new instance of myself using the above parameters.
Expand source code
class AmmosAudioDataHeader: """I implement an AMMOS data header for audio data frames.""" HEADER_SIZE = 36 # 9 words @classmethod def from_bytes(cls, bytes): """I return an AMMOS data header from given bytes.""" assert len(bytes) == cls.HEADER_SIZE elements = struct.unpack('<IIQIIIII', bytes) sample_rate = elements[0] status = elements[1] frequency = elements[2] demod_bandwidth = elements[3] demod_type = AmmosAudioDemodType(elements[4]) number_of_samples = elements[5] number_of_channels = elements[6] sample_size = elements[7] return AmmosAudioDataHeader(sample_rate, status, frequency, demod_bandwidth, demod_type, number_of_samples, number_of_channels, sample_size) def __init__(self, sample_rate, status, frequency, demod_bandwidth, demod_type, number_of_samples, number_of_channels, sample_size): """I create a new instance of myself using the above parameters.""" self.sample_rate = sample_rate self.status = status self.frequency = frequency self.demod_bandwidth = demod_bandwidth self.demod_type = AmmosAudioDemodType(demod_type) self.number_of_samples = number_of_samples self.number_of_channels = number_of_channels self.sample_size = sample_size def __str__(self): """I return the string representation of myself.""" return ("\nAmmosAudioDataHeader\n" + "Sample rate:" + str(self.sample_rate) + "\n" + "Status:" + str(self.status) + "\n" + "Frequency:" + str(self.frequency) + "\n" + "Demodulation bandwidth:" + str(self.demod_bandwidth) + "\n" + "Demodulation type:" + str(self.demod_type) + "\n" + "Sample count:" + str(self.number_of_samples) + "\n" + "Channel count:" + str(self.number_of_channels) + "\n" + "Sample size:" + str(self.sample_size) + "\n")
Class variables
var HEADER_SIZE
Static methods
def from_bytes(bytes)
-
I return an AMMOS data header from given bytes.
Expand source code
@classmethod def from_bytes(cls, bytes): """I return an AMMOS data header from given bytes.""" assert len(bytes) == cls.HEADER_SIZE elements = struct.unpack('<IIQIIIII', bytes) sample_rate = elements[0] status = elements[1] frequency = elements[2] demod_bandwidth = elements[3] demod_type = AmmosAudioDemodType(elements[4]) number_of_samples = elements[5] number_of_channels = elements[6] sample_size = elements[7] return AmmosAudioDataHeader(sample_rate, status, frequency, demod_bandwidth, demod_type, number_of_samples, number_of_channels, sample_size)