}
}
-
} // namespace
Mixer::Mixer(const QSurfaceFormat &format, unsigned num_cards)
cards[card_index].usb->start_bm_capture();
}
- //chain->enable_phase_timing(true);
-
// Set up stuff for NV12 conversion.
// Cb/Cr shader.
"void main() { \n"
" gl_FragColor = texture2D(cbcr_tex, tc0); \n"
"} \n";
- cbcr_program_num = resource_pool->compile_glsl_program(cbcr_vert_shader, cbcr_frag_shader);
+ vector<string> frag_shader_outputs;
+ cbcr_program_num = resource_pool->compile_glsl_program(cbcr_vert_shader, cbcr_frag_shader, frag_shader_outputs);
r128.init(2, OUTPUT_FREQUENCY);
r128.integr_start();
check_error();
glBindBuffer(GL_PIXEL_UNPACK_BUFFER_ARB, pbo);
check_error();
- glFlushMappedBufferRange(GL_PIXEL_UNPACK_BUFFER, 0, video_frame.size);
+ glMemoryBarrier(GL_CLIENT_MAPPED_BUFFER_BARRIER_BIT);
check_error();
- //glMemoryBarrier(GL_CLIENT_MAPPED_BUFFER_BARRIER_BIT);
- //check_error();
glBindTexture(GL_TEXTURE_2D, userdata->tex_cbcr[field]);
check_error();
Theme::Chain theme_main_chain = theme->get_chain(0, pts(), WIDTH, HEIGHT, input_state);
EffectChain *chain = theme_main_chain.chain;
theme_main_chain.setup_chain();
+ //theme_main_chain.chain->enable_phase_timing(true);
GLuint y_tex, cbcr_tex;
bool got_frame = h264_encoder->begin_frame(&y_tex, &cbcr_tex);