|
1 | | - |
2 | 1 | /* -*- c-basic-offset: 4 -*- */ |
3 | 2 | #include <pocketsphinx.h> |
4 | 3 |
|
| 4 | +#include "pocketsphinx/alignment.h" |
5 | 5 | #include "ps_alignment_internal.h" |
6 | 6 | #include "state_align_search.h" |
7 | 7 | #include "pocketsphinx_internal.h" |
@@ -77,11 +77,27 @@ main(int argc, char *argv[]) |
77 | 77 |
|
78 | 78 | for (itor = ps_alignment_words(al); itor; |
79 | 79 | itor = ps_alignment_iter_next(itor)) { |
80 | | - ps_alignment_entry_t *ent = ps_alignment_iter_get(itor); |
| 80 | + int start, duration, score; |
| 81 | + ps_alignment_iter_t *pitor; |
81 | 82 |
|
| 83 | + score = ps_alignment_iter_seg(itor, &start, &duration); |
| 84 | + (void) score; |
82 | 85 | printf("%s %d %d\n", |
83 | | - dict_wordstr(dict, ent->id.wid), |
84 | | - ent->start, ent->duration); |
| 86 | + ps_alignment_iter_name(itor), |
| 87 | + start, duration); |
| 88 | + for (pitor = ps_alignment_iter_children(itor); pitor; pitor = ps_alignment_iter_next(pitor)) { |
| 89 | + score = ps_alignment_iter_seg(pitor, &start, &duration); |
| 90 | + ps_alignment_iter_t *sitor; |
| 91 | + printf(" %s %d %d\n", |
| 92 | + ps_alignment_iter_name(pitor), |
| 93 | + start, duration); |
| 94 | + for (sitor = ps_alignment_iter_children(pitor); sitor; |
| 95 | + sitor = ps_alignment_iter_next(sitor)) { |
| 96 | + score = ps_alignment_iter_seg(sitor, &start, &duration); |
| 97 | + printf(" %s %d %d\n", ps_alignment_iter_name(sitor), start, |
| 98 | + duration); |
| 99 | + } |
| 100 | + } |
85 | 101 | } |
86 | 102 | itor = ps_alignment_words(al); |
87 | 103 | TEST_EQUAL(ps_alignment_iter_get(itor)->start, 0); |
|
0 commit comments