summaryrefslogtreecommitdiffstats
path: root/src/conv_acc.c
Commit message (Collapse)AuthorAgeFilesLines
* core/conv/conv_acc.c: use static allocation for trellisVadim Yanitskiy2017-06-191-27/+23
| | | | | | | | | | | Allocation of a new memory is an expensive operation, which takes place when it's initially unknown, how much memory will we need, or in order to decrease total memory usage. The trellis struct wasn't require dynamic allocation itself, so let's allocate one statically inside the vdecoder structure. Change-Id: Ib8e448823ca5548a05a45824b0b1c06743dfe5a4
* core/conv/conv_acc.c: use static allocation for vdecoderVadim Yanitskiy2017-06-191-23/+19
| | | | | | | | | | | Allocation of a new memory is an expensive operation, which takes place when it's initially unknown, how much memory will we need, or in order to decrease total memory usage. The vdecoder struct wasn't require dynamic allocation itself, so let's use static allocation in order to increase performance. Change-Id: Id1b140d3cb61db7352dcfc217a8fc36091e945ab
* core/conv/conv_acc.c: delete reset_decoder()Vadim Yanitskiy2017-06-191-20/+13
| | | | | | | | | | | | | | | Currently this implementation exposes nothing than osmo_conv_decode_acc(), so it wasn't possible to call reset_decoder() from outside. The method itself was used to initialize accumulated path metrics and the starting state of encoder. Now this code is moved to generate_trellis(). Moreover, setting accumulated path metrics inside existing loop is a bit faster that calling memset(). Change-Id: I8f17cebf468cf0106927ccee091cfb2896649cb2
* core/conv/conv_acc.c: drop unused structure memberVadim Yanitskiy2017-06-191-2/+0
| | | | Change-Id: I81f7c35abf424f501ca53d6984c0d56f7936984b
* core/conv: update description headers for conv_acc_*Vadim Yanitskiy2017-06-191-1/+1
| | | | Change-Id: I00154776c8e7d346abcbaf9048ce04d9488bb458
* core/conv: use proper filenamesVadim Yanitskiy2017-06-191-0/+728
We already have generic convolutional transcoding implementation written by Sylvain Munaut and named 'conv.c', so 'viterbi_*' names looked a bit confusing. Let's use a single naming scheme for Viterbi related code. Change-Id: I61062a8d1fbf5f5fc85b4fac58dc4e9fa8b5ef90