From 836848622f85231c3ff6b9af49704fec4c035df4 Mon Sep 17 00:00:00 2001 From: Tim Redfern Date: Tue, 30 Apr 2013 15:31:00 +0100 Subject: first synced render --- rotord/libavexporter.cpp | 23 +++++++++++++++++++---- 1 file changed, 19 insertions(+), 4 deletions(-) (limited to 'rotord/libavexporter.cpp') diff --git a/rotord/libavexporter.cpp b/rotord/libavexporter.cpp index 41238e7..d9faa5b 100644 --- a/rotord/libavexporter.cpp +++ b/rotord/libavexporter.cpp @@ -54,11 +54,14 @@ bool libav::Exporter::record(std::string filename){ // * video codecs and allocate the necessary encode buffers. // if (video_st) open_video(oc, video_codec, video_st); - if (audio_st) - size=open_audio(oc, audio_codec, audio_st); - - std::cerr << "opened audio codec with "<r_frame_rate.den)/audio_st->r_frame_rate.num; + audiostep=((float)audioframesize)/44100.0f; //where to get the framesize from????? + std::cerr << "opened audio codec with "<pts.val * video_st->time_base.num / video_st->time_base.den; + write_video_frame(oc, video_st, pixels); + frame->pts += av_rescale_q(1, video_st->codec->time_base, video_st->time_base); + outputframe++; + return true; +} +bool libav::Exporter::encodeFrame(uint16_t *samples){ + audio_pts = (double)audio_st->pts.val * audio_st->time_base.num / audio_st->time_base.den; + write_audio_frame(oc, audio_st, samples); + return true; +} void libav::Exporter::finishRecord(){ av_write_trailer(oc); -- cgit v1.2.3