This commit is contained in:
Devaev Maxim
2021-01-02 18:01:16 +03:00
parent 5936830b28
commit 4fc022f4d7

View File

@@ -1,4 +1,6 @@
#include <stdio.h>
#include <assert.h>
#include "../common/logging.h"
#include "../common/frame.h"
#include "../memsink/memsink.h"
@@ -11,20 +13,21 @@ int main(void) {
frame_s *src = frame_init("src");
frame_s *dest = frame_init("dest");
h264_encoder_s *encoder = h264_encoder_init();
memsink_s *memsink = memsink_init("RAW", "test", false, 0, 0, (long double)encoder->fps / (long double)encoder->gop);
memsink_s *memsink = memsink_open("RAW", "test", false, 0, 0, (long double)encoder->fps / (long double)encoder->gop);
assert(memsink);
FILE *fp = fopen("test.h264", "wb");
assert(fp);
if (memsink) {
int error = 0;
while ((error = memsink_client_get(memsink, src)) != -1) {
if (error == 0 /*|| (error == -2 && src->used > 0)*/) {
if (!h264_encoder_compress(encoder, src, dest, false)) {
LOG_INFO("frame %Lf", get_now_monotonic() - dest->grab_ts);
/*fwrite(dest->data, 1, dest->used, fp);
fflush(fp);*/
}
int error = 0;
while ((error = memsink_client_get(memsink, src)) != -1) {
if (error == 0 /*|| (error == -2 && src->used > 0)*/) {
if (!h264_encoder_compress(encoder, src, dest, false)) {
LOG_INFO("frame %Lf", get_now_monotonic() - dest->grab_ts);
fwrite(dest->data, 1, dest->used, fp);
fflush(fp);
}
}
}
fclose(fp);
return 0;
}