Closed WahyuArm closed 5 years ago
Try playing other audio files, like a simple mp3. If other files work, then it's specific to the file you're trying to play (which you should attach to the issue so we can replicate). Otherwise, there's something wrong with your installation.
If it's the former, then we're not shipping enough of gstreamer's deps in kivy.deps.gstreamer.
The same problem also occurs when I try with kivy-example/audio. When I try to click on the sample button for the first time, some error messages appear.
After closing all messages, the sample app can play the file. Then i try to click again on another sample button, the application can play any files normally.
Logs:
C:\Perf\kivy-runtime\share\kivy-examples\audio>python main.py
[INFO ] [Logger ] Record log in C:\Users\wahyu\.kivy\logs\kivy_18-08-27_24.txt
[INFO ] [Kivy ] v1.11.0.dev0, git-ae7646c, 20180823
[INFO ] [Python ] v2.7.13 (v2.7.13:a06454b1afa1, Dec 17 2016, 20:53:40) [MSC v.1500 64 bit (AMD64)]
[INFO ] [Factory ] 195 symbols loaded
[INFO ] [Image ] Providers: img_tex, img_dds, img_sdl2, img_gif (img_pil, img_ffpyplayer ignored)
[INFO ] [Text ] Provider: sdl2
[INFO ] [AudioGstplayer] Using Gstreamer 1.14.1.0
[INFO ] [Audio ] Providers: audio_gstplayer, audio_sdl2 (audio_ffpyplayer ignored)
[INFO ] [Window ] Provider: sdl2
[INFO ] [GL ] Using the "OpenGL" graphics system
[INFO ] [GL ] GLEW initialization succeeded
[INFO ] [GL ] Backend used <glew>
[INFO ] [GL ] OpenGL version <4.6.0 NVIDIA 398.36>
[INFO ] [GL ] OpenGL vendor <NVIDIA Corporation>
[INFO ] [GL ] OpenGL renderer <GeForce GT 1030/PCIe/SSE2>
[INFO ] [GL ] OpenGL parsed version: 4, 6
[INFO ] [GL ] Shading version <4.60 NVIDIA>
[INFO ] [GL ] Texture max size <32768>
[INFO ] [GL ] Texture max units <32>
[INFO ] [Window ] auto add sdl2 input provider
[INFO ] [Window ] virtual keyboard not allowed, single mode, not docked
[INFO ] [GL ] NPOT texture support is available
[INFO ] [Base ] Start application main loop
(python.exe:7572): GStreamer-WARNING **: Failed to load plugin 'C:\Perf\kivy-runtime\share\gstreamer\bin\libass-9.dll': 'C:\Perf\kivy-runtime\share\gstreamer\bin\libass-9.dll': The specified procedure could not be found.
(python.exe:7572): GStreamer-WARNING **: Failed to load plugin 'C:\Perf\kivy-runtime\share\gstreamer\bin\libgnutlsxx-28.dll': 'C:\Perf\kivy-runtime\share\gstreamer\bin\libgnutlsxx-28.dll': The specified module could not be found.
(python.exe:7572): GStreamer-WARNING **: Failed to load plugin 'C:\Perf\kivy-runtime\share\gstreamer\bin\libgstassrender.dll': 'C:\Perf\kivy-runtime\share\gstreamer\bin\libgstassrender.dll': The specified procedure could not be found.
(python.exe:7572): GStreamer-WARNING **: Failed to load plugin 'C:\Perf\kivy-runtime\share\gstreamer\bin\libgstdecklink.dll': 'C:\Perf\kivy-runtime\share\gstreamer\bin\libgstdecklink.dll': The specified module could not be found.
(python.exe:7572): GStreamer-WARNING **: Failed to load plugin 'C:\Perf\kivy-runtime\share\gstreamer\bin\libgstopenh264.dll': 'C:\Perf\kivy-runtime\share\gstreamer\bin\libgstopenh264.dll': The specified module could not be found.
(python.exe:7572): GStreamer-WARNING **: Failed to load plugin 'C:\Perf\kivy-runtime\share\gstreamer\bin\libgstpango.dll': 'C:\Perf\kivy-runtime\share\gstreamer\bin\libgstpango.dll': The specified procedure could not be found.
(python.exe:7572): GStreamer-WARNING **: Failed to load plugin 'C:\Perf\kivy-runtime\share\gstreamer\bin\libgstrsvg.dll': 'C:\Perf\kivy-runtime\share\gstreamer\bin\libgstrsvg.dll': The specified procedure could not be found.
(python.exe:7572): GStreamer-WARNING **: Failed to load plugin 'C:\Perf\kivy-runtime\share\gstreamer\bin\libgstsoundtouch.dll': 'C:\Perf\kivy-runtime\share\gstreamer\bin\libgstsoundtouch.dll': The specified procedure could not be found.
(python.exe:7572): GStreamer-WARNING **: Failed to load plugin 'C:\Perf\kivy-runtime\share\gstreamer\bin\libgsttaglib.dll': 'C:\Perf\kivy-runtime\share\gstreamer\bin\libgsttaglib.dll': The specified module could not be found.
(python.exe:7572): GStreamer-WARNING **: Failed to load plugin 'C:\Perf\kivy-runtime\share\gstreamer\bin\libharfbuzz-0.dll': 'C:\Perf\kivy-runtime\share\gstreamer\bin\libharfbuzz-0.dll': The specified procedure could not be found.
(python.exe:7572): GStreamer-WARNING **: Failed to load plugin 'C:\Perf\kivy-runtime\share\gstreamer\bin\libopenh264.dll': 'C:\Perf\kivy-runtime\share\gstreamer\bin\libopenh264.dll': The specified procedure could not be found.
(python.exe:7572): GStreamer-WARNING **: Failed to load plugin 'C:\Perf\kivy-runtime\share\gstreamer\bin\libpangocairo-1.0-0.dll': 'C:\Perf\kivy-runtime\share\gstreamer\bin\libpangocairo-1.0-0.dll': The specified procedure could not be found.
(python.exe:7572): GStreamer-WARNING **: Failed to load plugin 'C:\Perf\kivy-runtime\share\gstreamer\bin\libpangoft2-1.0-0.dll': 'C:\Perf\kivy-runtime\share\gstreamer\bin\libpangoft2-1.0-0.dll': The specified procedure could not be found.
(python.exe:7572): GStreamer-WARNING **: Failed to load plugin 'C:\Perf\kivy-runtime\share\gstreamer\bin\librsvg-2-2.dll': 'C:\Perf\kivy-runtime\share\gstreamer\bin\librsvg-2-2.dll': The specified procedure could not be found.
(python.exe:7572): GStreamer-WARNING **: Failed to load plugin 'C:\Perf\kivy-runtime\share\gstreamer\bin\libSoundTouch-1.dll': 'C:\Perf\kivy-runtime\share\gstreamer\bin\libSoundTouch-1.dll': The specified procedure could not be found.
(python.exe:7572): GStreamer-WARNING **: Failed to load plugin 'C:\Perf\kivy-runtime\share\gstreamer\bin\libtag.dll': 'C:\Perf\kivy-runtime\share\gstreamer\bin\libtag.dll': The specified procedure could not be found.
I also screenshot the error message and sort the error sequence based on the previous logs (I don't know, maybe this can help)
PATH
to make sure it doesn't have weird paths on it and therefore picking up dlls that may conflict.There's likely some conflict between gstreamer and some other library that was also compiled with mingw, but a different version. I don't think it's the other kivy.deps.xxx, as other people would have a similar issue.
You could (and probably should anyway :D) upgrade to python 3 because for python 3 our deps is compiled with msvc which should not have these problems.
Are you running it under mingw? If you don't know what this means, then you aren't.
For the first time I did not use mingw when reinstalling, because of problems with gstreamer then I tried using mingw and got the same problem.
When i try to downgrade kivy.deps.gstreamer to 0.1.12, it doesn't event play the file at all. There is a message: "[Warning] [AudioGstplayer] Resource not found" when trying to play a sound. Kivy 1.10.1 also has the same problem.
How did you get python?
I downloaded the installer directly from python.org and i also tried KivyInstaller documented at https://github.com/kivy/kivy/wiki/Batch-installer-for-windows(KivyInstaller).
after trying many times, I finally reported this problem :D
Check your PATH to make sure it doesn't have weird paths on it and therefore picking up dlls that may conflict.
I don't think this is the problem, because I just reinstalled Windows (Windows 10 - 1803) and there is no other python installation
There's likely some conflict between gstreamer and some other library that was also compiled with mingw, but a different version. I don't think it's the other kivy.deps.xxx, as other people would have a similar issue.
I tried to googling about this problem and didn't get results. With a confused mind :D, i try to just reinstall kivy on another PC, and also get the same results
You could (and probably should anyway :D) upgrade to python 3 because for python 3 our deps is compiled with msvc which should not have these problems.
I really want to (very tempted), but I need to convert it first to python3 :D For now, maybe I'll try to downgrade "Kivy" first and see what I can do
Hmm... Can you open a terminal, the same terminal you use to run python, echo PATH
and print the result? Just to be sure.
Do you have mingw installed on your system? You seemed to be saying that you installed that from there previously.
Also, a quick workaround is to use ffpyplayer
instead. Try installed it with pip install ffpyplayer
and then set KIVY_VIDEO
to ffpyplayer
in the environment, and then kivy will use ffpyplayer instead.
Ok, Here's the result for PATH:
C:\Perf\kivy-runtime>echo %PATH%
C:\Perf\kivy-runtime\;C:\Perf\kivy-runtime\Tools;C:\Perf\kivy-runtime\Scripts;C:\Perf\kivy-runtime\share\sdl2\bin;C:\Perf\kivy-runtime\Lib\idlelib;C:\ProgramData\Oracle\Java\javapath;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\Program Files\PuTTY\;C:\ProgramData\chocolatey\bin;C:\Program Files\OpenSSH-Win64;D:\Perf\apache-maven\bin;C:\Program Files\Java\jdk1.8.0_131\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\WINDOWS\System32\OpenSSH\;C:\Program Files\Git\cmd;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Users\wahyu\AppData\Local\Microsoft\WindowsApps
Do you have mingw installed on your system? You seemed to be saying that you installed that from there previously.
No, I'm not using mingw. But I tried to compile Kivy from https://kivy.org/doc/stable/installation/installation-windows.html#use-development-kivy. and delete the installation because of the same problem.
now I use the wheel package to install Kivy
Also, a quick workaround is to use ffpyplayer instead. Try installed it with pip install ffpyplayer and then set KIVY_VIDEO to ffpyplayer in the environment, and then kivy will use ffpyplayer instead.
ffpyplayer doesn't have a wheel package for python2. I got an error when installing it. I'll try using mingwpy to install it or i need to install kivy.deps.sdl2_dev?
Just curious and I tried replacing some files with the older version of kivy.deps.gstreamer (0.1.12). The file that I replace is only the file that appears in the popup message, such as:
After replacing, now there are only 2 popup messages (libopenh264.dl and libtag.dll) and the error message on the terminal decreases (I don't know if this makes a difference from your point of view).
Logs:
C:\Perf\kivy-runtime\share\kivy-examples\audio>python main.py
[INFO ] [Logger ] Record log in C:\Users\wahyu\.kivy\logs\kivy_18-08-27_53.txt
[INFO ] [Kivy ] v1.11.0.dev0, git-ae7646c, 20180823
[INFO ] [Python ] v2.7.13 (v2.7.13:a06454b1afa1, Dec 17 2016, 20:53:40) [MSC v.1500 64 bit (AMD64)]
[INFO ] [Factory ] 195 symbols loaded
[INFO ] [Image ] Providers: img_tex, img_dds, img_sdl2, img_gif (img_pil, img_ffpyplayer ignored)
[INFO ] [Text ] Provider: sdl2
[INFO ] [AudioGstplayer] Using Gstreamer 1.14.1.0
[INFO ] [Audio ] Providers: audio_gstplayer, audio_sdl2 (audio_ffpyplayer ignored)
[INFO ] [Window ] Provider: sdl2
[INFO ] [GL ] Using the "OpenGL" graphics system
[INFO ] [GL ] GLEW initialization succeeded
[INFO ] [GL ] Backend used <glew>
[INFO ] [GL ] OpenGL version <4.6.0 NVIDIA 398.36>
[INFO ] [GL ] OpenGL vendor <NVIDIA Corporation>
[INFO ] [GL ] OpenGL renderer <GeForce GT 1030/PCIe/SSE2>
[INFO ] [GL ] OpenGL parsed version: 4, 6
[INFO ] [GL ] Shading version <4.60 NVIDIA>
[INFO ] [GL ] Texture max size <32768>
[INFO ] [GL ] Texture max units <32>
[INFO ] [Window ] auto add sdl2 input provider
[INFO ] [Window ] virtual keyboard not allowed, single mode, not docked
[INFO ] [GL ] NPOT texture support is available
[INFO ] [Base ] Start application main loop
(python.exe:6560): GStreamer-WARNING **: Failed to load plugin 'C:\Perf\kivy-runtime\share\gstreamer\bin\libgnutlsxx-28.dll': 'C:\Perf\kivy-runtime\share\gstreamer\bin\libgnutlsxx-28.dll': The specified module could not be found.
(python.exe:6560): GStreamer-WARNING **: Failed to load plugin 'C:\Perf\kivy-runtime\share\gstreamer\bin\libgstdecklink.dll': 'C:\Perf\kivy-runtime\share\gstreamer\bin\libgstdecklink.dll': The specified module could not be found.
(python.exe:6560): GStreamer-WARNING **: Failed to load plugin 'C:\Perf\kivy-runtime\share\gstreamer\bin\libgstopenh264.dll': 'C:\Perf\kivy-runtime\share\gstreamer\bin\libgstopenh264.dll': The specified module could not be found.
(python.exe:6560): GStreamer-WARNING **: Failed to load plugin 'C:\Perf\kivy-runtime\share\gstreamer\bin\libgstsoundtouch.dll': 'C:\Perf\kivy-runtime\share\gstreamer\bin\libgstsoundtouch.dll': The specified module could not be found.
(python.exe:6560): GStreamer-WARNING **: Failed to load plugin 'C:\Perf\kivy-runtime\share\gstreamer\bin\libgsttaglib.dll': 'C:\Perf\kivy-runtime\share\gstreamer\bin\libgsttaglib.dll': The specified module could not be found.
(python.exe:6560): GStreamer-WARNING **: Failed to load plugin 'C:\Perf\kivy-runtime\share\gstreamer\bin\libopenh264.dll': 'C:\Perf\kivy-runtime\share\gstreamer\bin\libopenh264.dll': The specified procedure could not be found.
(python.exe:6560): GStreamer-WARNING **: Failed to load plugin 'C:\Perf\kivy-runtime\share\gstreamer\bin\libSoundTouch-1.dll': 'C:\Perf\kivy-runtime\share\gstreamer\bin\libSoundTouch-1.dll': The specified module could not be found.
(python.exe:6560): GStreamer-WARNING **: Failed to load plugin 'C:\Perf\kivy-runtime\share\gstreamer\bin\libtag.dll': 'C:\Perf\kivy-runtime\share\gstreamer\bin\libtag.dll': The specified procedure could not be found.
Try doing set PATH="C:\Perf\kivy-runtime\;C:\Perf\kivy-runtime\Tools;C:\Perf\kivy-runtime\Scripts;C:\Perf\kivy-runtime\share\sdl2\bin;C:\Perf\kivy-runtime\Lib\idlelib;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\WINDOWS\System32\OpenSSH\;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Users\wahyu\AppData\Local\Microsoft\WindowsApps"
and then run kivy and see if that fixes it. I removed all the possible conflicts (non-windows stuff) from your path.
Thanks, but after trying a new PATH and reinstalling kivy.deps.gstreamer, the same problem still exists
Logs:
C:\Perf\kivy-runtime>set PATH="C:\Perf\kivy-runtime\;C:\Perf\kivy-runtime\Tools;C:\Perf\kivy-runtime\Scripts;C:\Perf\kivy-runtime\share\sdl2\bin;C:\Perf\kivy-runtime\Lib\idlelib;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\WINDOWS\System32\OpenSSH\;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Users\wahyu\AppData\Local\Microsoft\WindowsApps"
C:\Perf\kivy-runtime>cd share\kivy-examples\audio
C:\Perf\kivy-runtime\share\kivy-examples\audio>python main.py
'python' is not recognized as an internal or external command,
operable program or batch file.
C:\Perf\kivy-runtime\share\kivy-examples\audio>C:\Perf\kivy-runtime\python.exe main.py
Purge log fired. Analysing...
Purge finished!
[INFO ] [Logger ] Record log in C:\Users\wahyu\.kivy\logs\kivy_18-08-29_8.txt
[INFO ] [Kivy ] v1.11.0.dev0, git-ae7646c, 20180823
[INFO ] [Python ] v2.7.13 (v2.7.13:a06454b1afa1, Dec 17 2016, 20:53:40) [MSC v.1500 64 bit (AMD64)]
[INFO ] [Factory ] 195 symbols loaded
[INFO ] [Image ] Providers: img_tex, img_dds, img_sdl2, img_gif (img_pil, img_ffpyplayer ignored)
[INFO ] [Text ] Provider: sdl2
[INFO ] [AudioGstplayer] Using Gstreamer 1.14.1.0
[INFO ] [Audio ] Providers: audio_gstplayer, audio_sdl2 (audio_ffpyplayer ignored)
[INFO ] [Window ] Provider: sdl2
[INFO ] [GL ] Using the "OpenGL" graphics system
[INFO ] [GL ] GLEW initialization succeeded
[INFO ] [GL ] Backend used <glew>
[INFO ] [GL ] OpenGL version <4.6.0 NVIDIA 398.36>
[INFO ] [GL ] OpenGL vendor <NVIDIA Corporation>
[INFO ] [GL ] OpenGL renderer <GeForce GT 1030/PCIe/SSE2>
[INFO ] [GL ] OpenGL parsed version: 4, 6
[INFO ] [GL ] Shading version <4.60 NVIDIA>
[INFO ] [GL ] Texture max size <32768>
[INFO ] [GL ] Texture max units <32>
[INFO ] [Window ] auto add sdl2 input provider
[INFO ] [Window ] virtual keyboard not allowed, single mode, not docked
[INFO ] [GL ] NPOT texture support is available
[INFO ] [Base ] Start application main loop
(python.exe:760): GStreamer-WARNING **: Failed to load plugin 'C:\Perf\kivy-runtime\share\gstreamer\bin\libass-9.dll': 'C:\Perf\kivy-runtime\share\gstreamer\bin\libass-9.dll': The specified procedure could not be found.
(python.exe:760): GStreamer-WARNING **: Failed to load plugin 'C:\Perf\kivy-runtime\share\gstreamer\bin\libgnutlsxx-28.dll': 'C:\Perf\kivy-runtime\share\gstreamer\bin\libgnutlsxx-28.dll': The specified module could not be found.
(python.exe:760): GStreamer-WARNING **: Failed to load plugin 'C:\Perf\kivy-runtime\share\gstreamer\bin\libgstassrender.dll': 'C:\Perf\kivy-runtime\share\gstreamer\bin\libgstassrender.dll': The specified procedure could not be found.
(python.exe:760): GStreamer-WARNING **: Failed to load plugin 'C:\Perf\kivy-runtime\share\gstreamer\bin\libgstdecklink.dll': 'C:\Perf\kivy-runtime\share\gstreamer\bin\libgstdecklink.dll': The specified module could not be found.
(python.exe:760): GStreamer-WARNING **: Failed to load plugin 'C:\Perf\kivy-runtime\share\gstreamer\bin\libgstopenh264.dll': 'C:\Perf\kivy-runtime\share\gstreamer\bin\libgstopenh264.dll': The specified module could not be found.
(python.exe:760): GStreamer-WARNING **: Failed to load plugin 'C:\Perf\kivy-runtime\share\gstreamer\bin\libgstpango.dll': 'C:\Perf\kivy-runtime\share\gstreamer\bin\libgstpango.dll': The specified procedure could not be found.
(python.exe:760): GStreamer-WARNING **: Failed to load plugin 'C:\Perf\kivy-runtime\share\gstreamer\bin\libgstrsvg.dll': 'C:\Perf\kivy-runtime\share\gstreamer\bin\libgstrsvg.dll': The specified procedure could not be found.
(python.exe:760): GStreamer-WARNING **: Failed to load plugin 'C:\Perf\kivy-runtime\share\gstreamer\bin\libgstsoundtouch.dll': 'C:\Perf\kivy-runtime\share\gstreamer\bin\libgstsoundtouch.dll': The specified procedure could not be found.
(python.exe:760): GStreamer-WARNING **: Failed to load plugin 'C:\Perf\kivy-runtime\share\gstreamer\bin\libgsttaglib.dll': 'C:\Perf\kivy-runtime\share\gstreamer\bin\libgsttaglib.dll': The specified module could not be found.
(python.exe:760): GStreamer-WARNING **: Failed to load plugin 'C:\Perf\kivy-runtime\share\gstreamer\bin\libharfbuzz-0.dll': 'C:\Perf\kivy-runtime\share\gstreamer\bin\libharfbuzz-0.dll': The specified procedure could not be found.
(python.exe:760): GStreamer-WARNING **: Failed to load plugin 'C:\Perf\kivy-runtime\share\gstreamer\bin\libopenh264.dll': 'C:\Perf\kivy-runtime\share\gstreamer\bin\libopenh264.dll': The specified procedure could not be found.
(python.exe:760): GStreamer-WARNING **: Failed to load plugin 'C:\Perf\kivy-runtime\share\gstreamer\bin\libpangocairo-1.0-0.dll': 'C:\Perf\kivy-runtime\share\gstreamer\bin\libpangocairo-1.0-0.dll': The specified procedure could not be found.
(python.exe:760): GStreamer-WARNING **: Failed to load plugin 'C:\Perf\kivy-runtime\share\gstreamer\bin\libpangoft2-1.0-0.dll': 'C:\Perf\kivy-runtime\share\gstreamer\bin\libpangoft2-1.0-0.dll': The specified procedure could not be found.
(python.exe:760): GStreamer-WARNING **: Failed to load plugin 'C:\Perf\kivy-runtime\share\gstreamer\bin\librsvg-2-2.dll': 'C:\Perf\kivy-runtime\share\gstreamer\bin\librsvg-2-2.dll': The specified procedure could not be found.
(python.exe:760): GStreamer-WARNING **: Failed to load plugin 'C:\Perf\kivy-runtime\share\gstreamer\bin\libSoundTouch-1.dll': 'C:\Perf\kivy-runtime\share\gstreamer\bin\libSoundTouch-1.dll': The specified module could not be found.
(python.exe:760): GStreamer-WARNING **: Failed to load plugin 'C:\Perf\kivy-runtime\share\gstreamer\bin\libtag.dll': 'C:\Perf\kivy-runtime\share\gstreamer\bin\libtag.dll': The specified module could not be found.
"""
I'm not sure what exactly can be done at this point without access to the computer. You can try downloading the gstreamer binaries (msi) from https://gstreamer.freedesktop.org/data/pkg/windows/1.14.2/, extract them (by installing and copying or using msiexec /a file.exe /qb TARGETDIR=dir_name
if you're adventurous) and then copy all the files (similarly to how it's currently organized under share/gstreamer) into the python shared folder and trying again. But given that no other people have similar issues I think something most be going on with your computer(s) that we're missing.
Regarding ffpyplayer, you can try the previous version (https://pypi.org/project/ffpyplayer/4.0.1/) which does have a py2 wheel.
Sorry for the slow response. I've tried it and still have the same problem. maybe I'll try it on a PC with another version of Windows (7 or 8) and report it here.
Regarding ffpyplayer, you can try the previous version (https://pypi.org/project/ffpyplayer/4.0.1/) which does have a py2 wheel.
Works well but sometimes applications suddenly crash without error messages. I will try to compile 4.1.0
Does ffpyplayer get the same support as gstreamer on Kivy? Interested, because I don't have to include a huge number of dependencies when creating packages if using ffpyplayer
Looks like this is common upgrade problem. We released the Mission Pinball Framework version 0.51 yesterday and updated our kivy dependencies. Since yesterday we received multiple reports with exactly this issue (e.g. here https://groups.google.com/forum/#!topic/mpf-users/YSLfd-GKk0Q). Is there any solution for this?
Hello, I was going a bit crazy trying to figure this one out; as I was having some of the same errors, 6 or 7 of them. I'm a newbie but I believe the SDL2 and GStreamer's audio DLLs were conflicting with each other. I deleted GStreamer from my Python's 'share' folder, and attempted to run my kivy app. And to my surprise, the app ran without any error, and was even playing sound. I looked in the SDL2 folder that was in the same folder as the other kivy dependencies, and it contained many of the same DLLs as GStreamer. ( I was in the process of installing ffpyplayer when I discovered the fix, but SDL2 and ffpyplayer are being nice to each other)
Removing Gstreamer fixed my issue. I hope it fixes yours too, Best of luck. : )
Hello, I was going a bit crazy trying to figure this one out; as I was having some of the same errors, 6 or 7 of them. I'm a newbie but I believe the SDL2 and GStreamer's audio DLLs were conflicting with each other. I deleted GStreamer from my Python's 'share' folder, and attempted to run my kivy app. And to my surprise, the app ran without any error, and was even playing sound. I looked in the SDL2 folder that was in the same folder as the other kivy dependencies, and it contained many of the same DLLs as GStreamer. ( I was in the process of installing ffpyplayer when I discovered the fix, but SDL2 and ffpyplayer are being nice to each other)
Removing Gstreamer fixed my issue. I hope it fixes yours too, Best of luck. : )
This stopped the warnings and the CPU utilization reduced drastically (It was running at 90-95%). New Issue: I have defined my video widgets in a kv file and I have set the volume to 0 in the same kv file. But the video was not muted. I tried using using VideoPlayer widget instead. Even though the video was not muted, the volume icon was set to mute (int: 0). When I clicked this volume button twice (unmute and then mute the video again), the volume was set to 0.
Update: I tried to implement the same fix in a different system. But it seems like if we delete/rename the "gstreamer" folder in "share" we need to have ffpyplayer to play the video. Then I tried to remove only the conflicting dll, but the CPU utilization (when using gstreamer) was very high. While using ffpyplayer, decrease in CPU utilization is about 20% compared to gstreamer (I am running 1 Kivy app in 3 screens). Any suggestions on how reduced CPU utilization is helpful.
I ran into the same problem when switching from python2 to python3 in kivy. My kivy app which was running fine in python2 (gstreamer 1.10.2.0) showed this entry-point issue in python3 (gstreamer 1.14.1.0). So I copied the gstreamer directory from my python2 dir over to python3 (%pythonpath%share\gstreamer) and its working flawlessly like it should.
I couldn't figure out how to downgrade gstreamer otherwise / could not find an older wheel. Where could you find an older gstreamer version ?
[Kivy ] v1.10.1 on Windows 10 [Python ] v3.7.0 (v3.7.0:1bf9cc5093, Jun 27 2018, 04:06:47) [MSC v.1914 32 bit (Intel)]
Got the same issue on a Fresh Windows Familly 10, Python 3.7, latest Kivy 1.10.1, and kivy.deps.gstreamer.
@tito afaik this has been broken for a while. We downgraded the dependencies for all our MPF users. That seems to work reasonably well with 1.10.1. Just some video codecs stopped working which worked in 1.10.0.
Gstreamer has finally released msvc build, which we can use for python 3.5+. I'm trying them out now and will be sharing them later.
One problem will be that we'll have to change how we discover if if gstreamer is available during a kivy compile. Previously we used pkg-config, but that is not easily available anymore it seems, especially not for an msvc environment. So instead I'll check if kivy.deps.gstreamer_dev
is installed.
The problem is that previous versions of kivy won't compile gstreamer because they would check for pkg-config, not find it and then assume gstreamer is not available. So it will only work with the next kivy release (or master).
Pre-compiled kivy should work with it though (hopefully there won't be binary clashes in the switch from mingw to msvc).
In such case users would have to chose between upgrading kivy or downgrading gstreamer, right? It seems like a decent enough solution. We could just document the known issue and these solutions.
That is what we already have to do in 1.10.1 so it won't get worse. I would like to reenable more video codecs at some time in the future.
We should probably get our users in the habit of pinning their kivy.deps.xxx
to specific versions. So that they have a chance to test the most recent versions rather than just randomly getting the most recent ones. That could be part of the documentation.
Here are the new wheels if you'd like to give it a try: https://kivy.org/downloads/ci/win/deps/gstreamer/. I haven't had a chance to try it yet though so it may not work at all. Until I fix master to be able to compile with the new wheels, you'll have to use it with a already compiled kivy.
I tried the new gstreamer wheel and it turns out that you do need to recompile kivy with it. Here's a patch that enables them https://github.com/kivy/kivy/pull/6275. Once recompiled I was able to play video with it. But I'm not sure whether it fixes the original issue as I could not replicate it on my system to begin with.
Wheels are done, and master now has support for the new gstreamer wheels. Please test them from here and let me know if there are still issues.
Unfortunately, gstreamer doesn't have 32 bit wheels for python 3.5+, only 64 bit.
I deleted the last comment, containing a URL to a site containing one of the DLLs because we do not recommend downloading DLLs from the internet. Also, that is just as likely to cause new issues as solving any current issues.
This issue has been automatically closed because there has been no response to our request for more information from the original author. With only the information that is currently in the issue, we don't have the means to take action. Please reach out if you have or find the answers we need so that we can investigate further.
Is this solved or what do you need to reproduce it?
I made new wheels that works with master. Someone needs to test them to see if the issue is gone. Preferably someone who had the issue before, to see if it fixed it. And if not, what the issue is.
I made new wheels that works with master. Someone needs to test them to see if the issue is gone. Preferably someone who had the issue before, to see if it fixed it. And if not, what the issue is.
My project running 0.1.13 throws the same warnings in the console, but it seems to be working, 0.1.14 has no warnings, but also no soundoutput.
EDIT: What I encountered is that everything from 2019 seems broken, not only gstreamer not working at all, but also sdl2 0.1.20 (colors are all wrong), ffpyplayer 4.2.0 doesn't work at all.
Can you paste a full log?
`[INFO ] [Kivy ] v1.10.1
[INFO ] [Python ] v3.7.2 (tags/v3.7.2:9a3ffc0492, Dec 23 2018, 23:09:28) [MSC v.1916 64 bit (AMD64)]
[INFO ] [Factory ] 194 symbols loaded
[INFO ] [Image ] Providers: img_sdl2 (img_tex, img_dds, img_ffpyplayer, img_pil, img_gif ignored)
[INFO ] [Window ] Provider: sdl2
[INFO ] [Window ] Activate GLES2/ANGLE context
[INFO ] [GL ] Using the "OpenGL" graphics system
[INFO ] [GL ] Backend used
(python.exe:4736): GStreamer-WARNING **: Failed to load plugin 'C:\Users\SpReeD\AppData\Local\Programs\Python\Python37\share\gstreamer\bin\libass-9.dll': 'C:\Users\SpReeD\AppData\Local\Programs\Python\Python37\share\gstreamer\bin\libass-9.dll': The specified procedure could not be found.
(python.exe:4736): GStreamer-WARNING **: Failed to load plugin 'C:\Users\SpReeD\AppData\Local\Programs\Python\Python37\share\gstreamer\bin\libgstassrender.dll': 'C:\Users\SpReeD\AppData\Local\Programs\Python\Python37\share\gstreamer\bin\libgstassrender.dll': The specified procedure could not be found.
(python.exe:4736): GStreamer-WARNING **: Failed to load plugin 'C:\Users\SpReeD\AppData\Local\Programs\Python\Python37\share\gstreamer\bin\libgstpango.dll': 'C:\Users\SpReeD\AppData\Local\Programs\Python\Python37\share\gstreamer\bin\libgstpango.dll': The specified procedure could not be found.
(python.exe:4736): GStreamer-WARNING **: Failed to load plugin 'C:\Users\SpReeD\AppData\Local\Programs\Python\Python37\share\gstreamer\bin\libgstrsvg.dll': 'C:\Users\SpReeD\AppData\Local\Programs\Python\Python37\share\gstreamer\bin\libgstrsvg.dll': The specified procedure could not be found.
(python.exe:4736): GStreamer-WARNING **: Failed to load plugin 'C:\Users\SpReeD\AppData\Local\Programs\Python\Python37\share\gstreamer\bin\libharfbuzz-0.dll': 'C:\Users\SpReeD\AppData\Local\Programs\Python\Python37\share\gstreamer\bin\libharfbuzz-0.dll': The specified procedure could not be found.
(python.exe:4736): GStreamer-WARNING **: Failed to load plugin 'C:\Users\SpReeD\AppData\Local\Programs\Python\Python37\share\gstreamer\bin\libpangocairo-1.0-0.dll': 'C:\Users\SpReeD\AppData\Local\Programs\Python\Python37\share\gstreamer\bin\libpangocairo-1.0-0.dll': The specified procedure could not be found.
(python.exe:4736): GStreamer-WARNING **: Failed to load plugin 'C:\Users\SpReeD\AppData\Local\Programs\Python\Python37\share\gstreamer\bin\libpangoft2-1.0-0.dll': 'C:\Users\SpReeD\AppData\Local\Programs\Python\Python37\share\gstreamer\bin\libpangoft2-1.0-0.dll': The specified procedure could not be found.
(python.exe:4736): GStreamer-WARNING **: Failed to load plugin 'C:\Users\SpReeD\AppData\Local\Programs\Python\Python37\share\gstreamer\bin\librsvg-2-2.dll': 'C:\Users\SpReeD\AppData\Local\Programs\Python\Python37\share\gstreamer\bin\librsvg-2-2.dll': The specified procedure could not be found. [INFO ] [Preload ] 12 Soundfiles loaded to memory [ERROR ] [Image ] Error loading texture vid/system_prio.mp4 [INFO ] [Base ] Start application main loop`
OK, try updating all the deps. Better yet, make a virtualenv, install the latest deps wheels as well a the latest nightly wheel and see if that makes it better or worse.
Uninstalled python 3.7.2 -> upgraded to 3.7.3, reinstalled all pip packages - nothing changed.
Also note: those Alertboxes/NotificationWindows/ErrorBoxes as mentioned above only appears when python is called through CMD, they doesn't appear when called through PowerShell, warnings in console stays.
The powershell vs CMD difference is weird. Can you post a full log of your latest install with everything being the latest version (including kivy)? Perhaps also share the file you're playing?
The color issues is a problem with the latest sdl2, but only if not using master. Try installing the latest kivy nightly wheel instead of from pypi.
so.. i got the whls from https://kivy.org/downloads/appveyor/deps/
installed using pip install <wheelname>
this is what i got:
Package Version
------------------- --------
certifi 2019.3.9
chardet 3.0.4
comtypes 1.1.7
docutils 0.14
idna 2.8
Kivy 1.10.1
kivy-deps.gstreamer 0.1.14
kivy-deps.sdl2 0.1.20
Kivy-Garden 0.1.4
kivy.deps.angle 0.1.7
kivy.deps.glew 0.1.10
kivy.deps.gstreamer 0.1.13
kivy.deps.sdl2 0.1.18
pip 19.1.1
Pygments 2.4.0
pypiwin32 223
pywin32 224
pywinauto 0.6.6
requests 2.22.0
setuptools 41.0.1
six 1.12.0
urllib3 1.25.2
wheel 0.33.4
Installing the kivy-1.11.0rc1 (nightly) and kivy gave me this
[WARNING] [Config ] Older configuration version detected (20 instead of 21)
[WARNING] [Config ] Upgrading configuration in progress.
[INFO ] [Image ] Providers: (img_tex, img_dds, img_ffpyplayer, img_pil, img_gif, img_sdl2 ignored)
[CRITICAL] [App ] Unable to get any Image provider, abort.
I guess I must be doing something wrong. Uninstalling the ones with '.' didn't help, neither the other way around with kivy-1.11.0rc1. The only "working" configuration is, sdl-0.1.18, gstreamer-0.1.13, kivy-1.10.1 - besides those annoying warnings.
Kivy 1.10.1
From the log and from that it seems to indicate you don't have the latest kivy master installed. Also,
kivy.deps.gstreamer 0.1.13 kivy.deps.sdl2 0.1.18
is not the latest kivy deps. I think you must have pulled the wrong deps.
Uninstall all the kivy.deps.xxx
, kivy_deps.xxx
, and kivy, then just do pip install kivy.deps.sdl2 kivy.deps.gstreamer kivy.deps.glew
. This will give you the latest deps. Then install kivy master with pip install https://kivy.org/downloads/ci/win/kivy/Kivy-1.11.0rc1-cp37-cp37m-win_amd64.whl
. This will give you everything in the latest version. Then, paste again pip list
and the full log from running kivy.
pip list before:
Package Version
----------- --------
certifi 2019.3.9
chardet 3.0.4
comtypes 1.1.7
docutils 0.14
idna 2.8
Kivy-Garden 0.1.4
pip 19.1.1
Pygments 2.4.0
pypiwin32 223
pywin32 224
pywinauto 0.6.6
requests 2.22.0
setuptools 41.0.1
six 1.12.0
urllib3 1.25.2
wheel 0.33.4
pip list after pip install kivy.deps.sdl2 kivy.deps.gstreamer kivy.deps.glew
and pip install https://kivy.org/downloads/ci/win/kivy/Kivy-1.11.0rc1-cp37-cp37m-win_amd64.whl
Package Version
------------------- ---------
certifi 2019.3.9
chardet 3.0.4
comtypes 1.1.7
docutils 0.14
idna 2.8
Kivy 1.11.0rc1
Kivy-Garden 0.1.4
kivy.deps.glew 0.1.10
kivy.deps.gstreamer 0.1.14
kivy.deps.sdl2 0.1.20
pip 19.1.1
Pygments 2.4.0
pypiwin32 223
pywin32 224
pywinauto 0.6.6
requests 2.22.0
setuptools 41.0.1
six 1.12.0
urllib3 1.25.2
wheel 0.33.4
Running my kivy project.py through powershell:
[WARNING] [Config ] Older configuration version detected (20 instead of 21)
[WARNING] [Config ] Upgrading configuration in progress.
[INFO ] [Image ] Providers: (img_tex, img_dds, img_ffpyplayer, img_pil, img_gif, img_sdl2 ignored)
[CRITICAL] [App ] Unable to get any Image provider, abort.
However, I had the providers declared with os.environ[...]
, removing/commenting them resulted in this output (debug -d):
[DEBUG ] [Cache ] register <kv.image> with limit=None, timeout=60
[DEBUG ] [Cache ] register <kv.atlas> with limit=None, timeout=None
[DEBUG ] [image ] Failed trying to import the "sdl2" provider from "C:\Program Files\Python37\lib\site-packages\kivy\core\image\_img_sdl2.cp37-win_amd64.pyd". This error is often encountered when a dependency is missing, or if there are multiple copies of the same dependency dll on the Windows PATH and they are incompatible with each other. This can occur if you are mixing installations (such as different python installations, like anaconda python and a system python) or if another unrelated program added its directory to the PATH. Please examine your PATH and python installation for potential issues. To further troubleshoot a "DLL load failed" error, please download "Dependency Walker" (64 or 32 bit version - matching your python bitness) from dependencywalker.com and set the environment variable KIVY_SDL2_DEPENDENCY_WALKER to the full path of the downloaded depends.exe file and rerun your application to generate an error report
[INFO ] [Image ] Providers: img_tex, img_dds, img_gif (img_sdl2, img_pil, img_ffpyplayer ignored)
[DEBUG ] [Cache ] register <kv.texture> with limit=1000, timeout=60
[DEBUG ] [Cache ] register <kv.shader> with limit=1000, timeout=3600
[INFO ] [Factory ] 184 symbols loaded
[DEBUG ] [Cache ] register <kv.lang> with limit=None, timeout=None
[DEBUG ] [text ] Failed trying to import the "sdl2" provider from "C:\Program Files\Python37\lib\site-packages\kivy\core\text\_text_sdl2.cp37-win_amd64.pyd". This error is often encountered when a dependency is missing, or if there are multiple copies of the same dependency dll on the Windows PATH and they are incompatible with each other. This can occur if you are mixing installations (such as different python installations, like anaconda python and a system python) or if another unrelated program added its directory to the PATH. Please examine your PATH and python installation for potential issues. To further troubleshoot a "DLL load failed" error, please download "Dependency Walker" (64 or 32 bit version - matching your python bitness) from dependencywalker.com and set the environment variable KIVY_SDL2_DEPENDENCY_WALKER to the full path of the downloaded depends.exe file and rerun your application to generate an error report
[DEBUG ] [Text ] Ignored <sdl2> (import error)
[DEBUG ] [Text ] Ignored <pil> (import error)
[CRITICAL] [Text ] Unable to find any valuable Text provider. Please enable debug logging (e.g. add -d if running from the command line, or change the log level in the config) and re-run your app to identify potential causes
sdl2 - ImportError: DLL load failed: The specified module could not be found.
File "C:\Program Files\Python37\lib\site-packages\kivy\core\__init__.py", line 63, in core_select_lib
fromlist=[modulename], level=0)
File "C:\Program Files\Python37\lib\site-packages\kivy\core\text\text_sdl2.py", line 13, in <module>
from kivy.core.text._text_sdl2 import (_SurfaceContainer, _get_extents,
pil - ModuleNotFoundError: No module named 'PIL'
File "C:\Program Files\Python37\lib\site-packages\kivy\core\__init__.py", line 63, in core_select_lib
fromlist=[modulename], level=0)
File "C:\Program Files\Python37\lib\site-packages\kivy\core\text\text_pil.py", line 7, in <module>
from PIL import Image, ImageFont, ImageDraw
[CRITICAL] [App ] Unable to get a Text provider, abort.
Can you please provide the full kivy log. You cut it off at the top.
This seems to be a problem with gstreamer I think. Something is wrong with their dlls. We are not the only people with the problem it seems https://github.com/opencv/opencv/issues/12625.
I managed to reproduce this and made a new gstreamer by removing the files that were listed in the issues. Most of them were for subtitles so it shouldn't effect video play. I guess we'll have to figure out which plugins causes issues and just remove them. Not sure what else we can do.
Anyway, it would be great if people can test gstreamer 0.1.15 from the link and see if that fixes things.
Good morning & thanks for chasing down the bug. Here we go:
Package Version
------------------- --------
certifi 2019.3.9
chardet 3.0.4
comtypes 1.1.7
docutils 0.14
idna 2.8
Kivy 1.10.1
Kivy-Garden 0.1.4
kivy.deps.glew 0.1.10
kivy.deps.gstreamer 0.1.15
kivy.deps.sdl2 0.1.20
pip 19.1.1
Pygments 2.4.0
pypiwin32 223
pywin32 224
pywinauto 0.6.6
requests 2.22.0
setuptools 41.0.1
six 1.12.0
urllib3 1.25.2
wheel 0.33.4
Project head:
if os.name == 'nt': #for Windows
os.environ['KIVY_GL_BACKEND'] = 'angle_sdl2'
#os.environ['KIVY_AUDIO'] = 'sdl2'
os.environ['KIVY_AUDIO'] = 'gstplayer'
os.environ['KIVY_WINDOW'] = 'sdl2'
os.environ['KIVY_IMAGE'] = 'sdl2'
#os.environ['KIVY_VIDEO'] = 'null'
os.environ['KIVY_VIDEO'] = 'gstplayer'
#os.environ['KIVY_VIDEO'] = 'ffpyplayer'
elif os.name == 'posix': #for RPi/Linux
os.environ['KIVY_GL_BACKEND'] = 'gl'
os.environ['KIVY_AUDIO'] = 'gstplayer'
os.environ['KIVY_VIDEO'] = 'gstplayer'
os.environ['KIVY_TEXT'] = 'sdl2'
Kivy log (-d):
[DEBUG ] [Cache ] register <kv.image> with limit=None, timeout=60
[DEBUG ] [Cache ] register <kv.atlas> with limit=None, timeout=None
[DEBUG ] [Image ] option <tex> ignored by config
[DEBUG ] [Image ] option <dds> ignored by config
[DEBUG ] [Image ] option <ffpy> ignored by config
[DEBUG ] [Image ] option <pil> ignored by config
[DEBUG ] [Image ] option <gif> ignored by config
[INFO ] [Image ] Providers: img_sdl2 (img_tex, img_dds, img_ffpyplayer, img_pil, img_gif ignored)
[DEBUG ] [Cache ] register <kv.texture> with limit=1000, timeout=60
[DEBUG ] [Cache ] register <kv.shader> with limit=1000, timeout=3600
[INFO ] [Factory ] 194 symbols loaded
[DEBUG ] [Cache ] register <kv.lang> with limit=None, timeout=None
[INFO ] [Text ] Provider: sdl2
[DEBUG ] [Cache ] register <textinput.label> with limit=None, timeout=60.0
[DEBUG ] [Cache ] register <textinput.width> with limit=None, timeout=60.0
[INFO ] [Kivy ] v1.10.1
[INFO ] [Python ] v3.7.3 (v3.7.3:ef4ec6ed12, Mar 25 2019, 22:22:05) [MSC v.1916 64 bit (AMD64)]
[INFO ] [Window ] Provider: sdl2
[INFO ] [Window ] Activate GLES2/ANGLE context
[INFO ] [GL ] Using the "OpenGL" graphics system
[INFO ] [GL ] Backend used <angle_sdl2>
[INFO ] [GL ] OpenGL version <b'OpenGL ES 3.2 NVIDIA 430.64'>
[INFO ] [GL ] OpenGL vendor <b'NVIDIA Corporation'>
[INFO ] [GL ] OpenGL renderer <b'GeForce GTX 1070 Ti/PCIe/SSE2'>
[INFO ] [GL ] OpenGL parsed version: 3, 2
[INFO ] [GL ] Shading version <b'OpenGL ES GLSL ES 3.20'>
[INFO ] [GL ] Texture max size <32768>
[INFO ] [GL ] Texture max units <32>
[DEBUG ] [Shader ] Fragment compiled successfully
[DEBUG ] [Shader ] Vertex compiled successfully
[DEBUG ] [ImageSDL2 ] Load <C:\Program Files\Python37\lib\site-packages\kivy\data\glsl\default.png>
[INFO ] [Window ] auto add sdl2 input provider
[DEBUG ] [Modules ] Start <touchring> with config {'scale': '0.1', 'alpha': '1'}
[DEBUG ] [Atlas ] Load <C:\Program Files\Python37\lib\site-packages\kivy\data\images\defaulttheme.atlas>
[DEBUG ] [Atlas ] Need to load 1 images
[DEBUG ] [Atlas ] Load <C:\Program Files\Python37\lib\site-packages\kivy\data\images\defaulttheme-0.png>
[DEBUG ] [ImageSDL2 ] Load <C:\Program Files\Python37\lib\site-packages\kivy\data\images\defaulttheme-0.png>
[DEBUG ] [Modules ] Start <monitor> with config {}
[DEBUG ] [Resource ] add <C:\WINDOWS\Fonts> in path list
[DEBUG ] [Resource ] add <C:\Program Files\Python37\lib\site-packages\kivy\data\fonts> in path list
[DEBUG ] [Modules ] Start <inspector> with config {}
[INFO ] [Window ] virtual keyboard allowed, single mode, docked
[DEBUG ] [Audio ] option <ffpyplayer> ignored by config
[DEBUG ] [Audio ] option <sdl2> ignored by config
[INFO ] [Audio ] Providers: (audio_ffpyplayer, audio_sdl2 ignored)
[DEBUG ] [Video ] Provider <ffmpeg> ignored by config
[DEBUG ] [Video ] Provider <ffpyplayer> ignored by config
[DEBUG ] [Video ] Provider <null> ignored by config
[CRITICAL] [Video ] Unable to find any valuable Video provider.
[INFO ] [Configuration ] Loaded sucessfully
[DEBUG ] [App ] Loading kv <.\main.kv>
[DEBUG ] [App ] kv <.\main.kv> not found
[DEBUG ] [ImageSDL2 ] Load <C:\PathToMyProject\img\bg.png>
[INFO ] [GL ] NPOT texture support is available
[DEBUG ] [ImageSDL2 ] Load <C:\PathToMyProject\img\btn_green_downLeft.png>
[DEBUG ] [ImageSDL2 ] Load <C:\PathToMyProject\img\btn_green_downRight.png>
[DEBUG ] [ImageSDL2 ] Load <C:\PathToMyProject\img\btn_green_upLeft.png>
[DEBUG ] [ImageSDL2 ] Load <C:\PathToMyProject\img\btn_green_upRight.png>
[DEBUG ] [ImageSDL2 ] Load <C:\PathToMyProject\img\btn_lightblue_downLeft.png>
[DEBUG ] [ImageSDL2 ] Load <C:\PathToMyProject\img\btn_lightblue_downRight.png>
[DEBUG ] [ImageSDL2 ] Load <C:\PathToMyProject\img\btn_lightblue_upLeft.png>
[DEBUG ] [ImageSDL2 ] Load <C:\PathToMyProject\img\btn_lightblue_upRight.png>
[DEBUG ] [ImageSDL2 ] Load <C:\PathToMyProject\img\btn_orange_downLeft.png>
[DEBUG ] [ImageSDL2 ] Load <C:\PathToMyProject\img\btn_orange_downRight.png>
[DEBUG ] [ImageSDL2 ] Load <C:\PathToMyProject\img\btn_orange_upLeft.png>
[DEBUG ] [ImageSDL2 ] Load <C:\PathToMyProject\img\btn_orange_upRight.png>
[DEBUG ] [ImageSDL2 ] Load <C:\PathToMyProject\img\btn_red_rounded_left.png>
[DEBUG ] [ImageSDL2 ] Load <C:\PathToMyProject\img\btn_red_rounded_right.png>
[DEBUG ] [ImageSDL2 ] Load <C:\PathToMyProject\img\limpet_black.png>
[DEBUG ] [ImageSDL2 ] Load <C:\PathToMyProject\img\logo.png>
[INFO ] [Preload ] 17 Imagefiles loaded to memory as textures
[WARNING] [Audio ] Unable to find a loader for <C:\PathToMyProject\snd\datalink.mp3>
[WARNING] [Audio ] Unable to find a loader for <C:\PathToMyProject\snd\establishing_datalink.wav>
[WARNING] [Audio ] Unable to find a loader for <C:\PathToMyProject\snd\man_alphastrike.wav>
[WARNING] [Audio ] Unable to find a loader for <C:\PathToMyProject\snd\man_combatturn.wav>
[WARNING] [Audio ] Unable to find a loader for <C:\PathToMyProject\snd\man_headtohead.wav>
[WARNING] [Audio ] Unable to find a loader for <C:\PathToMyProject\snd\man_omegaone.wav>
[WARNING] [Audio ] Unable to find a loader for <C:\PathToMyProject\snd\man_omegatwo.wav>
[WARNING] [Audio ] Unable to find a loader for <C:\PathToMyProject\snd\ringin.wav>
[WARNING] [Audio ] Unable to find a loader for <C:\PathToMyProject\snd\clicks\204.wav>
[WARNING] [Audio ] Unable to find a loader for <C:\PathToMyProject\snd\clicks\205.wav>
[WARNING] [Audio ] Unable to find a loader for <C:\PathToMyProject\snd\clicks\206.wav>
[WARNING] [Audio ] Unable to find a loader for <C:\PathToMyProject\snd\clicks\207.wav>
[WARNING] [Audio ] Unable to find a loader for <C:\PathToMyProject\snd\clicks\208.wav>
[WARNING] [Audio ] Unable to find a loader for <C:\PathToMyProject\snd\deactivation\beep.wav>
[WARNING] [Audio ] Unable to find a loader for <C:\PathToMyProject\snd\deactivation\complete.wav>
[WARNING] [Audio ] Unable to find a loader for <C:\PathToMyProject\snd\deactivation\disconnected.wav>
[WARNING] [Audio ] Unable to find a loader for <C:\PathToMyProject\snd\deactivation\request.wav>
[INFO ] [Preload ] 17 Soundfiles loaded to memory
[ERROR ] [Image ] Error loading texture vid/system_prio.mp4
[ERROR ] [Sound ] File 404
[DEBUG ] [Base ] Create provider from mouse
[DEBUG ] [Base ] Create provider from wm_touch
[DEBUG ] [Base ] Create provider from wm_pen
[INFO ] [Base ] Start application main loop
Like in .14 there are no warnings, but also no sound, according to the logs, kivy cannot find a loader for the .wav files.
Kivy 1.11.0rc1
doesn't work at all, using only import kivy
throws an error.
I was using sdl2-0.1.18, because .20 (latest) mess up the colors.
What do you mean by saying full log? - Afaik log levels are trace
debug
info
warning
error
critical
Oh, I forgot to mention one more important thing.
Installing gstreamer from pypi by using pip install kivy.deps.gstreamer
gives me the package kivy.deps.gstreamer
- installing by using pip install https://kivy.org/downloads/ci/win/deps/gstreamer/kivy_deps.gstreamer-0.1.15-cp37-cp37m-win_amd64.whl
gives the package kivy-deps.gstreamer
. Please note the .
and -
.
Seems like kivy is ignoring/not finding the one with -
at all.
I made some tests with different gstreamer and kivy versions by playing a couple of audio files in a loop... this is what I got:
all done under Windows 10 64 and Python v3.7.3 [MSC v.1916 64 bit (AMD64)]
works (sort of ...): plays all files (after error messages ('entrypoint ...not found') at the start) colour errors (went away after downgrading sdl2 to 0.1.18) and audioplayer sometimes crashes ...
pip install kivy pip install kivy.deps.glew pip install "kivy.deps.gstreamer==0.1.13" --force-reinstall pip install "kivy.deps.sdl2==0.1.18" --force-reinstall
[INFO ] [Kivy ] v1.10.1
[INFO ] [AudioGstplayer] Using Gstreamer 1.14.1.0
[INFO ] [Audio ] Providers: audio_gstplayer, audio_sdl2 (audio_ffpyplayer ignored)
does not work: starts without error, but exits after stopping the first audiofile (in class SoundGstplayer(Sound).stop() in audio_gstplayer.py). Nothing shows up in the kivy log file (set to trace)...
pip install https://kivy.org/downloads/ci/win/kivy/Kivy-1.11.0rc1-cp37-cp37m-win_amd64.whl pip install kivy.deps.glew kivy.deps.sdl2 pip install kivy.deps.gstreamer
[INFO ] [Kivy ] v1.11.0rc1, git-e8a4202, 20190525 [INFO ] [AudioGstplayer] Using Gstreamer 1.16.0.0 [INFO ] [Audio ] Providers: audio_gstplayer, audio_sdl2 (audio_ffpyplayer ignored)
what a mess...
there is explanation here I think: https://gstreamer.freedesktop.org/releases/1.14/ quote: 'The default plugin entry point has changed'
There has never been a gstreamer release when kivy didn't have issues for at least some users.
The problem with sdl2 0.1.18 and gstreamer 0.1.13 (other than the entry point issue) is that python, kivy for python 3.5+, sdl2, and everything else is compiled with msvc, but gstreamer was compiled with mingw. This has always led to conflicts with some dlls distributed by sdl2. The solution that seemed to work for most users is to not distribute some of the dlls from gstreamer.
Starting with 1.16.0, gstreamer provided msvc binaries, this is what the latest wheels carry. So this should have resolved the binary incompatibility issues. So now we get to the entry point issue.
All we do is download and extract the gstreamer dlls and repackge them as wheels. We don't compile anything etc. The link you're pointing to seems to explain the issue we are having apparently, some of the plugin dlls we repackage must not have updated the entrypoint, hence the errors. This issue is very clear in 0.1.13.
In 0.1.15, what I did was look at the plugins that caused the errors, and manually excluded them from the wheel. This seemed to solve the issue, at least for the videos I was playing. Who knows if these plugins are needed to play common videos, and what plugins I missed.
But your error for 0.1.15 seems to be perhaps a bug in the kivy gst code. I'm not sure, but that seems like a cython bug, since there's no error trace.
while I will check more on the latest versions: why do the the version numbers differ ?
pip install "kivy.deps.gstreamer==0.1.13" --force-reinstall gives [INFO ] [AudioGstplayer] Using Gstreamer 1.14.1.0
why do the the version numbers differ ?
I'm not sure what you're referring to?
Oh, I get it. Why don't we make the gstreamer deps version the same as gstreamer? Because we can have multiple kivy gstreamer releases even with the same gstreamerv version. E.g. if we need to fix something. So it wouldn't be great to tie the kivy version to the gstreamer version.
So, what is the workaround here? Before we get a proper fix I'm using SDL2 as the audio provider and nothing as video provider, that limits me to using wave files only and no video.
os.environ['KIVY_AUDIO'] = 'sdl2'
os.environ['KIVY_VIDEO'] = 'null'
0.1.13 seems to be the only "working" version so far, it throws a bunch of warnings at the start (when kivy loads, before any other code is executed) and then some fatals when playing audio that is loaded/preloaded in a class instance - but, at least, it does play the audio and video. I'm not a friend of the idea, but is there a way to suppress the warning output of 0.1.13?
heres my test code ... loads audiofiles, plays, seeks, unloads.
with 0.13.1 I get occasional crashs (1 out of 10 or so)
with 0.15.1 only the first songs plays...
Is there something wrong with my code / wrong use of playerclass ?
import os
#os.environ['KIVY_AUDIO'] = 'sdl2'
from kivy.core.audio import SoundLoader
from kivy.logger import Logger
import time
class MusicPlayer(object):
def __init__(self):
self.secs = 0
self.actualsong = ''
self.length = 0
self.isplaying = False
self.sound = None
def __del__(self):
if self.sound:
self.sound.unload()
Logger.info('mplayer: deleted')
def load(self, filename):
#self.__init__()
self.sound = SoundLoader.load(filename)
if self.sound:
if self.sound.length != -1 :
self.length = self.sound.length
self.actualsong = filename
Logger.info('mplayer: load %s' %filename)
return True
else:
Logger.info ('mplayer: songlength = -1 ...')
return False
def unload(self):
if self.sound != None:
self.sound.unload()
Logger.info('mplayer: unload')
self.__init__()# reset vars
def play(self):
if self.sound:
self.sound.play()
self.isplaying = True
Logger.info('mplayer: play')
def stop(self):
self.isplaying = False
self.secs=0
if self.sound:
self.sound.stop()
Logger.info('mplayer: stop')
def seek(self, timepos_secs):
self.sound.seek(timepos_secs)
Logger.info('mplayer: seek %s' %int(timepos_secs))
if __name__ == '__main__':
mplayer = MusicPlayer()
startdir=r'c:\_temp_\_test_\testsounds' # <---- put path to audiofiles here
for s in [os.path.join(startdir,f) for f in os.listdir(startdir)]:
if mplayer.load(s):
mplayer.play()
time.sleep(2)
mplayer.seek(90)
time.sleep(2)
mplayer.stop()
mplayer.unload()
else:
Logger.info (' ++++++++++++++ cant load song: %s' %s)
Within your MusicPlayer.unload(), where you're calling self.init, your missing the parentesis - try changing the whole code line into:
self.init() # reset vars
This should at least fix the problem with playing a song the 2nd time ...
Am Di., 28. Mai 2019 um 12:19 Uhr schrieb patrick-atgithub < notifications@github.com>:
heres my test code ... loads audiofiles, plays, seeks, unloads. with 0.13.1 I get occasional crashs (1 out of 10 or so) with 0.15.1 only the first songs plays... Is there something wrong with my code / wrong use of playerclass ?
import os
os.environ['KIVY_AUDIO'] = 'sdl2'
from kivy.core.audio import SoundLoader from kivy.logger import Logger import time
class MusicPlayer(object): def init(self): self.secs = 0 self.actualsong = '' self.length = 0 self.isplaying = False self.sound = None
def __del__(self): if self.sound: self.sound.unload() Logger.info('mplayer: deleted') def load(self, filename): #self.__init__() self.sound = SoundLoader.load(filename) if self.sound: if self.sound.length != -1 : self.length = self.sound.length self.actualsong = filename Logger.info('mplayer: load %s' %filename) return True else: Logger.info ('mplayer: songlength = -1 ...') return False def unload(self): if self.sound != None: self.sound.unload() Logger.info('mplayer: unload') self.__init__ # reset vars def play(self): if self.sound: self.sound.play() self.isplaying = True Logger.info('mplayer: play') def stop(self): self.isplaying = False self.secs=0 if self.sound: self.sound.stop() Logger.info('mplayer: stop') def seek(self, timepos_secs): self.sound.seek(timepos_secs) Logger.info('mplayer: seek %s' %int(timepos_secs))
if name == 'main': mplayer = MusicPlayer()
startdir=r'c:\_temp_\_test_\testsounds' # <---- put path to audiofiles here for s in [os.path.join(startdir,f) for f in os.listdir(startdir)]: if mplayer.load(s): mplayer.play() time.sleep(2) mplayer.seek(90) time.sleep(2) mplayer.stop() mplayer.unload() else: Logger.info (' ++++++++++++++ cant load song: %s' %s) ```
— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/kivy/kivy/issues/5916?email_source=notifications&email_token=AA4U63XFN6EK2COIM6ZQAO3PXUILFA5CNFSM4FRS7XPKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODWLZQRI#issuecomment-496474181, or mute the thread https://github.com/notifications/unsubscribe-auth/AA4U63UDCZYW4PE3AR6AUJLPXUILFANCNFSM4FRS7XPA .
Versions
Description
After reinstalling kivy, I tried to run kivy, but there were several "Entry Point Not Found" error messages about "FT_Done_MM_Var". When i close all messages, the audio can run as usual. If the application does not play music or sound, the error message does not exist at the beginning.
Code and Logs