-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathcmafp.cpp
30 lines (22 loc) · 858 Bytes
/
cmafp.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#include <emscripten/bind.h>
#include <iostream>
#include <memory>
#include <string>
#include "CmafParser.h"
#include "MediaFileReader.h"
std::string parse_cmaf_header(int id) {
std::shared_ptr<MediaFile> header_file = MediaFileReader::get_file(id);
if (header_file->is_invalid()) {
std::cout << "[CPP] Error parsing header file, invalid file reference" << std::endl;
return "{ \"error\": \"Error parsing header\"}";
}
return CmafParser::parse_header(header_file);
}
EMSCRIPTEN_BINDINGS(cmafp) {
// File Load Utilities
emscripten::function("createFile", &MediaFileReader::create_file);
emscripten::function("appendTo", &MediaFileReader::append_to);
emscripten::function("closeFile", &MediaFileReader::close_file);
// Parsing Utilities
emscripten::function("parseHeader", &parse_cmaf_header);
}