Skip to content
This repository has been archived by the owner on Mar 15, 2021. It is now read-only.

Commit

Permalink
add log information
Browse files Browse the repository at this point in the history
  • Loading branch information
CatxFish committed Jan 28, 2019
1 parent 43d2223 commit a29553a
Show file tree
Hide file tree
Showing 3 changed files with 35 additions and 6 deletions.
14 changes: 12 additions & 2 deletions src/virtual-output/hflip.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -21,15 +21,25 @@ bool init_flip_filter(FlipContext* ctx,int width, int height, int format)
sprintf(args,
"video_size=%dx%d:pix_fmt=%d:time_base=%d/%d:pixel_aspect=%d/%d",
width, height, format, 1, 30, 1, 1);
ret = avfilter_graph_create_filter(&ctx->buffersrc_ctx, buffersrc, "in",
args, NULL, ctx->filter_graph);


if ((ret = avfilter_graph_create_filter(&ctx->buffersrc_ctx, buffersrc, "in",
args, NULL, ctx->filter_graph) < 0)){
avfilter_graph_free(&ctx->filter_graph);
return false;
}

buffersink_params = av_buffersink_params_alloc();
buffersink_params->pixel_fmts = pix_fmts;
ret = avfilter_graph_create_filter(&ctx->buffersink_ctx, buffersink, "out",
NULL, buffersink_params, ctx->filter_graph);
av_free(buffersink_params);

if (ret < 0) {
avfilter_graph_free(&ctx->filter_graph);
return false;
}

outputs->name = av_strdup("in");
outputs->filter_ctx = ctx->buffersrc_ctx;
outputs->pad_idx = 0;
Expand Down
7 changes: 7 additions & 0 deletions src/virtual-output/virtual_filter.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -170,6 +170,7 @@ static bool virtual_filter_start(obs_properties_t *props, obs_property_t *p,
AV_PIX_FMT_BGRA, filter->base_width, filter->base_height, interval,
filter->delay + 10);
} else {
blog(LOG_WARNING, "virtual-filter target size error");
filter->active = false;
}

Expand All @@ -179,6 +180,11 @@ static bool virtual_filter_start(obs_properties_t *props, obs_property_t *p,
obs_property_set_visible(stop, true);
shared_queue_set_delay(&filter->video_queue, filter->delay);
obs_add_main_render_callback(virtual_filter_video, data);
blog(LOG_INFO, "starting virtual-filter on VirtualCam'%d'",
filter->mode + 1);
} else {
blog(LOG_WARNING, "starting virtual-filter failed on VirtualCam'%d'",
filter->mode + 1);
}

return filter->active;
Expand All @@ -194,6 +200,7 @@ static bool virtual_filter_stop(obs_properties_t *props, obs_property_t *p,
filter->active = false;
obs_property_set_visible(p, false);
obs_property_set_visible(start, true);
blog(LOG_INFO, "virtual-filter stop");
return true;
}

Expand Down
20 changes: 16 additions & 4 deletions src/virtual-output/virtual_output.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -106,8 +106,11 @@ static bool virtual_output_start(void *data)

if (start) {

init_flip_filter(&out_data->flip_ctx, out_data->width,
out_data->height, fmt);
if (!init_flip_filter(&out_data->flip_ctx, out_data->width,
out_data->height, fmt)) {
blog(LOG_WARNING, "avfilter hflip init failed");
}

output_running = true;
shared_queue_set_delay(&out_data->video_queue, out_data->delay);
shared_queue_set_delay(&out_data->audio_queue, out_data->delay);
Expand All @@ -120,11 +123,18 @@ static bool virtual_output_start(void *data)
conv.speakers = SPEAKERS_STEREO;
obs_output_set_audio_conversion(out_data->output, &conv);
}

blog(LOG_INFO, "starting virtual-output on VirtualCam'%d'",
out_data->video_mode + 1);

} else {
output_running = false;
virtual_signal_stop("stop", true);
shared_queue_write_close(&out_data->video_queue);
shared_queue_write_close(&out_data->audio_queue);
shared_queue_write_close(&out_data->audio_queue);

blog(LOG_WARNING, "starting virtual-output failed on VirtualCam'%d'",
out_data->video_mode + 1);
}

return start;
Expand All @@ -142,6 +152,8 @@ static void virtual_output_stop(void *data, uint64_t ts)
virtual_signal_stop("stop", false);
output_running = false;
audio_running = false;

blog(LOG_INFO, "virtual-output stop");
}

static void virtual_video(void *param, struct video_data *frame)
Expand All @@ -152,7 +164,7 @@ static void virtual_video(void *param, struct video_data *frame)
virtual_out_data *out_data = (virtual_out_data*)param;
out_data->last_video_ts = frame->timestamp;
pthread_mutex_lock(&out_data->mutex);
if (out_data->hori_flip) {
if (out_data->hori_flip && out_data->flip_ctx.init) {
flip_frame(&out_data->flip_ctx, frame->data, frame->linesize);
shared_queue_push_video(&out_data->video_queue,
(uint32_t*)out_data->flip_ctx.frame_out->linesize, out_data->width,
Expand Down

0 comments on commit a29553a

Please sign in to comment.