Compare commits

...

2 commits

Author SHA1 Message Date
6bd0bc62b9 Use only keyframes when thumbnailing 2025-03-11 10:59:27 +01:00
bc533c29b1 Avoid circular import 2025-03-11 10:42:08 +01:00

View file

@ -2,12 +2,21 @@ from __future__ import annotations
import threading
from queue import Empty, Queue
from typing import TYPE_CHECKING
from gi.repository import GLib, Gst
from .file_model import FileItem
if TYPE_CHECKING:
from .file_model import FileItem
DEFAULT_SEEK_FLAGS = Gst.SeekFlags.FLUSH | Gst.SeekFlags.KEY_UNIT
DEFAULT_SEEK_FLAGS = (
Gst.SeekFlags.FLUSH
| Gst.SeekFlags.KEY_UNIT
| Gst.SeekFlags.SNAP_NEAREST
| Gst.SeekFlags.TRICKMODE
| Gst.SeekFlags.TRICKMODE_KEY_UNITS
| Gst.SeekFlags.TRICKMODE_NO_AUDIO
)
class Thumbnailer(threading.Thread):
@ -62,7 +71,7 @@ class Thumbnailer(threading.Thread):
"uridecodebin name=uridecodebin ! "
"videoconvert ! "
"jpegenc quality=85 ! "
"appsink name=sink"
"appsink sync=false name=sink"
)
pipeline = Gst.parse_launch(pipeline_str)