最後活躍 1 month ago

vitdec.cpp 原始檔案
1#include <stdio.h>
2#include <SatHelper/sathelper.h>
3
4#define FRAMEBYTES 8192
5#define FRAMEBITS (FRAMEBYTES * 8)
6
7using namespace SatHelper;
8using namespace std;
9
10
11unsigned char symbols[8 * 2 * (FRAMEBYTES + 6)];
12unsigned char bits[FRAMEBYTES];
13unsigned char output[FRAMEBYTES];
14
15int main(int argc, char **argv) {
16
17 FILE *f = fopen("jpss.dec", "rb");
18 FILE *z = fopen("jpss.vit.dec", "wb");
19 Viterbi27 viterbi(FRAMEBITS+6);
20
21 fseek(f, 0, 2);
22
23 int size = ftell(f);
24
25 fseek(f, 0, 0);
26
27 int bytesRead = 0;
28
29 while (bytesRead < size) {
30 fread(symbols, FRAMEBITS, 1, f);
31 viterbi.decode(symbols, output);
32 fwrite(output, FRAMEBYTES, 1, z);
33 bytesRead += FRAMEBITS;
34 }
35
36 cout << "File Size: " << size << endl;
37
38 //viterbi.decode(symbols, output);
39
40 fclose(f);
41 fclose(z);
42 return 0;
43}