| 490 | } |
| 491 | |
| 492 | static void |
| 493 | live_preview_progress_cb (GtkMediaStream *video, GParamSpec *spec, signal_user_data_t *ud) |
| 494 | { |
| 495 | int64_t len, pos; |
| 496 | |
| 497 | if (!live_preview_is_ready() || ud->preview->seek_lock) |
| 498 | return; |
| 499 | |
| 500 | ud->preview->progress_lock = TRUE; |
| 501 | |
| 502 | len = gtk_media_stream_get_duration(video); |
| 503 | pos = gtk_media_stream_get_timestamp(video); |
| 504 | |
| 505 | if (len > 0) |
| 506 | { |
| 507 | double percent = (double) pos * 100 / len; |
| 508 | GtkRange *progress = GTK_RANGE(ghb_builder_widget("live_preview_progress")); |
| 509 | gtk_range_set_value(progress, percent); |
| 510 | } |
| 511 | g_idle_add((GSourceFunc)unlock_progress_cb, ud); |
| 512 | } |
| 513 | |
| 514 | G_MODULE_EXPORT gboolean |
| 515 | unlock_seek_cb(signal_user_data_t *ud) |
nothing calls this directly
no test coverage detected