Switch from WebM to full Matroska muxer
This commit is contained in:
16
ui/frame.cpp
16
ui/frame.cpp
@@ -38,7 +38,7 @@ std::string node_name_from_id(uint64_t id) {
|
||||
{CUTIHI_T('CTim','e '), "Time"},
|
||||
{CUTIHI_T('CMod','ulat'), "Modulate"},
|
||||
{CUTIHI_T('CCns','tCol'), "Constant"},
|
||||
{CUTIHI_T('CEmb','ed '), "Frame"},
|
||||
{CUTIHI_T('CEmb','ed '), "Layer"},
|
||||
{CUTIHI_T('CIma','ge '), "Image"},
|
||||
{CUTIHI_T('CWin','dow '), "Window"},
|
||||
{CUTIHI_T('CInA','udio'), "Microphone"},
|
||||
@@ -55,6 +55,7 @@ std::string node_name_from_id(uint64_t id) {
|
||||
{CUTIHI_T('CChr','omaK'), "Chroma Key"},
|
||||
{CUTIHI_T('CStr','RTMP'), "Stream RTMP"},
|
||||
{CUTIHI_T('CEnc','AACL'), "Encode AAC-LC"},
|
||||
{CUTIHI_T('CExp','Mkv '), "Mux Matroska"},
|
||||
};
|
||||
|
||||
auto nameit = NODE_ID_NAMES.find(id);
|
||||
@@ -108,7 +109,7 @@ static void ShapeGrNode(GrNode *gn) {
|
||||
gn->sources = {{"Sample", GrNode::Port::Type::SAMPLE}};
|
||||
} else if(gn->logical->type == CUTIHI_T('CEmb','ed ')) {
|
||||
gn->sources = {{"Sample", GrNode::Port::Type::SAMPLE}};
|
||||
gn->sinks = {{"Frame", GrNode::Port::Type::SAMPLE, true}};
|
||||
gn->sinks = {{"Background", GrNode::Port::Type::SAMPLE, true}};
|
||||
|
||||
int numSubs = 0;
|
||||
while(gn->logical->sinkCount > (1 + numSubs * 3 + 0) && gn->logical->sinks[1 + numSubs * 3 + 0].type != CUTIHI_VAL_NONE) {
|
||||
@@ -169,6 +170,9 @@ static void ShapeGrNode(GrNode *gn) {
|
||||
} else if(gn->logical->type == CUTIHI_T('CEnc','AACL')) {
|
||||
gn->sinks = {{"Audio", GrNode::Port::Type::SAMPLE}};
|
||||
gn->sources = {{"Bitstream"}};
|
||||
} else if(gn->logical->type == CUTIHI_T('CExp','Mkv ')) {
|
||||
gn->sinks = {{"Video Bitstream"}, {"Audio Bitstream"}, {"Filename", GrNode::Port::Type::FILE_SAVE}};
|
||||
gn->sources = {};
|
||||
}
|
||||
|
||||
gn->Fit();
|
||||
@@ -922,7 +926,7 @@ NodeGraph::NodeGraph(Frame *f) : wxPanel(f, wxID_ANY) {
|
||||
int idEncodeVp9 = menuExports->Append(wxID_ANY, "Encode VP9", "")->GetId();
|
||||
int idEncodeOpus = menuExports->Append(wxID_ANY, "Encode Opus", "")->GetId();
|
||||
int idEncodeAAC = menuExports->Append(wxID_ANY, "Encode AAC-LC", "")->GetId();
|
||||
int idMuxWebm = menuExports->Append(wxID_ANY, "Mux WebM", "")->GetId();
|
||||
int idMuxMatroska = menuExports->Append(wxID_ANY, "Mux Matroska", "")->GetId();
|
||||
int idMuxWav = menuExports->Append(wxID_ANY, "Muv Wav", "")->GetId();
|
||||
int idStreamRTMP = menuExports->Append(wxID_ANY, "Stream RTMP", "")->GetId();
|
||||
|
||||
@@ -991,9 +995,6 @@ NodeGraph::NodeGraph(Frame *f) : wxPanel(f, wxID_ANY) {
|
||||
} else if(ev.GetId() == idEncodeVp8) {
|
||||
noed = new GrNode(this);
|
||||
noed->logical = CHi_EncodeVP8();
|
||||
} else if(ev.GetId() == idMuxWebm) {
|
||||
noed = new GrNode(this);
|
||||
noed->logical = CHi_MuxWebm();
|
||||
} else if(ev.GetId() == idWindow) {
|
||||
noed = new GrNode(this);
|
||||
noed->logical = CHi_Window();
|
||||
@@ -1033,6 +1034,9 @@ NodeGraph::NodeGraph(Frame *f) : wxPanel(f, wxID_ANY) {
|
||||
} else if(ev.GetId() == idEncodeAAC) {
|
||||
noed = new GrNode(this);
|
||||
noed->logical = CHi_EncodeAAC();
|
||||
} else if(ev.GetId() == idMuxMatroska) {
|
||||
noed = new GrNode(this);
|
||||
noed->logical = CHi_MuxMatroska();
|
||||
}
|
||||
|
||||
if(noed) {
|
||||
|
||||
Reference in New Issue
Block a user