mirror of
https://github.com/pikvm/ustreamer.git
synced 2026-03-02 13:51:41 +00:00
fix
This commit is contained in:
@@ -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;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user