brunoherbelin / vimix

Live Video Mixer
GNU General Public License v3.0
282 stars 27 forks source link

Colour correction an Audio #66

Closed flowerhorse closed 11 months ago

flowerhorse commented 1 year ago

Thank you for the fine program. I've been trying it for a few days now and it seems to do exactly what I expect from a Vj program.

But so far I haven't found a way to output the audio tracks of the videos to the video mix. Is there no provision for that or are there hidden depths in the program that I haven't gotten to yet?

In the concrete case I would like to mix three video loops with synchronous sound to one projection and one audio output. Preferably as simple as possible via a sound card. the manual gave me no hint about this and in the osc wiki is no section on audio. What can I do?

Here is a suggestion for an additional program function: The projections are not always on a neutral white surface. So it would be nice if the mix could be color corrected at the end. ideally in Kelvin + compensationg the color cast of the bulb and the color of projection surface.

Best regards

brunoherbelin commented 1 year ago

Thanks for your positive comments and constructive input!

So for audio, the answer is no : there is no audio support in vimix. There is no technological limitation indeed, but rather a lack of satisfying solution to transfer to audio the concepts I try to put into vimix: no knobs, no slider, no buttons (well, at least minimum amount of it :) ). There are so many professional and excellent software for DJ and VJ that I am not competing: I rather try to explore creative alternatives.

In practice, I use vimix with a live music artist, and we are using Ableton Link to synchronise video and (live) audio: this is what the Timer does. Then, loop events of videos can be synched to metronome beat or phase, which makes it sync with the music. I know, I need to do a Manual page for this...

So yes, I welcome very much suggestions on how to work seamlessly with audio sources and video sources.

Finally yes, calibration and tuning of projection is something I am working on. If you try the beta version (needs to compile from source) you can check how the 'Monitor' view is being designed : I would very much like suggestions here too !!

flowerhorse commented 1 year ago

Thank you for your detailed description of the compilation. It was essential for me as a Linux beginner. Now it's done and here are my first impressions:

I tried your beta on a single monitor system with 1080p resolution. I use this setup for quick tryouts. I describe my impressions as a program beginner trying to find my way around the program:

The program starts with displays (f5) . I expected the blend / dim / stop / circle and was a bit disoriented about the view. With the circle, you start looking for the function. The black boxes (f5) do not allow this. A black box can also be an error in the system. For beginners, I think it is better to start with the circle, especially since it is graphically more attractive.

For trying it out on a single monitor system, it was better to have a resizable window of the output. Now the output screen overlaps the adjustment options over the whole area and forces to connect a second monitor or beamer. Here perhaps a keyboard shortcut would be appropriate with which one can switch between full screen and resizable and movable window. Or an Autoswich funktion switching depending on one or to displays.

The SOURCE color correction menu is very confusing because of the missing color of the sliders. Also, because the slider paths are very short, It would be better to have a finer control via mouse wheel or arrow keys there.

In addition, general non switchable pictograms -pallette, film- are mixed with switchable pictograms, which also makes the function unclear. Why do there have to be pictograms at all? Color correction is a clear title. For adjustments, the first thing I try to do is to reset the slider by double-clicking on it, as I am used to doing with audio and some video programs. This is the simplest and most standardized solution I know. Alternatively the terms Gamma / B&C / Saturation / Hue and so on could be made clickable. Then the pictograms, which I don't always find visually plausible either, could be dropped altogether.

I only discovered the color selection to the left of Gamma today. It gives a great possibility of adjustment. Here I would like to see an additional pippette that would allow me to pick colors beyond the active Vimix window on the entire screen area. This would give the ability to additionally work with color scales defined in external images displayed via other display programs.

I am still thinking about other possibilities. Especially I'm thinking about a master level, where the color temperature of the projection can be set finally. For example, I would love it if the projection gave the impression that the projector was operated with flickering candles.

I have the impression that I am still far on the surface of the program and will look further into it and then report back. As a beginner, I am particularly interested in the menu logic, the ease of use and the possibilities of the program for my approach, but I also think in general cathegories. Please let me know if certain aspects do not fit into your current work plan or which consideration is currently important for your further work. Likewise, if I write too much.

Best regards

PS Here are some examples of my work, which I have produced mostly analog. It would be very nice if I could extend this working method with the possibilities of your program.

https://www.youtube.com/@blackfloyd6698/videos https://www.youtube.com/watch?v=EDMQlFdyHC0

brunoherbelin commented 1 year ago

Hey ! thanks for taking the time to give feedback! Let me give some answers and ask for more precision below:

The program starts with displays (f5) . I expected the blend / dim / stop / circle and was a bit disoriented about the view. With the circle, you start looking for the function. The black boxes (f5) do not allow this. A black box can also be an error in the system. For beginners, I think it is better to start with the circle, especially since it is graphically more attractive.

definitely agreed. This is a bug.

For trying it out on a single monitor system, it was better to have a resizable window of the output. Now the output screen overlaps the adjustment options over the whole area and forces to connect a second monitor or beamer. Here perhaps a keyboard shortcut would be appropriate with which one can switch between full screen and resizable and movable window. Or an Autoswich funktion switching depending on one or to displays.

Agreed (that's why its still beta): the monitor view should not replace the previous mode with window border, resize, etc. This view becomes useful for configuring borderless windows, and specifically borderless windows covering multiple monitors. So yes, indeed, the menu could offer to have the 3 modes (normal window, borderless and fullscreen).

The SOURCE color correction menu is very confusing because of the missing color of the sliders.

what color do you mean?

Also, because the slider paths are very short, It would be better to have a finer control via mouse wheel or arrow keys there.

humm... ImGui does not provide the mouse wheel control by default, but that's a possibility.. I'll check

BTW, you can CTRL+clic on a slider to enter the value.

In addition, general non switchable pictograms -pallette, film- are mixed with switchable pictograms, which also makes the function unclear. Why do there have to be pictograms at all? Color correction is a clear title. For adjustments, the first thing I try to do is to reset the slider by double-clicking on it, as I am used to doing with audio and some video programs. This is the simplest and most standardized solution I know. Alternatively the terms Gamma / B&C / Saturation / Hue and so on could be made clickable. Then the pictograms, which I don't always find visually plausible either, could be dropped altogether.

Interesting! This panel was one of the first thing done in vimix years ago, and I am so used to it that i don't notice it anymore... I agree with your comment: these pictograms do not have a true purpose, and could very well be removed.

Thanks for the tip on the double-clic to reset: this could go with the design of sliders that take into account mouse wheel input.

I only discovered the color selection to the left of Gamma today. It gives a great possibility of adjustment. Here I would like to see an additional pippette that would allow me to pick colors beyond the active Vimix window on the entire screen area. This would give the ability to additionally work with color scales defined in external images displayed via other display programs.

Picking color is a programming challenge (for me who develops all features without heavy ready-made toolkit): I have in my TODO the color picker for inside the vimix window. I do not have a cross-platform solution (e.g. Linux AND OSX) for a color picker on the entire desktop. I will check at least for Linux.

I am still thinking about other possibilities. Especially I'm thinking about a master level, where the color temperature of the projection can be set finally. For example, I would love it if the projection gave the impression that the projector was operated with flickering candles.

yes, I see your point and here the Display View could be the place to work on the global projection.

Your example of candle would be possible with a GLSL shader applied to the output rendering. I had once considered something like that, so your comment put this idea back on my stack... interesting...

I have the impression that I am still far on the surface of the program and will look further into it and then report back. As a beginner, I am particularly interested in the menu logic, the ease of use and the possibilities of the program for my approach, but I also think in general cathegories. Please let me know if certain aspects do not fit into your current work plan or which consideration is currently important for your further work. Likewise, if I write too much.

It's excellent to have feedback ! I might not do all what everybody asks, but overall, most of users' comments are making the software better so I am up for it !!

PS Here are some examples of my work, which I have produced mostly analog. It would be very nice if I could extend this working method with the possibilities of your program.

Excellent! Love it! You will probably like playing with the Loopback source (+ Insert, Internal, Rendering Output)

flowerhorse commented 1 year ago

The SOURCE color correction menu is very confusing because of the missing color of the sliders. ... also switched elements

what color do you mean?<

The Blue, -signing switched elements- is away. > screenshot

Picking color is a programming challenge (for me who develops all features without heavy ready-made toolkit): I have in my TODO the color picker for inside the vimix window. I do not have a cross-platform solution (e.g. Linux AND OSX) for a color picker on the entire desktop. I will check at least for Linux.<

another perhaps simpler way could be to give the possibility within color selection to load a color scale image, which then appears on the workdesk in a window and can be picked up there with the color picker.

In my thought model i have two applications for this: First, for the performance itself, as a finer and more specific way to tune the different layers for projection second, at the master level, to also support color matching in documentary video recordings of the event in general.

I imagine it at master level like this: I project from vimix a test pattern with photographic gray (equivalent 18 % reflection- (extended photogr.white-gray-black)) on the projection surface, the documentary camera makes a color balance from it as a photo or still, I read the photo back into vimix and grab the gray value with the picker and vimix corrects the value again to neutral gray. in extension with photographic white and black vimix additionally could extend the dynamic to the maximum. A gamma slider could help to reach maximum

This way I would have corrected all the color casts, the projection surface, the projector lamp and the inaccuracy of the camera color balance already in the projection. And a Kelvin slider at the end.

Blue-signing switchable elements- is away- left beta right manualscreenshot

brunoherbelin commented 1 year ago

what color do you mean?<

The Blue, -signing switched elements- is away. > screenshot

Maybe you mean that the accent color has changed to grey? (see screenshot) It looks like vimix got confused when loading settings after you upgraded...

Screenshot from 2023-02-19 22-22-20

I imagine it at master level like this: I project from vimix a test pattern with photographic gray (equivalent 18 % reflection- (extended photogr.white-gray-black)) on the projection surface, the documentary camera makes a color balance from it as a photo or still, I read the photo back into vimix and grab the gray value with the picker and vimix corrects the value again to neutral gray. in extension with photographic white and black vimix additionally could extend the dynamic to the maximum. A gamma slider could help to reach maximum

Interesting procedure: could very much work like a photographic 'white balance' To be complete, could be to pick white color, and then to pick black color.

And a Kelvin slider at the end.

I'm guessing you imagine something like this : https://support.captureone.com/hc/en-us/articles/360002596458-Adjusting-Kelvin-and-Tint-sliders ?

flowerhorse commented 1 year ago

....Maybe you mean that the accent color has changed to grey? (see screenshot) It looks like vimix got confused when loading settings after you upgraded...

Ah, I've changed it there and now it's ok. Maybe it's useful not to offer grey there because is doesn't accent.

I understood interface as an explicitly technical term and therefore hesitated to press the button. Perhaps 'interface appearance' would be clearer in this sense. It also took me a long time to understand how to change the menu width (scale). Maybe a slider would be useful here too. The function of 'smooth cursor' has not yet become visually clear to me from the effect.

By the way: The location of the help file (ctrl H) is a bit convoluted for beginners. Maybe an icon at the bottom of the menu vimix (about vimix) between 'settings' and 'metrics' would be appropriate. I also think that because of the complexity of the program you should be able to print out the shortcuts list, or even better the whole help text.

.... Interesting procedure: could very much work like a photographic 'white balance' To be complete, could be to pick white color, and then to pick black color.

Yes, grey, white, black is the complete way. I first encountered it in the first image editing program for 24 bit images 'Photostyler'. At that time it was used for color matching of scanned images. It is the easiest way to color balance and I believe that it will also work for projection and even neutralize color cast projection surfaces. If I find it here on an old computer I will make a screenshot of it.

.... I'm guessing you imagine something like this : https://support.captureone.com/hc/en-us/articles/360002596458-Adjusting-Kelvin-and-Tint-sliders ?

Yes, exactly that as an element of the White Balance window because sometimes a readjustment of the black, white and gamma definition is necessary.

Today I played with a small external web cam through your program. I want to do this soon with my camera, which has a 4k hdmi output. I read that I need a hdmi capture to usb for this. Other than being able to handle 4k, should this converter have any special features in terms of latency or does it not matter? Are there any that do this particularly well at an affordable price? Do I need to install any additional software for it in the linux vimix connection?

When playing with the webcam 720p the image in vimix appeared in a black border. Is that the way it is supposed to be?

Best regards

brunoherbelin commented 1 year ago

Quick update on your response:

Maybe it's useful not to offer grey there because is doesn't accent.

Indeed, I was just never inspired to do so... I now added a green accent

I understood interface as an explicitly technical term and therefore hesitated to press the button. Perhaps 'interface appearance' would be clearer in this sense.

Agreed: renamed (as was previously) to "Appearance"

It also took me a long time to understand how to change the menu width (scale). Maybe a slider would be useful here too.

Cannot be a slider (because cannot slide while changing size) but added [ + ] and [ - ] buttons to be clear

The function of 'smooth cursor' has not yet become visually clear to me from the effect.

I added a tooltip for this, but best is for you to try and move a source with a smooth cursor :)

The location of the help file (ctrl H) is a bit convoluted for beginners.

Thanks for the suggestion : I moved it next to Metrics

Yes, grey, white, black is the complete way.

working on it... But the good news is that I found the way to do system-wide color picker : this way the picking of white/grey/black colors will be possible on any image visible on screen.

I read that I need a hdmi capture to usb for this. Other than being able to handle 4k, should this converter have any special features in terms of latency or does it not matter? Are there any that do this particularly well at an affordable price? Do I need to install any additional software for it in the linux vimix connection?

A frame grabber is indeed necessary in this case, but its not a big investment. I purchased a Mirabox and am happy with it and didn't need drivers (appears as Mirabox with V4L2).

When playing with the webcam 720p the image in vimix appeared in a black border. Is that the way it is supposed to be?

not really... vimix just grabs the frames given though gstreamer... I don't have borders with my webcam capture...

flowerhorse commented 1 year ago

I am currently preparing an exhibition via vimix. So now I'm looking at limitations and workflow and it may take a while until I write again.

My first questions are about the video material for vimix. Usually I work with material in prores. When trying to load these files directly I got error messages because of the missing codec. Mp4 works fine. Are there any other H264 formats supported? Is there a possibility to extend Vimix with other codecs? Are there any limits to the maximum file size that can be processed in the overlay process? Should video files for vimix be optimized for faststart, zerolatency or fastdecode when converting or is that only limited by the computer and the graphics card?

The next thing I noticed was this: On a simple video overlay, -SourceVideo and 1 Clone-, I wanted to change the Source video. i clicked on filenamexx (folder), it opened the file manager, I clicked the file I wanted to change but it didn't change, it opened in another program. So I went back, pressed + (ins), clicked open file,selected the new file, gave ok, clicked again on the source shortcut, turned on colorcorrection and copied the correction values from the old to the new file. A very long way. The Replace button only worked for cloned files. Here I would find simplest, if the file would be replaced over the file manager after clicking the new file and then would be queried whether also the clones should be replaced. If this is not technically possible, I would like the new file to be automatically inserted as a new element with the complete settings of the original file., if the clicked name is different to the Source file name. This would greatly simplify the process.

When adding a new media source in the insert menu, an ok must always be given at the end, although the inserted file is not yet in the projection screen. Here I would find better, if I could switch this on or off in the configuration. Also I would find better if the view would change after selection from insert menu immediately into the appropriate source menu of the new file to make adjustments.

And the Color Correction should be enabled by default. - It took long time of trying til I found 'enable' under the three bar switch when I tried it first time.

in the source menu of the video files there are three selection buttons at the bottom: clone&filter, replace and delete. Here I would find good, if there was also a 'mute' button. That could help with complex arrangements to keep the overview.

Best regards

brunoherbelin commented 1 year ago

Screenshot from 2023-03-01 23-28-07

Here is the proposed solution for per-window white balance correction. Thanks for testing it (compile from source the Beta branch) and letting me know if this is working for you and corresponds to the needs.

I took note of your suggestion for color correction of source and will follow-up about this later on.

flowerhorse commented 1 year ago

Great. The color temperature control alone works wonders! I first tried the color matching on a one screen system and it worked great even though it only corrected for one color at a time.

I tried white, gray and black tones and it corrected completely on the first try. Remarkably, I never ended up with a color noise pixel with the picker. For some corrections a pixel magnifier would have been nice because the search cross mouse pointer sometimes disappears in the structure of the video image.

My method was to set the saturation in the source file to maximum, then pick the most neutral w,b,grey tones and correct them. I then made the rest of the corrections in source-colorcorrection. For one file it worked. For the regular output correction of several overlaid sources the experiment is still to come.

I found it very comfortable that the image stops when the picker is selected. On the other hand, the output image also stops, which is a visible interruption for life performances. Is it possible that the output can continue during the operation?

Earlier I connected a projector to try the same thing with two outputs. I output via intel hd graphics, the settings were screen1 solitary, screen2 solitary, screen 1/2 cloned, left/right extended. I chose extended, saw in output1 the two rectangles for the extended screen and put the output for the projector on the left side. The working screen was on the right. In this arrangement, the picker icon did color on click, but the mouse pointer did not change and no color sample could be taken. It did not work again until I placed the projection image overlapping on both screen-rectangles. Is this possibly due to an incorrect setting on my part? Screenshot_20230302_195416

Screenshot_20230302_195846

flowerhorse commented 1 year ago

I have now carried out the tests with the test image for the final output correction via camera. As I have already thought, a single color measurement is not enough for this.

The single white balance in connection with gamma and the other possibilities of the source color correction performs excellent services in relation to the single channel and leads very quickly to the goal.

For the final output correction, however, you will need three white/gray/black measuring points and possibly an additional gamma control. How this works mathematically I do not know. From Aldus Photostyler I remember that over the three measuring points in each case a gamma curve per channel R, G, B was formed, which could be adjusted in sum or per channel.

The measuring pipette should form the average value of a somewhat larger measuring area here, so that one does not measure into a single R,G or B cell of the projector resolution, which falsifies the measurement. This happened to me during my experiments with the camera photo of the test image on the projection screen.

As an icon for the different measuring tones you could perhaps use a square, later filled with the measured color with a circle in the center white, gray and black.

I am still thinking about the test image. I think a graduated gray scale, perhaps in seven or nine steps would be sufficient. About the selection possibility with the gray value one could reach so perhaps already a gamma adjustment of the curve without that a special reger would be necessary for it.

Maybe a bug: Starting vimix. changing to Displays(f5) than pressing the plus button (more windows) results program end

brunoherbelin commented 1 year ago

Great to have this discussion on specific aspects and to improve vimix together! I answer to your points below

I found it very comfortable that the image stops when the picker is selected. On the other hand, the output image also stops, which is a visible interruption for life performances. Is it possible that the output can continue during the operation?

it is not supposed to interrupt rendering during color picking. It does not do this for me. However, I do remember observing this behavior before (when I did early tests) but now, opening the color dialog and starting a color picking should be happening while everything is still running. The dialog I call is a GTK system-wide global color dialog, which I am not implementing myself and cannot control: it is possible that its behavior is hardware and driver dependent (I am running on nvidia GPU, don't know how it behaves on all hardware).

In this arrangement, the picker icon did color on click, but the mouse pointer did not change and no color sample could be taken. It did not work again until I placed the projection image overlapping on both screen-rectangles. Is this possibly due to an incorrect setting on my part?

I don't know; how the GTK color dialog behaves depending on each graphics card and configuration is beyond my control :) !!

For the final output correction, however, you will need three white/gray/black measuring points and possibly an additional gamma control.

There are indeed two things:

  1. the balance of colors (which I implemented based on this code and that one too. It is about colorimetry, i.e. the spectrum from warm to colder colors.
  2. the range of brightness which should define the gamma based on lightest and darkest values, i.e. what can be a black and what is a white.

I will check on how to work on point 2; adding picking color of a black point could be nice. But there is a limitation in what the software can do: if a projector is bad and not able to do a real black (which is often the case), nothing done in software will ever correct for that!

The measuring pipette should form the average value of a somewhat larger measuring area here, so that one does not measure into a single R,G or B cell of the projector resolution, which falsifies the measurement.

humm, again I cannot change the way the GTK color dialog and color picker works.

Alternatively, what I could do is to make the whole output blurry or pixelated so that the averaging of colors is done

As an icon for the different measuring tones you could perhaps use a square, later filled with the measured color with a circle in the center white, gray and black.

yep, I have a white drop and a black drop icons: i'll check how to keep things simple !

I am still thinking about the test image. I think a graduated gray scale, perhaps in seven or nine steps would be sufficient. About the selection possibility with the gray value one could reach so perhaps already a gamma adjustment of the curve without that a special reger would be necessary for it.

yes, please let me know which of the test pattern is best ! Please refer to this for the list of possible patterns.

Could you please try the different 'generator' of a 'Generated' source? There is the 'Philips test' pattern for example, but i did not choose it because it is not available on all versions of vimix / on all systems. Or maybe we could offer different patterns (clic multiple time to choose the pattern?)

Maybe a bug: Starting vimix. changing to Displays(f5) than pressing the plus button (more windows) results program end.

Definitely a bug: I also observed an incompatibility (causing a crash) after I changed the way to store settings. I made a fix. Thanks for letting me know if this is still a problem after updating the source code and recompiling. NB: on first run you will loose your previous config.

brunoherbelin commented 1 year ago

Here are comments about your previous questions:

Usually I work with material in prores. When trying to load these files directly I got error messages because of the missing codec. Mp4 works fine. Are there any other H264 formats supported?

Yes, gstreamer supports several formals. Support for Prores is definitely possible:

Screenshot from 2023-03-03 21-24-11

You might have to install all gstreamer plugins:

sudo apt update
sudo apt install gstreamer1.0-plugins-bad

When adding a new media source in the insert menu, an ok must always be given at the end, although the inserted file is not yet in the projection screen. Here I would find better, if I could switch this on or off in the configuration.

Yes indeed, after the file dialog for opening a media file, a second validation is not necessary. I removed this second validation.

On a simple video overlay, -SourceVideo and 1 Clone-, I wanted to change the Source video. i clicked on filenamexx (folder), it opened the file manager,

this is indeed to open the folder location, not the file itself.

I clicked the file I wanted to change but it didn't change, it opened in another program. So I went back, pressed + (ins), clicked open file, selected the new file, gave ok, clicked again on the source shortcut, turned on colorcorrection and copied the correction values from the old to the new file.

Yes indeed, I did not implement the replacement of a source that has a clone. The reason is that there can be many sources to replace recursively (a clone can itself has a clone), and the configuration of each clone filters has to be reproduced each time. Not impossible, just more work...

And the Color Correction should be enabled by default. - It took long time of trying til I found 'enable' under the three bar switch when I tried it first time.

Please allow me to disagree. The reason is that, on low-end computers, the color filtering is costing GPU processing and this might make vimix less usable for many users. My design principle is that vimix should work fast on first start, and the user observes the performance cost each time a new feature is activated / each time a source is added.

in the source menu of the video files there are three selection buttons at the bottom: clone&filter, replace and delete. Here I would find good, if there was also a 'mute' button. That could help with complex arrangements to keep the overview.

I see your point. In effect, this is naturally obtained in vimix by placing a source outside of the mixing circle; the source becomes 'inactive' (snow flake icon). So, what you ask could be a to find a way to shift a source outside of the mixing circle?

flowerhorse commented 1 year ago

Great to have this discussion on specific aspects and to improve vimix together!

Very true. I enjoy this collaboration also very much!

  1. the balance of colors (which I implemented based on this code and that one too. It is about colorimetry, i.e. the spectrum from warm to colder colors.

The determination there is the color temperature of the bulb or Led and the spectral quality of the projector light especially with Led. In my attempts with a cheap china projector, the color temperature controller was of no use because the spectral quality of the light is simply poor. Here I had best results with the slider default of 6500 kelvin and could maybe go down 40 to 60 kelvin. I'm curious how the setting options behave tomorrow at the exhibition setup at a better projector with better color rendering.

  1. the range of brightness which should define the gamma based on lightest and darkest values, i.e. what can be a black and what is a white.

I will check on how to work on point 2; adding picking color of a black point could be nice. But there is a limitation in what the software can do: if a projector is bad and not able to do a real black (which is often the case), nothing done in software will ever correct for that!

Measuring pure white 255,255,255 or pure black 0,0,0 is problematic because it can also be overexposed or underexposed and contain noise when underexposed. Apart from the fact that there is no such thing as 100% reflection or absorption, photographic scales, especially for white, are always kept somewhat below this level for black because of the surface reflection. The average gray value is defined with 18% reflection and all camera analyzers know this and evaluate accordingly. Therefore, the measurement of deviating gray values can be used well for gamma correction if the white / black range is defined.

Alternatively, what I could do is to make the whole output blurry or pixelated so that the averaging of colors is done

It is better to leave it a little longer. At the moment I'm working with external scales anyway and I can't yet see exactly whether an implemented pattern is so useful. It would be good if a test pattern could be projected from the mixing circle and the program could create a photo or still on an invisible channel using a connected camera or store it somewhere while the camera continues to run. This could simplify the process of color correction in Vimix but could also be an interesting effect for a life-mix if there is also the possibility to include it in the overlays. Or maybe this is already possible and I haven't found it yet?

yes, please let me know which of the test pattern is best ! Please refer to this for the list of possible patterns.

I will. I've already looked at it, but at the moment I'm still standing in front of it like a duck in a thunder storm. I have also tried a few things on it but still with no real overview but I stay tuned.

As a visual effect with no sense for color correction I liked that kind of hypnotic eye : gst-launch-1.0 -v videotestsrc pattern=zone-plate kx2=20 ky2=20 kt=1 ! video/x-raw,width=1280,height=720 ! autovideosink

Could you please try the different 'generator' of a 'Generated' source? There is the 'Philips test' pattern for example, but i did not choose it because it is not available on all versions of vimix / on all systems. Or maybe we could offer different patterns (clic multiple time to choose the pattern?)

I haven't found that there yet. I first tried all the members at the bottom of the page and was proud that I got them to work :) This seems to be some kind of basic module from which other patterns can be assembled? I would like to try but my knowledge is very limited. I couldn't even find the word "Philips test" on the page. But at least I was able to deconstruct the hypnotic eye by leaving out a few parameters. So there is hope.. :))

Best regards

flowerhorse commented 1 year ago

Ah, I've found generator on vimix. I've searched it on the gstreamer site. A small step for mankind but a big one for me:I have discovered the possibilities of the generator! I've never been there before.- Philips test could go because of the grey fields. I'll give it a try.

I also added the hypnotic eye under custom there Why can't I set the height and ratio of custom-defined objects like I can with the other presets? Can that also be done via the input line? Can I create several objects under custom and will they be retained?

sudo apt update sudo apt install gstreamer1.0-plugins-bad

I've tried it but it was already installed. I receive the following error:

Screenshot_20230304_114911

could it be because the intel chip does not support hardware en/decoding?

My design principle is that vimix should work fast on first start, and the user observes the performance cost each time a new feature is activated / each time a source is added.

I see, that's a good reason. In this sense, it could also fit well to offer the filters immediately on the first loading level. in order to get to the filters, I have always created a clone first, which I then worked with. the source file on the first level was then only in the dark around the mixing circle. I think this also costs power and makes the picture on the mixing circle more confusing. Why are clone and filter coupled in one switch at all? Could'nt it like color correction just be there?

In effect, this is naturally obtained in vimix by placing a source outside of the mixing circle; the source becomes 'inactive' (snow flake icon). So, what you ask could be a to find a way to shift a source outside of the mixing circle?

When I move the file out of the circle, I automatically change the values of brightness and transparency and have to reconstruct this again later. A simple mute switch in the source sidebar would preserve these values and would therefore be the fastest and most effective method, I think.

Another question: How are the abbreviations for the individual tracks created? So far I haven't found any comprehensible logic for these abbreviations, especially at first source level.

The first letter is the beginning of the file name or the source type, but with generated, for example, this logic is broken because the pattern name is abbreviated there and that makes things confusing. i would also like it if the clones were automatically arranged to the parents because that is clearer.

Another possibility would be to highlight the clone dependencies in the abbreviations when clicking on a source file so that the dependencies are visible when passing by. When clicking on a clone instead of a source, however, this model does not yet have an orderly solution.

Some small: Menü Source gives information about filename, codec, size and framrate. Duration of the file loop is very important and could also appear there.

Screenshot_20230304_131150

In the upper window bar 'Video Live Mixer - vimix', the session mix name could also be displayed, e.g. 'Video Live Mixer - vimix - testbild.mix'. Or unnamed.mix as a subtle hint.

Please let me know if I write too much :) Best regards

brunoherbelin commented 1 year ago

Good to keep working on UX improvements! I made changes to Beta version thanks to your suggestions!

Philips test could go because of the grey fields. I'll give it a try.

I decided to go for Phillips test if possible (testing if it is available) and to revert to the simpler one otherwise (always available).

The SOURCE color correction menu is very confusing because of the missing color of the sliders. Also, because the slider paths are very short, It would be better to have a finer control via mouse wheel or arrow keys there. In addition, general non switchable pictograms -pallette, film- are mixed with switchable pictograms, which also makes the function unclear. Why do there have to be pictograms at all? Color correction is a clear title.

I see, and agreed that the UI evolved without taking time to think on some simple affordance! I changed the mouse-over highlight color of icons to the accent color, thus showing it is doing something if clicked. I removed the icons of the color adjustment, which indeed were not helping in anyway.

However I could not implement a slider reset from double-clic; instead I made the label to the right active (with hovered highlight) so that if clicked it restores the default value.

Well, anyway, I let you try the Beta version and welcome critics to improve.

Why can't I set the height and ratio of custom-defined objects like I can with the other presets? Can that also be done via the input line? Can I create several objects under custom and will they be retained?

Because a custom generator includes the resolution of the image in its pipeline description :

videotestsrc horizontal-speed=1 ! video/x-raw, width=640, height=480

To make this clear on first time use, the default pipeline is now the one above, WITH the width and height defined

brunoherbelin commented 1 year ago

Hey there ! following up on your questions, in random pseudo-inverted order :

Please let me know if I write too much :)

Not at all, Its fun to discuss these design aspects. However indeed this thread of the github issues is diverging from original topic: i don't care but probably not the professional way to use this github feature :)

In the upper window bar 'Video Live Mixer - vimix', the session mix name could also be displayed, e.g. 'Video Live Mixer - vimix - testbild.mix'.

yes, it should. Strange that it does not work for you??? Please note this works only if the session file is saved (i.e. there is a filename to display).

Screenshot from 2023-03-06 22-24-46

How are the abbreviations for the individual tracks created? So far I haven't found any comprehensible logic for these abbreviations, especially at first source level.

The initials on the left bar are made from the FIRST letter and the LAST letter of the source name (not the file name) e.g. above screenshot, the source is called 'bird', thus the initials are 'BD'.

When I move the file out of the circle, I automatically change the values of brightness and transparency and have to reconstruct this again later. A simple mute switch in the source sidebar would preserve these values and would therefore be the fastest and most effective method, I think.

This is becoming a question of design choice. What you are asking is breaking a bit the idea to avoid 'yet another button' to control the sources. I would like to find ways to have this done in the mixing area, or at least in a way that does not add buttons. I had imagine for example a special 'stash' area in the mixing view (e.g. a circle next to the main circle) that keeps the source 'on hold' and, when the user takes a source back out of the 'stash', it comes back to where it was. Just didn't work on the idea enough to be satisfied. Any suggestion?

But there is a way to already do what you want; define your own input mapping for showing / hiding a source (or many)

e.g. hide (set alpha to a negative value) with programmed key press 'A';

Screenshot from 2023-03-06 22-35-43

and restore (set alpha to positive value) with programmed key press 'S';

Screenshot from 2023-03-06 22-34-50

I have always created a clone first, which I then worked with. the source file on the first level was then only in the dark around the mixing circle. I think this also costs power and makes the picture on the mixing circle more confusing. Why are clone and filter coupled in one switch at all? Could'nt it like color correction just be there?

It is a design choice. It allows chaining filters in a way that is visually showing in the mixing view.
https://github.com/brunoherbelin/vimix/wiki/Filters-and-ShaderToy#chain-multiple-filters

The alternative is to have another view where the user is making a diagram of the chain of filters; this would be yet another user interface to understand, and to switch to.

Here, I am trying to propose an alternative way of representing (thinking) filters : it is not a photoshop ' menu & clic ' that changes your image into a filtered image. The operation of the filter should not prevent you from taking the original image again and applying another type of effect, and merging the two different effects together to generate a new one. All that just by mixing, adding, substracting clones of the original source. It is actually efficient as it represents what the GPU is actually doing.

But yeah, we can discuss on ways to better explain this!

flowerhorse commented 1 year ago

Not at all, Its fun to discuss these design aspects.

ok, then I'll continue.. :)

The new look of your colour correction is great. Like a comfortable armchair. Much clearer. Much easier to adjust because of the longer slider paths. I also like the mouseover. I'm looking forward to working with it in the next few days. I think limiting the replace function to singular tracks is quite sufficient. I also think that more is not necessary.

On my computer, a few letters are cut off (Saturatio, Threshol). Can this be fixed or can it happen from computer to computer?

Screenshot_20230307_041706

Opening the file manager under folder is still unclear to me. On the one hand, it is very convenient to have quick access to file operations when they are needed, but on the other hand, the file manager under Source shows me thumbnails of files that I cannot select, as I have already written. - If I want to open a file with + (ins), I get a list of files with file type symbols, where I should see thumbnails for orientation much more urgently. There is a mismatch. Perhaps this could be compensated for somewhat if a view with thumbnails were also offered with + open file?

Source Folder View (I have no choice):

Screenshot_20230307_050203

(ins) Open File View (I have the choice):

Screenshot_20230307_045625

When I didn't know that you had revised the colour correction design, I thought about the fact that there are linear and logarithmic mechanical sliders. With the software sliders from vimix I have the impression that they work linear. Could a logarithmic increase be realised in relation to each relative position of the slider? I think that could allow very fine and precise adjustment.

Otherwise, the projector settings and tuning to the available light sources worked really well during my exhibition preparation. The method I have already described has also proven itself there on a larger scale and your program has saved me a lot of work. Many thanks for this.

could also be displayed, e.g. 'Video Live Mixer - vimix - testbild.mix'.

Please note this works only if the session file is saved (i.e. there is a filename to display).

Yes, I noticed that later too when I focused more on the behavior of this bar. No mix name means not saved. In view of the complex possibilities of the program, which are only gradually becoming clear to me, my basic strategy would be to give elementary operations such as file management, file information, infos on technical aspects of the film as casually as possible, so that they are just there when you need them, without you having to think about them. Therefore, for me, the above-mentioned appearance of the file manager, behavior of the window title, but also simple and accurate setting of the slider is an elementary prerequisite for creative work with vimix.

Screenshot_20230307_132809

The sessions menu: Recent files first showed me a path that was so long that I could barely read it there. I clicked a small sign next to it and since then it says 'recent files'. The path is not as important as the filename itself in the case of choice. i think that would be enough there. To the selection of mixes I get a tumbnail when I click on it. Here it would be nice if this happens on mouseover, so I don't have to learn how to get to the thumbnail. Details and solutions like this create freedom to deal more with the possibilities of the program itself. Especially with a minimalistic approach the inner logic and function of the basic elements is extremely important. You have to be able to rely on them without having to think about them.

As far as the possibilities of the program are concerned, I am still at the very beginning. So far I have only used it to correct one video. But I'm making experiments about the further possibilities and I'm also thinking about your idea for the design of the mixing circle. Also about communicating the possibilities e.g. in a help file. Later more.

I still have one question: As output with the correction of my video I do not render over the program but record the screen with a monitor recorder, because that has a better coding. I then play the result in the exhibition. The monitor recorder recording is done either manually, automatically via hdmi signal (not useful with the second monitor signal cause it's ever there) or by timecode. Would a timecode output via the program be possible, so that the monitor-recorder recording can happen automatically controlled?

edited and some parts added

flowerhorse commented 1 year ago

When I move the file out of the circle, I automatically change the values of brightness and transparency and have to reconstruct this again later. A simple mute switch in the source sidebar would preserve these values and would therefore be the fastest and most effective method, I think.

This is becoming a question of design choice. What you are asking is breaking a bit the idea to avoid 'yet another button' to control the sources. I would like to find ways to have this done in the mixing area, or at least in a way that does not add buttons. I had imagine for example a special 'stash' area in the mixing view (e.g. a circle next to the main circle) that keeps the source 'on hold' and, when the user takes a source back out of the 'stash', it comes back to where it was. Just didn't work on the idea enough to be satisfied. Any suggestion?

I'm thinking about the 'Stash' area you wrote about. Analogous to the skull, as a sign for the failed connection of an element, (why is a failed connection actually included as an element? ) this would be a "ghost" for me. It has the possibility to appear and disappear at will, but would be latently always there. Appearing and disappearing means for me that there is a fade in and a fade out for this element if switched (that i can set short, long or optional, flickering fade ore else). Setting it up means for me always clicking the right mouse button to get the options.

How do I recognize an active element now? When i add an element it is automaticly placed outside the circle. It contains name, media type, an open lock symbol in each corner,a centerpoint (maybe as a target incentive to move it and to underline that it is selected) and a white border. When I click and move it I get the message 'inactive' with a snowflake symbol.

I drag it into the circle. Touching the magenta circle enlarges the image as a sign for activating, if a movie it also starts to run. The alpha value is displayed. As long as the value is 0, I get the symbol crossed out eye - not visible. The border remains white. If alpha is higher 0 an eye symbol ist seen. It now works. (I don't know much about alpha values. Ist it necessary to keep the value in view anytime?)

May be that way: By touching the element to the line of the circle, change to color should take place in the border of the medium. (Means: Light on. Means: Activation) Either in increasing saturation up to alpha unequal 0 or from alpha unequal 0, which might be easier to realize.

If I switch a medium to 'ghost' the border color of the medium could change. This way I could later immediately see which medium in the circle is active and which is 'ghost' without removing it from place. But it has also a button. I think there of a color code circle as switch in the thumbnail area of the medium, not a graphical symbol or letter abbreviation.

As a beginner, I'm thinking here in terms of individual media. I don't know yet how and if you can use 'ghost' on file groups or on entire mixes. Also, I don't know if in the work process it may be necessary to 'clean' the work screen from unused media because of the overview. In such a case, moving it to a workspace outside might be better.

brunoherbelin commented 1 year ago

Quick update, but i'll be back about some other questions. (I appreciate your input very much; companies pay people for doing beta testing of their softwares ;) )

Opening the file manager under folder is still unclear to me.

Your comment was not clear to me neither ;) But I am guessing that you thought the button for 'Folder' was opening a file dialogue to select a file to replace the media. This is not the case; it only opens the Finder / File manager to show where the file is located. I changed to an icon that should be more clear:

Screenshot from 2023-03-08 23-55-47

On my computer, a few letters are cut off (Saturatio, Threshol). Can this be fixed or can it happen from computer to computer?

yes, it was a bit too tight. I increased the margin a little.

When I didn't know that you had revised the colour correction design, I thought about the fact that there are linear and logarithmic mechanical sliders. With the software sliders from vimix I have the impression that they work linear. Could a logarithmic increase be realised in relation to each relative position of the slider? I think that could allow very fine and precise adjustment.

It is already log scale for Gamma slider. Which slider would you think should be log scale too? Brightness, Contrast?

flowerhorse commented 1 year ago

(I appreciate your input very much; companies pay people for doing beta testing of their softwares ;) )

(If you want it you are welcome to make me an offer. :) But otherwise I'm also satisfied with being able to incorporate some ideas that make my work and possibly the work of others easier. I find it interesting and fun to think up logical/visual structures or to reconstruct or check existing structures in this way. But if there are big deals coming up we can talk about it again. ;)

Your comment was not clear to me neither ;) But I am guessing that you thought the button for 'Folder' was opening a file dialogue to select a file to replace the media. This is not the case; it only opens the Finder / File manager to show where the file is located. I changed to an icon that should be more clear:

I had already understood that.
I came up with this idea because the powerful "Dolphin" opens there, which is capable of many operations. Should only the directory of the file be displayed there like with "path"? Wouldn't that be easier? From the process, Vimix gives way to a comprehensive file management program that is part of the operating system. This simply raises speculations that comprehensive functions are now possible. If this is not planned is perhaps better to solve this with another program window.

By the way: I found it interesting that under "dolphin" I could change the name of the file whose directory was displayed to me without Vimix reacting incorrectly or an error message coming up. Only after reopening i found the link dead.

Maybe a new file saving function: The only case where I would want a file function is when I have gathered the files for a mix without structure on the entire hard drive and now want to bring everything into a folder or a stick. This is terribly tedious done manually. Then I would like to have a function: "Save all mix files in one folder". With Options: Move, copy and date as folder name unless otherwise specified.

Date as file name unless otherwise specified could also be a useful option for autonaming an otherwise unnamed file. Although I have seen that file naming is mandatory.

I tried the new replace function. That then the +(ins) menu opens is very irritating at first. After selecting and confirming the file to replace, the name shortcut does not change and the source menu remains collapsed. I think the filename shortcut should change automatically afterwards and the source menu should be expanded visible than with the new file and the old values as before. If this does not work or is too cumbersome to program, I think it is better to leave it as before because otherwise it causes more confusion.

It is already log scale for Gamma slider. Which slider would you think should be log scale too? Brightness, Contrast?

I have tried the gamma slider from this point of view. In my opinion it does not work properly because it is logarithmic over the entire value range 0.5 to value 10. It should be logarithmic from "default" value 1 to value 10 and from "default" 1 to 0.5 it should work logarithmic in the opposite direction. So I could, starting from "default" value 1, adjust very fine in both directions at the beginning. Brightness and contrast could also work this way. Also for red/green balance it is useful.

brunoherbelin commented 1 year ago

But otherwise I'm also satisfied with being able to incorporate some ideas that make my work and possibly the work of others easier.

Yeap! tha'ts the spirit :)

From the process, Vimix gives way to a comprehensive file management program that is part of the operating system. This simply raises speculations that comprehensive functions are now possible. If this is not planned is perhaps better to solve this with another program window.

How vimix is thought is to rely on the OS file management and to do 'Drag & Drop' of files into the workspace. In particular, I did not wish to enter into the browsing of folders and display of thumbnails of videos, and navigation between harddrives, etc.. : it seemed redundant with what the file manager already does, doesn't it?

That said, the left panel with 'Recent files' is the exception (as the OS file manager does not know '.mix' files and can't show a preview). It is also special as it allows opening a session with a smooth transition. The list of session files can also be populated with all '.mix' files in a folder, where all files could e.g. be for a given event.

NB: the session preview tool-tip now appears automatically (after 1s timeout). I added in the TODO list to allow sorting files by date / name and different order.

Maybe a new file saving function: The only case where I would want a file function is when I have gathered the files for a mix without structure on the entire hard drive and now want to bring everything into a folder or a stick. This is terribly tedious done manually. Then I would like to have a function: "Save all mix files in one folder". With Options: Move, copy and date as folder name unless otherwise specified.

Most definitely! It was planned for a while, but never got the motivation to do it. I imagined an 'Export' menu item which would allow to select / create a target folder, and then copy all files with the mix session there.

I have tried the gamma slider from this point of view. In my opinion it does not work properly because it is logarithmic over the entire value range 0.5 to value 10.

Point taken: please try with the latest update in Beta : the Gamma is now a [-1 +1] slider with true logarithmic scaling of the internal value.

I tried the new replace function. That then the +(ins) menu opens is very irritating at first. After selecting and confirming the file to replace, the name shortcut does not change and the source menu remains collapsed. I think the filename shortcut should change automatically afterwards and the source menu should be expanded visible than with the new file and the old values as before. If this does not work or is too cumbersome to program, I think it is better to leave it as before because otherwise it causes more confusion.

flowerhorse commented 1 year ago

How vimix is thought is to rely on the OS file management and to do 'Drag & Drop' of files into the workspace.

Ah, now I see the approach. I have reduced the size of the work screen to the right and now have the OS file manager in parallel on the work screen in a small bar on the right. I have also linked the .mix files in the OS file manager with vimix. Both could be automated via vimix. Similar to video editing programs that offer different working screen arrangements, but which you can still change. Then it would be visually clear that the OS file manager is the main tool for file selection.

I'm still not sure about open File from the +(ins) menu, because there an internal file manager is offered for file selection. I don't find that stringent, but I don't know any other suggestion in this context. Or maybe: With a default layout of the work screen, similar as seen below, one could get the hint: 'drag files from filemanger' when clicking on 'open file'. Then this would be clear and the program-internal file manager could be omitted. Would that be something?

Screenshot_20230318_104836

Point taken: please try with the latest update in Beta : the Gamma is now a [-1 +1] slider with true logarithmic scaling of the internal value.

Now the gamma slider runs logarithmically correct and can be adjusted finer. The range [-1 +1] would be good for final output correction in connection with whithe balance because you usually only need slight adjustments. For live performance it would be better to have a range that is completely black on the left side and completely white on the other, so that you can also use gamma as an additional option for blending without leaving any image residue, I think.

+(ins) menu opens is very irritating at first : it is mandatory to show that the 'replacement' process is ongoing

That was the first time so. you get used to it. :)

the name shortcut does not change : isn't it the goal: replace the inside without changing the container ?

I find it more difficult to remember a new state under an old name. That's why I think updating the name abbreviations makes sense.

I needed to recover from the exhibition setup and had therefore paused for the time being. Is there already a new beta?

Best regards

flowerhorse commented 1 year ago

I had written before that I cannot open Prores files in vimix. After research I have now installed appropriate drivers.

Vainfo shows me the following:

Trying display: wayland Trying display: x11 libva info: VA-API version 1.17.0 libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/iHD_drv_video.so libva info: Found init function __vaDriverInit_1_14 libva info: va_openDriver() returns 0 vainfo: VA-API version: 1.17 (libva 2.17.0) vainfo: Driver version: Intel iHD driver for Intel(R) Gen Graphics - 22.3.1 () vainfo: Supported profile and entrypoints VAProfileMPEG2Simple : VAEntrypointVLD VAProfileMPEG2Main : VAEntrypointVLD VAProfileH264Main : VAEntrypointVLD VAProfileH264Main : VAEntrypointEncSliceLP VAProfileH264High : VAEntrypointVLD VAProfileH264High : VAEntrypointEncSliceLP VAProfileJPEGBaseline : VAEntrypointVLD VAProfileJPEGBaseline : VAEntrypointEncPicture VAProfileH264ConstrainedBaseline: VAEntrypointVLD VAProfileH264ConstrainedBaseline: VAEntrypointEncSliceLP VAProfileVP8Version0_3 : VAEntrypointVLD VAProfileHEVCMain : VAEntrypointVLD

And gst-inspect-1.0 vaapi also finds the plugin:

Plugin Details: Name vaapi Description VA-API based elements Filename /usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvaapi.so Version 1.20.1 License LGPL Source module gstreamer-vaapi Source release date 2022-03-14 Binary package gstreamer-vaapi Origin URL https://gitlab.freedesktop.org/gstreamer/gstreamer-vaapi/issues

vaapidecodebin: VA-API Decode Bin vaapih264dec: VA-API H264 decoder vaapih264enc: VA-API H264 encoder vaapih265dec: VA-API H265 decoder vaapijpegdec: VA-API JPEG decoder vaapijpegenc: VA-API JPEG encoder vaapimpeg2dec: VA-API MPEG2 decoder vaapipostproc: VA-API video postprocessing vaapisink: VA-API sink vaapivp8dec: VA-API VP8 decoder

Actually it should run now, right? Did I perhaps forget something else?

brunoherbelin commented 1 year ago

You indeed need to ensure gstreamer can decode Apple Prores codec. The VA-API hardware decoding support has nothing to do with it.

On my machine, the Prores codecs are decoded with libav. You can check with the command gst-inspect-1.0 avdec_prores

~$ gst-inspect-1.0 avdec_prores
Factory Details:
  Rank                     marginal (64)
  Long-name                libav Apple ProRes (iCodec Pro) decoder
  Klass                    Codec/Decoder/Video

The Ubuntu package to install should be gstreamer1.0-libav

flowerhorse commented 1 year ago

Very strange. gst-inspect-1.0 gives the same values as you've shown above but the error goes on: 222895954-3b7b394a-2f47-4c3b-a9b5-df1f1bd6bdef

brunoherbelin commented 1 year ago

I am guessing here that you are compiling the custom Flatpak of vimix (i.e. these instructions). In this case indeed, flatpak does not support libav_prores. This is probably for legal reasons of the non-free license of this Apple codec. There is no possibility for vimix to go beyond the policy of Flatpak and Flathub.

However, compiling vimix truly from source (not a package, directly from source ) allows using the librarires installed in your system (i.e. that gst-inspect-1.0 found).

Sorry for the confusion: the packaging with Flatpak makes things easier to distribute but harder to support...

flowerhorse commented 1 year ago

With the compiled source version it worked. Now Prores is running. But unfortunately the white balance from the beta version is not yet in it. When will the version with white balance be available? Are you still interested in me testing the program further or do we want to take a break for now?

brunoherbelin commented 1 year ago

Hey !

To compile with the latest changes, you need to switch to the Beta branch

 git checkout beta

(the master default branch has the stable release) Please note that I am going to release 0.8.0 from the current Beta version very soon.

And yes, let's keep testing and exchanging on design issues. I worked on issues from others for a while and made bugfix before releasing, but for next version we can work on more changes. Maybe we use the discussion channel ? https://github.com/brunoherbelin/vimix/discussions

flowerhorse commented 1 year ago

Thanks for version 080, which I compiled with all dependencies incl. Shmdata. At the beginning I had difficulties with the One Screen operation with many output screens, which overlapped. My system now runs on two screens. The output goes through one monitor/recorder, which simplifies screen recording for me and also allows me to keep track of the dynamic range of the output via Waveform. The graphics card is standard Intel HD530. With a few tricks I was able to coax the computer into 4k output. The fan is blowing like crazy, but even with several programs running at the same time, everything is running stable without failures. 4k Prores is processed just as smoothly as mp4 before. Here are my first comments:

Note 1 I am in some experiments with the loopback overlay. The main problem here is that the output loses contrast and dynamic range very easily and therefore needs to be readjusted. If the image becomes too flat I adjust the contrast in the source, which makes the output darker. Then I adjust the brightness to achieve the maximum dynamic range. Over the thumb the ratio is 1x Contrast / 0.5x Brightness. I would prefer to have the option to use both sliders together, to have a kind of lock, so that the brightness is automatically readjusted when the contrast changes. Presumably this would also be very useful for the planned final output correction.

Note 2 The color picker does not work for me. I had already described for the previous version that it was only activated for me when I manually let the output image on Screen2 overlap slightly on Screen1. Now this method doesn't help anymore. The mouse pointer changes to a '+' when overlapping from screen2, but the recorded color value is always #000000. Sometimes I got the error message that I have to close the other picker first, which was not available.

Maybe we use the discussion channel ?

Unfortunately, my technical english is not so good that I can do without a translator. In a live conversation I would probably need too much time to find the right words and I don't have the equipment yet..

Best regards

brunoherbelin commented 1 year ago

Hey! Glad that the new release works ! Its always a bit of a rush to cleanup all loose-ends.. Good that you managed to have ProRes decoded in CPU: with an intel GPU it wouldn't have it accelerated anyways.

Note 1 - lock contrast & brightness

hum... interesting... Could be done for other sliders too. But how would you imagine the user action to define this link? CTRL+CLIC on sliders? Not sure also how I would display this visually... Let's keep digging into this idea!

BTW, I kept under the shoulder your suggestion to have the file explorer ('Finder') open and the windows layout automatically restored.

Note 2 - Color picker bug

I don't have the problem and cannot replicate. Could very much be due to the GPU limitation, or a desktop setting? Are us under Gnome & Gtk desktop environment? Ubuntu?
Could you please report a separate bug report for this issue?

Discussion channel

Sorry, I was not clear: In GitHub, there is this 'Discussion' channel separate from the 'issues' : https://github.com/brunoherbelin/vimix/discussions

This would be adapted to the discussion we have here on design questions. If you'd like, you could start a discussion instead of continuing this thread here. The 'issues' threads are designed more for reporting a bug and closing it once the issue is fixed.. But again, I am not pedantic on these differences and welcome all input in any format :)

brunoherbelin commented 11 months ago

FYI: a beta implementation of Audio support is now available in Beta branch abdc70121d857f57f98d98d026adb9be4a69dcfd