macOS High Sierra バージョン10.13.2 に
Python 3.6.4
Kivy==1.10.1.dev0
を導入し、
python
1from kivy.app import App 2from kivy.lang import Builder 3from kivy.uix.boxlayout import BoxLayout 4import time 5 6Builder.load_string(''' 7<CameraClick>: 8 orientation: 'vertical' 9 Camera: 10 id: camera 11 resolution: (640, 480) 12 play: False 13 ToggleButton: 14 text: 'Play' 15 on_press: camera.play = not camera.play 16 size_hint_y: None 17 height: '48dp' 18 Button: 19 text: 'Capture' 20 size_hint_y: None 21 height: '48dp' 22 on_press: root.capture() 23''') 24 25class CameraClick(BoxLayout): 26 def capture(self): 27 28 camera = self.ids['camera'] 29 timestr = time.strftime("%Y%m%d_%H%M%S") 30 camera.export_to_png("IMG_{}.png".format(timestr)) 31 print("Captured") 32 33class TestCamera(App): 34 def build(self): 35 return CameraClick() 36 37TestCamera().run()
上記のコードを実行すると、下記のようなエラーが起こります
(上記のコード以外でも同じ結果になりますが、参考までに記述させていただきます)
ターミナル
[INFO ] [Logger ] Record log in /Users/○○○/.kivy/logs/kivy_18-01-30_0.txt [INFO ] [Kivy ] v1.10.1.dev0, git-Unknown, 20180127 [INFO ] [Python ] v3.6.4 (default, Jan 6 2018, 11:51:59) [GCC 4.2.1 Compatible Apple LLVM 9.0.0 (clang-900.0.39.2)] [INFO ] [Factory ] 194 symbols loaded [INFO ] [Image ] Providers: img_tex, img_imageio, img_dds, img_sdl2, img_gif (img_pil, img_ffpyplayer ignored) [INFO ] [OSC ] using <multiprocessing> for socket [INFO ] [Window ] Provider: sdl2 2018-01-30 00:05:40.449 Python[622:49718] ApplePersistenceIgnoreState: Existing state will not be touched. New state will be written to (null) [CRITICAL] [Window ] Unable to find any valuable Window provider. sdl2 - RuntimeError: b'Failed creating OpenGL pixel format' File "/usr/local/lib/python3.6/site-packages/kivy/core/__init__.py", line 67, in core_select_lib cls = cls() File "/usr/local/lib/python3.6/site-packages/kivy/core/window/window_sdl2.py", line 140, in __init__ super(WindowSDL, self).__init__() File "/usr/local/lib/python3.6/site-packages/kivy/core/window/__init__.py", line 960, in __init__ self.create_window() File "/usr/local/lib/python3.6/site-packages/kivy/core/window/window_sdl2.py", line 272, in create_window self.fullscreen, resizable, state) File "kivy/core/window/_window_sdl2.pyx", line 217, in kivy.core.window._window_sdl2._WindowSDL2Storage.setup_window (/private/var/folders/tb/n8l1_21x04s03q79m256zm4r0000gn/T/pip-1x92mc3y-build/kivy/core/window/_window_sdl2.c:3058) File "kivy/core/window/_window_sdl2.pyx", line 66, in kivy.core.window._window_sdl2._WindowSDL2Storage.die (/private/var/folders/tb/n8l1_21x04s03q79m256zm4r0000gn/T/pip-1x92mc3y-build/kivy/core/window/_window_sdl2.c:1673) [CRITICAL] [App ] Unable to get a Window, abort.
sdl2周りがなんだか上手くいっていないのは見て解るのですが、どのように解決して良いのか解らず困っております。解決法のご教授をよろしくお願い致します。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。