Giter Site home page Giter Site logo

brunoherbelin / vimix Goto Github PK

View Code? Open in Web Editor NEW
252.0 13.0 25.0 219.49 MB

Live Video Mixer

License: GNU General Public License v3.0

C++ 57.46% CMake 1.86% Objective-C++ 0.02% C 37.82% GLSL 2.77% Objective-C 0.05% Shell 0.02%
opengl c-plus-plus video-player gstreamer imgui-glfw osc cmake

vimix's People

Contributors

adrianbunk avatar brunoherbelin avatar markus-wa avatar prez avatar rkelln avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

vimix's Issues

It's not an issue... it's a request and a congratulations mssg... So thanks...!

Hello,
i'm using vimix on linux mint 20.04
I got a powerfull system with 10 screens on 3 graphic cards.
How can i setup an output display on each screen 10 or mainly 8 for an art install...
with a different picture/media on each...?
I hope to use vimix.
I'm using "Radiance", this software do that BUT dev is with no maintainer or so... (https://github.com/zbanks/radiance)
Don't know how i can help for that...
I'm only a final user.
Thanks for all, Glmixer and now vimix...

OSC message /vimix/current/sync

Hi at all,
i'm using this message to sync my puredata patches with vimix. I think that will be usefull to have also the name attribute in the reply and not only alpha attribute.
Actually index attribute change very often (example: i remove a video) and if i want to communicate with my video i use always name attribute in OSC message... then i always receive a list of index and alpha...and if i want name attribute i need to cycle all index with a OSC request...

I think that sync response need to contain "name" to reduce OSC message :-)

Thank you very much!

Glfw error

After I compiled vimix from source, I have an error when I start program from snap:

Error: Glfw Error 65544: Linux: Failed to watch for joystick connections in /dev/input: No space left on device

I press Close and program starts normally.

Some bugs in Kubuntu 20.10

  1. "Import a file" dialog opens behind main window.
  2. Drag'n'droping a file into main window freezes a program.
  3. Cyrillic file names display as question marks.

Version 0.4 snap.

Window and Monitor management

Known issues to be fixed with glfw:

  • moving window between monitors is not detected; display should update opengl context and change resolution of display
  • provide an option for software FPS limitation; when system does not enable v-sync, vimix should try to limit update to 60Hz
  • fullscreen of output window: a context menu could help select the target fullscreen monitor

Absolute paths in session file

Vimix stores in .mix absolute file paths, not relative.
And opening such session on another computer results "file missing" errors.

0.6.0 installation issue

Hello there- just in the process of migrating over from GLMixer, and am using 0.5.4 with little to no problem... however, when I try to upgrade, suddenly I always encounter the same error saying "You do not have permission to open the application", and then no option to grant permissions. I am running OS 11.2.3, but the same issue occurs on my wife's computer running 11.3.1.

Has anyone come across this issue before? As I said, both of us are able to run v 0.5.4 with no problem...

Many thanks in advance for your help!

no element "srtsrc"

I followed the instructions to stream from my phone camera (i tried both the haivision app and the Larix one)

But when i click on 'Call' the following error pops up:

0001   Creating Source SRT receiving from 'srt://192.168.0.52:7071'
0002   Warning - Stream 666707685247506099 Could not create stream: no element "srtsrc".

I compiled vimix from source with the latest updates. I'm sure 192.168.0.52 is the local IP of my phone..

official debian package

Hello

I guess users would profit (Debian, Ubuntu, Raspbian, Devuan) if they could install this with just apt install vimix.

I'm working on a package, but the included ext/ stuff is mostly all packaged and should be linked against the already
existing packages, and not included (duplicate copies) and built against. Could you help with that?

I already have working packages: http://sid.ethz.ch/debian/vimix

Best,

Windows port

So I am very, very interested in seeing a Windows port of this. I'm really rusty coder, so I don't feel confident enough setting out to do the port myself. I would, however, be willing to join a team (if such a team exists) or assist with debugging and running test versions. Since I searched and didn't see anything like that already I thought I'd ask.

Thanks!

Cant broadcast over srt

When pressing over stream, only "share over local network" option is available. There is no option to stream over srt.

The logs shows the following when i press over the stream option in the output winow:
ERROR x264enc gstx264enc.c:163:load_x264: failed to load '/usr/lib/x86_64-linux-gnu/x264-10bit/libx264.so.152'

Im in Ubuntu 20.04, vimix 0.7.1 from snap and libx264-155 is installed (not libx264-152).

Any idea how to solve this?

webcam support on linux

Hei!
As corona is now tying us a again more to our desks and video conferences and streaming festivals are going to happen, I wonder how well I can use vimix for that.
I can`t find an option to use a webcam as source but thought you already implemented that?
I'm on ubuntu 20.10

talking about videochat stuff.... a virtual webcam output option is the next thing I`d ultra freaked out about ;)
many greetings!

Memory usage increases

Memory usage gets higher on every new video source opening (even before I press Create button), reloading session, opening new session, fading video in (although memory was already eaten a little bit by creating this source).
Fading video out doesn't decreases memory usage.

UI problems

  1. Every source creation resets current mixing circle position.

  2. If main window is on big display (2560*1440) and floatable windows (output, player) are near to the right border of main window and I move main window to smaller display (FullHD), then all floatable windows appears out of main window and there is no way to move them inside.

No cyrillic support

Still have question marks instead of cyrillic simbols.
Tried to move folder with sources from NTFS to EXT4. No changes.
Same simbols are in Recent sessions section. So I cannot choose what to load.

image

finetune chroma- & Lumakey

I'm so glad to see that this project continues to evolve! Thanks a lot for this. especially for the Linux users among us it is a great enrichment!

To the point. I would be very happy about the possibility of being able to fine-tune the chroma- or Lumakey.
a second parameter to smooth the edges for a smoother transition.
options like that can be found in OBS or kdenlive as example
This would be essential, especially in video material with color areas that are not clearly separated.

Many thanks!

Lack of thanks from the users to the hardworking developers !... ;)

Thankyou for your work, Bruno!

• I´ve been using your GLMixer (and follow you) since a long time ago, its a brilliant idea and piece of software that you have.
I´ll try to "help" as I can. I´ll try to compile it here in my "Windows OS" PC. (I have kids, this will slow me a LOT, still I´m not dead... Yet...)
• Also, Mixxx (https://mixxx.org) has now some ways to input and output signals, I´ll try to figure how to (or even if its possible) to connect these two master pieces of software in some way. (I had created the "DarkMetal Skin" for this fantastic DJ player too: https://mixxx.discourse.group/t/dark-metal-skin/14096)

Again, thankyou all for your great work and share it with us all!

redo & undo would be nice!

redo & undo would be a nice addition
resetting the filters individually is great, though!
Thanks for that awesome work

Audio trouble

Hi, I am in kde neon and I cannot make audio work, neither alsa, nor pulseaudio, nor jack.
the problem is both in the snap version and the compiled version from source.
does the application support audio?
sorry my bad english

raspberry 4 support possible? ... please don't freak out

Hei!
I don't expect screams of excitement
but will it be possible to run vimix on a Raspberry 4, Nvidia Jetson or similar one day?
I am interested in the possibility of doing video collages for installations in environments where a more powerful computer can not be used.
currently we are using ofxPiMapper for that purpose. It has good basic features but obviously is missing some good ones vimix can provide. (and vice versa ;)
I don't know if turning down frame rate and resolution will be enough
the current snap version is not running
THANKS!

New features request

Can You please add workspaces like in GLMixer?

And I cannot find where to choose Monitor for Output window. Is this option exist? If not, can You make it?

What features exist and are planned?

I've been unable to find a list anywhere of implemented and planned features.

Maybe there also are some things in GLMixer that you want to do differently in vimix?

This type of information would be useful to me. :)

Thanks a lot for making these applications!

Recorded video shorter than real time

Hi,
I've noticed that when I record my vimix session the video recording is shorter than it was in actuality. This was also an issue in GLMixer, which I came across when doing live visuals to a concert. Problem occurs when trying to fit the video from the performance to the recorded music, the video is considerably shorter. I suspect that it has something to do with the FPS, do you have any advice or if there's a way to fix this?

Thank you!

Image sequence feature not working

Hey there!

Just upgraded to latest version (0.7) using Mac OS 11.6.8.

Image sequence feature isn't working, basically, and I get this readout:

0001 MultiFileSequence '' invalid.
0002 MultiFileRecorder creating video 113 x 197 : 3.
0003 MultiFileRecorder could not include images /Users/adamcasciaro_1/Desktop/Useful Images/Unhappy.png.
0004 MultiFileRecorder could not include images /Users/adamcasciaro_1/Desktop/Useful Images/Kagan Book.png.
0005  Warning - MultiFileRecorder: Failed to close recording.
0006  Image sequence saved to /Users/adamcasciaro_1/Desktop/Useful Images/_sequence.mov.
0007  Warning - 'file:///Users/adamcasciaro_1/Desktop/Useful%20Images/_sequence.mov': Stream contains no data.
0008  Warning - MediaPlayer 487242179809690 Loading cancelled

Any ideas what i'm doing wrong, or if this is a known bug?

Many thanks!

How to import Shaders into ViMix please?

Hi, I have downloaded and started to use Vimix, which is great and many thanks for it....
Can someone help how to import Shaders from Shadertoy? This was something which could be done in GLMixer so I'm guessing the same can be done with ViMix?
Much appreciate any help / advice :)

UI Rendering broken

Since rougly a week, UI rendering is broken: after starting vimix, I only see a black screen and if I open my application launcher, I can see this:
vimix problem

There seems to be no logfile and there are no error messages in the terminal.
I'm using intel hd graphics with mesa 20.1.8

Video decoding preformance

I've noticed videos played in vimix take up more CPU than those played in for instance VLC. Just as an example, one of my videos in vimix takes ~80% cpu, the same video in VLC takes ~30% cpu. In Totem video player the same video also takes ~80% CPU, so I'm thinking it might be down to which decoding library is being used or something like that?

Would it be possible to have the same performance as VLC in vimix?

I'm on Linux.

Mapping parameters to mathematical functions (variable automation)

I've played a bit with the program and what I've seen so far is awesome. But, coming from Resolume Arena, I felt there is some lacking functionality with respect the parameters.
I know Vimix doesn't have audio support yet, but maybe it would be possible to route some MIDI or audio so that, for example, the gamma slider changes with the volume or with the pitch.

For me, one of the best features of vj programs is the ability to have pulsating effects that sync with the music.

On the most basic level I would like to be able to choose a tempo and then map a variable to a sine or cosine that oscillates at that tempo.

I'm no programming expert, but I think with some guidance on how to start I could experiment with this, if it's plausible.

Add session folder error- Mac OS X 12.0.1

We have spotted an error when using Vimix 6.2 on Mac 12.1.

When we try to add a folder in the "Session" drop down box, it will flash up the message "busy- close file dialog box to resume" for a millisecond, and then not bring up the file dialog box where I would be able to select my folder.

I have tested this function on OSX 11.4, and it works fine. This error only occurs, to my knowledge, on our computer running OS X 12.0.1.

absolute OSC messages

Hello,
I hope it's ok if I make a feature request :-)

Would it be possible to instead of (or additionally to) having the osc messeges for grab, resize and turn do an action with a relative effect (i.e. move the image to +1 x +1 y relative to the current postion etc.), indicating the absolut x y position / absolute size / absolute angle of the source, for example

/vimix/current/grabAbs ff 200 300 to set the upper right corner of the source at (200,300).

what would be really cool aswell is to be able to not only pause/unpause via OSC but also set the frame of the current source.

Separate commands for xy OSC inputs

Hello,

I am new to Vimix, VJ, OSC and everything.
But the simplicity with which I could set it up is impressive and for this I am thankful, and I would like to keep playing.

One feature I would like is to separate the position OSC controller - and all those that have ff inputs to independent values:
/vimix/current/position ff 0.1 0.2
->

/vimix/current/positionx f 0.1
/vimix/current/positiony f 0.2 

Indeed, it seemed to me, that many free OSC controller for Android do not support the double value format. /vimix/xycommand ff 0.1 0.2

Would that be possible?
Is it any workaround for my free OSC App otherwise?

Thanks a lot,
Ale

Screen Capture failed to initialize

On 0.7.1 on OS X, screen capture always goes loading... then warning popup with Failed to initialize.

Full logs:

0050  Device Screen capture selected its optimal config: video/x-raw BGRA [email protected]
0051  Stream 1232612263997249 Opened 'avfvideosrc capture-screen=true ! video/x-raw,format=BGRA,framerate=30/1,width=3024,height=1964 ! videoconvert ! video/x-raw,format=RGB ! queue max-size-buffers=3 ! videoconvert ! appsink name=sink' (3024 x 1964)
0052   Warning - Stream 1232612263997249 Failed to initialize.

I'm hoping to capture the screen from another program, projectM visualizer to layer in as an audio reactive element.

streaming in local network

Hello,
is it possible to access the local network stream on an other application (for example to view it in VLC mediaplayer?)
if so, what is the address where the stream is sent over?

ultimately i would like to be able to stream from vimix directly into hydra, which is based on webrtc and has a similar feature, where it is able to share between instances. Do you think this is possible at all?

Unfortunately, I don't know enough about these streaming protocols..

Turning on vsync removes frame limiter

Compiled from commit afc0c7a.

Repro steps

  1. Turn on the program while vsync is turned off
  2. Turn on vsync

Result

The framerate counter is immediately increased to its limit, for me ~300 fps.

Expected

When vsync is turned on I would expect the framerate to stay software-limited until the program is restarted and vsync is activated.

Advanced source settings

Often I need to set the same settings for many sources (scale, position, brightness/contrast etc.)
Now I'm trying to move all sessions from GLMixer.
At this moment it's not possible to setup cources quick and precise.
Can You, please, add a toggable window with all settings represented with digits?
Thus this process could be as informative as in GLMixer and not overloading UI when setup is done.

multiple monitor

Hello
First thanks a lot for this new vimix !

I got a question about monitors/screens.
There is a little of my request in #16 issues.
But i think a output monitor menu is needed.
I think the enhancement to set up multiple monitors, sizes, geometry, decoration and maybe edges or little effects, mapping to compose big pictures would be a great thing.
So let's talk about that...

crop tool

Hei!
Is cropping something you are planing to add? Would be great.
Thanks & Greetings!

Window capture

Is it possible to capture a specific window? And not the whole screen?

I want to work with a video that is playing with audio, and want that to always be playing, and kept in sync, but importing the video in as a source does not seem to play audio, so the thought was to be able to capture it in.

New (old) features request

Hello!

After just migrating over to Vimix from GL Mixer, there's a few things I was using quite a lot and wondered if they might be featured in any upcoming versions...

They are:

• cursor options... specifically "Fuzzy cursor" which allows us to "jitter" the video positions.
• the ability to set a start and end point for a clip rather then having to right-click-drag a section to skip
• frame by frame navigation in player mode for fine-selecting loop points, etc...
• png masks
• "Loopback" source

I have been really impressed by Vimix, and love its interface, and general look and design. I understand that some of the requests above might be antithetical to some of your design principles, but as I said, just wondered if there was a plan to reinstate/reintroduce any of these features we found so useful.

Many, many thanks in advance!

GPL-3.0-only or GPL-3.0-or-later?

I am adding a stub page for vimix to the Free Software Directory and I cannot tell if this project is GPL-3.0-only or GPL-3.0-or-later. Can you answer which one it is? The answer would usually go in the license header of source files or in the README file. I could help with a pull request after I know which it is.

some generators are not working

Good morning!
I just wanted to let you know, that some of the generated patterns are giving me errors
(Timer, Clock, Blob and Lissajous)
I`m using the snap --edge version on Ubuntu 20.10
Bildschirmfoto von 2020-12-09 10-46-17
greetings!

OSC support

do you think you can add OSC support to vimix (like in GLMixer)?
Thank you Bruno! Vimix is wonderful :-)

compilation error in NetworkToolkit.cpp

Devuan 3.0 (Debian 10 buster):

[ 76%] Built target GLAD
[ 76%] Building CXX object CMakeFiles/vimix.dir/NetworkToolkit.cpp.o
/home/lupin3rd/repo-git/vimix/NetworkToolkit.cpp: In function 'void add_interface(int, const char*)':
/home/lupin3rd/repo-git/vimix/NetworkToolkit.cpp:97:5: error: 'memset' was not declared in this scope
memset(&ifreq, 0, sizeof ifreq);
^~~~~~
/home/lupin3rd/repo-git/vimix/NetworkToolkit.cpp:97:5: note: 'memset' is defined in header ''; did you forget to '#include '?
/home/lupin3rd/repo-git/vimix/NetworkToolkit.cpp:20:1:
+#include

/home/lupin3rd/repo-git/vimix/NetworkToolkit.cpp:97:5:
memset(&ifreq, 0, sizeof ifreq);
^~~~~~
/home/lupin3rd/repo-git/vimix/NetworkToolkit.cpp:98:5: error: 'strncpy' was not declared in this scope
strncpy(ifreq.ifr_name, name, IFNAMSIZ);
^~~~~~~
/home/lupin3rd/repo-git/vimix/NetworkToolkit.cpp:98:5: note: 'strncpy' is defined in header ''; did you forget to '#include '?
make[2]: *** [CMakeFiles/vimix.dir/build.make:661: CMakeFiles/vimix.dir/NetworkToolkit.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:78: CMakeFiles/vimix.dir/all] Error 2
make: *** [Makefile:152: all] Error 2

High GPU usage by GUI

I'm experimenting with using a laptop without a dedicated graphics card with Vimix. I can currently run a maximum of 4 1080p/30 videos before I start dropping frames, or 9 at 720p/30. This is good for my use at 720p, but for 1080p I want more headroom.

It looks like my bottleneck is the integrated GPU since that hits 100% at the same time as I start dropping frames.

I have tested to run many VLC instances to see if the performance issues come from decoding many 1080p videos for some reason. I got to 9 VLC instances before my computer crashed, and I wasn't running into any bottlenecks at that point, so this tells me that my computer is able to handle the decoding.

When starting Vimix my GPU usage goes up to ~80%, I'm guessing this comes from rendering the GUI. Would it be possible to optimize this? That would most likely enable me to run more sources.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.