Comments (10)
Ok, halway to a new standard for Mosaic video players, i've just added ofxHapPlayer to ofxVisualProgramming and Mosaic, and modified the video player object in order to work with that. The Hap codec is cross-compatible osx/linux/windows and we are finally free of the frequent issues ofVideoPlayer/OF related.
I've just tested it on osx and it work perfect! Now it's linux turn, i'm on it.
More info about Hap codec:
https://hap.video/using-hap.html
https://github.com/Vidvox/hap-in-avfoundation/releases
So, starting from Mosaic 0.5.0, if everything works in linux and windows too, this will be the standard encoding to work with, for video files. No more codecs incompatibilities, no more strange issues, same video file, will work on every Mosaic compatible OS.
More news soon
from mosaic.
Hi, thanks for your interest in this project!
About the symlink issue, i can't get to it right now, but i can point you where to check if it's an easy fix, the files regarding the file browser are here:
https://github.com/d3cod3/ofxVisualProgramming/tree/master/src/core/FileBrowser
Specifically you'll need to look at this file:
https://github.com/d3cod3/ofxVisualProgramming/blob/master/src/core/FileBrowser/ImGuiFileBrowser.cpp
at this method here: https://github.com/d3cod3/ofxVisualProgramming/blob/7328c8605d1474cd5831e811537a1f138315d91f/src/core/FileBrowser/ImGuiFileBrowser.cpp#L789
the onNavigationButtonClick
, where the filepath is stored on click, so basically what need to be implemented is:
1 - detect if we clicked on a file or on a symlink
2 - if we clicked on a file, just do what is it doing now
3 - if we clicked on a symlink, store the filepath pointing to, not the path of the symlink
I think the lines where to apply this fix are here:
and here
Let me know if you find a solution, in the meantime i will check it too, as soon as possible.
from mosaic.
Hey, thanks for testing Mosaic, I hope you find your way in Mosaic. :)
I think there's 2 aspects to this issue:
- The one pointed out by @d3cod3 . In my case the symlinked directory
symlinkTestDir
doesn't display in the imguifilebrowser. - Then the drag'n'drop feature.
I created a symlink usingln -s ~/my/superb/and/real/path/to/my/Folder ~/symlinkTestDir
.
Drag'n'dropping an image file from file browser's symlinked folder to Mosaic works on my config. [Mint 20 (similar to Ubuntu 20?)].
from mosaic.
Thanks for the quick replies. I should have time to take a look this weekend and I can test out functionality by just making non-symlinked copies of assets in the meantime.
I'm on Ubuntu 18.04, let me test drag n drop again. You were dropping to the assets manager?
...
OK, weird, tried a different mp4 file and it did appear (yay!) and I hit play (on the video in the asset manager) then got:
*** buffer overflow detected ***: ./Mosaic terminated
Aborted (core dumped)
So I tried another and it worked! Worse bug report ever. Let me see if I can put together some test cases and submit some actionable reports this weekend.
from mosaic.
You can just drop it anywhere on the patch canvas.
About the errors, not every video codec is supported by Mosaic, for more info you'll need to check openFrameworks, about video codec compatibility and stuff, as the Mosaic video player use the internal OF video player mechanism.
from mosaic.
It could be nice to reference crashing video formats. At least Mosaic should not crash when loading a wrong codec.
from mosaic.
I've checked that possibility ( not crashing with wrong codec ), but it will need to modify the OF ofVideoPlayer core code, so alter the OF source.
Specifically, OF is using gstreamer on linux ( libgstreamer1.0-dev ), avfoundation on osx and directshow on windows
For what i've tested, video exports on on system usually don't work on another, even using the same codecs, defintely the issue needs some more looking into it.
from mosaic.
Awesome, good job !
HAP can be lossless or compressed, plus multi-platform support makes it perfect :)
from mosaic.
Linux ( just tested ubuntu/debian for now ) compiling and working perfectly with HAP player!!!
so great news, now it's time for windows, finger crossed.
from mosaic.
Bad news for now on windows, i have not been able to compile ofxHapPlayer addon on qtcreator/msys2 on windows 10,
so i'm working on getting a Mosaic solution for visual studio, definitely i think it will be for the best, considering a lot of current issues on windows, it will probably solve some of them.
So i'm closing this for now, as generally speaking the video player / codecs issue is not just solved but considerably enhanced now with the hap addon ( just need to solve it on the windows side... )
from mosaic.
Related Issues (20)
- No sound menu on Windows 10 ... HOT 1
- [WSL] bwrap: kernel does not support user namespaces HOT 1
- Mosaic patch in xCode HOT 4
- Settings or options for GUI / font sizes? HOT 4
- Mosaic still running after closing using window X in Ubuntu HOT 1
- inputs in glsl nodes HOT 2
- Corrade / Magnum HOT 4
- osx 10.12 support HOT 1
- Instant crash on macOS HOT 6
- Version 0.6.5_ofximgui_next does not render the UI properly. HOT 3
- Error in compile mosaic on Mint 20 HOT 1
- Error in compile on Mint: ofxFFmpegRecorder
- VideoGraber crash Mosaic on Mint with OF(Mosaic) HOT 5
- Flatpack update HOT 1
- Error compiling 0.6.5 on Mint 21.2 HOT 1
- "there has been a problem compiling Debug OF library" HOT 1
- Mosaic flatpak 0.6.6 don't open on mint HOT 8
- segfault at run HOT 2
- HiDPI/4K screen support HOT 3
- Control config parameters? HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from mosaic.