Support relative filenames and paths with spaces.
Change-Id: I95ec2fee8e19d283ede5f595742915ed7ea3fa27
diff --git a/edgetpuvision/gst.py b/edgetpuvision/gst.py
index 7853e11..e5875f1 100644
--- a/edgetpuvision/gst.py
+++ b/edgetpuvision/gst.py
@@ -41,8 +41,11 @@
return int((outer.width - inner.width) / 2), int((outer.height - inner.height) / 2), \
inner.width, inner.height
+def escape(s):
+ return s.replace(' ', '\\ ') if isinstance(s, str) else s
+
def join_params(params, sep=' '):
- return sep.join('%s=%s' % (k.replace('_', '-'), v) for k, v in params.items())
+ return sep.join('%s=%s' % (k.replace('_', '-'), escape(v)) for k, v in params.items())
def join(name, sep, params, param_sep=' '):
return name if not params else name + sep + join_params(params, param_sep)
diff --git a/edgetpuvision/gstreamer.py b/edgetpuvision/gstreamer.py
index 2d67540..b4ecb6c 100644
--- a/edgetpuvision/gstreamer.py
+++ b/edgetpuvision/gstreamer.py
@@ -4,6 +4,7 @@
import fcntl
import functools
import os
+import pathlib
import queue
import sys
import termios
@@ -112,8 +113,7 @@
structure.get_value('height'))
def get_video_info(filename):
- #Command line: gst-discoverer-1.0 -v ~/cars_highway.mp4
- uri = 'file://' + filename
+ uri = pathlib.Path(filename).absolute().as_uri()
discoverer = GstPbutils.Discoverer()
info = discoverer.discover_uri(uri)