jamulussoftware / jamulus

Jamulus enables musicians to perform real-time jam sessions over the internet.
https://jamulus.io
Other
997 stars 222 forks source link

Make server aware of available storage capacity for recording #818

Closed ve3meo closed 3 years ago

ve3meo commented 3 years ago

When the available space for recording audio files at the server is reached, Jamulus server ploughs on ahead with the Reaper and Audacity project files and attempts to create new files for newly connected clients. The results are truncated files for clients online at the time storage ran out and empty files for subsequent connections. The project files are filled with half-truths.

Audacity attempts to load all the files listed but reports errors.

Reaper gets the start times and durations of every connection, loads all the files without reporting errors but loops the available audio for a track that spans the truncation until its connection duration is filled. After the truncation point, the mix can be quite hilarious when there are multiple clients.

I would suggest an enhancement that monitors available space, stops recording when it reaches zero or some non-zero threshold, and closes the project files. I guess the corollary is that Jamulus server should not auto-start recording when there is no space available. And the recording warning banner on the client should now warn that automatic recording is suspended for lack of space (or better words to that effect). And maybe the banner could report the remaining capacity when it is above the threshold.

pljones commented 3 years ago

Is there Qt support for space available on a given path?

Zaidcrowe commented 3 years ago

I have a contribution coming to the Jamulus remote ( https://github.com/vdellamea/jamulus-server-remote) that shows available disk space.

We're essentially going to be donating the Melomax recorders front end to the project, with a few bells and whistles, here's a very quick/out of date demo, the slim green bar with the % is the disk space 'telemetry'.

https://fb.watch/2UqG_XbWt3/

This might help if adding the facility to Jamulus itself is for any reason arduous.

On Fri, Jan 8, 2021 at 7:02 PM Peter L Jones notifications@github.com wrote:

Is there Qt support for space available on a given path?

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/corrados/jamulus/issues/818#issuecomment-756939201, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAXXXG25CDFHH7AEZVB3Q53SY5JDXANCNFSM4VZTC27Q .

ve3meo commented 3 years ago

Nice features!

Rather than or maybe in addition to the space bar, I think the available storage capacity should be expressed in track-hours. Should be a simple enough calculation given the frees space and the consumption rate of 0.33GB/hr mono and double that for stereo. Or maybe it could be remaining time available given the current number of mono and stereo clients. That would eliminate a lot of mental arithmetic. That carol sing of 70 clients would have very little recording time left compared to a quartet, given the same available capacity.

Zaidcrowe commented 3 years ago

Vincenzo - the owner of the linked project actually just released a very basic update that meets some of your needs :)

You may wish to take this discussion over at his repo, I’m sure he’s be receptive to your suggestions :)

On Fri, 8 Jan 2021 at 19:53, ve3meo notifications@github.com wrote:

Nice features!

Rather than or maybe in addition to the space bar, I think the available storage capacity should be expressed in track-hours. Should be a simple enough calculation given the frees space and the consumption rate of 0.33GB/hr mono and double that for stereo. Or maybe it could be remaining time available given the current number of mono and stereo clients. That would eliminate a lot of mental arithmetic. That carol sing of 70 clients would have very little recording time left compared to a quartet, given the same available capacity.

— You are receiving this because you commented.

Reply to this email directly, view it on GitHub https://github.com/corrados/jamulus/issues/818#issuecomment-756961884, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAXXXG5WZNEFB7VGAGFDDOTSY5PDTANCNFSM4VZTC27Q .

gilgongo commented 3 years ago

Closing this as it's probably the same as https://github.com/jamulussoftware/jamulus/issues/1163