rename module ecc->framing

This commit is contained in:
Roman Zeyde
2014-08-31 09:11:30 +03:00
parent c283b6dd88
commit 28d16865e5
4 changed files with 12 additions and 12 deletions

View File

@@ -15,7 +15,7 @@ from . import sampling
from . import train
from . import common
from . import config
from . import ecc
from . import framing
from . import equalizer
modem = dsp.MODEM(config)
@@ -220,7 +220,7 @@ class Receiver(object):
self.bits = itertools.chain.from_iterable(data_bits)
def decode(self, output):
chunks = ecc.decode(_blocks(self.bits))
chunks = framing.decode(_blocks(self.bits))
self.size = 0
for chunk in chunks:
output.write(chunk)
@@ -260,7 +260,7 @@ class Receiver(object):
def _blocks(bits):
while True:
block = bitarray.bitarray(endian='little')
block.extend(itertools.islice(bits, 8 * ecc.BLOCK_SIZE))
block.extend(itertools.islice(bits, 8 * framing.BLOCK_SIZE))
if not block:
break
yield bytearray(block.tobytes())

View File

@@ -12,7 +12,7 @@ from . import common
from . import config
from . import dsp
from . import stream
from . import ecc
from . import framing
from . import equalizer
modem = dsp.MODEM(config)
@@ -73,7 +73,7 @@ def main(args):
reader = stream.Reader(args.input, bufsize=(64 << 10), eof=True)
data = itertools.chain.from_iterable(reader)
encoded = itertools.chain.from_iterable(ecc.encode(data))
encoded = itertools.chain.from_iterable(framing.encode(data))
writer.modulate(bits=common.to_bits(encoded))
data_size = writer.offset - training_size

View File

@@ -1,4 +1,4 @@
from amodem import ecc
from amodem import framing
import random
import itertools
import reedsolo
@@ -11,22 +11,22 @@ def concat(chunks):
def test_random():
r = random.Random(0)
x = bytearray(r.randrange(0, 256) for i in range(64 * 1024))
y = ecc.encode(x)
x_ = concat(ecc.decode(y))
y = framing.encode(x)
x_ = concat(framing.decode(y))
assert x_ == x
def test_errors():
data = bytearray(range(244))
blocks = list(ecc.encode(data))
blocks = list(framing.encode(data))
assert len(blocks) == 2
for i in range(ecc.DEFAULT_NSYM // 2):
for i in range(framing.DEFAULT_NSYM // 2):
blocks[0][i] = blocks[0][i] ^ 0xFF
i = ecc.DEFAULT_NSYM // 2
i = framing.DEFAULT_NSYM // 2
try:
blocks[0][i] = blocks[0][i] ^ 0xFF
concat(ecc.decode(blocks))
concat(framing.decode(blocks))
assert False
except reedsolo.ReedSolomonError as e:
assert e.args == ('Too many errors to correct',)