Reinstate record from line in from Airtime 2.5.x
A lot of the code seems to still exist, including recorder.py and some of the PHP functions.
I think 2.5.x:airtime_mvc/application/views/scripts/schedule/add-show-form.phtml#L32-L37 is all that's missing.
Yup I found that bit of code for entering shows to be recorded, but I don't think the ShowRecorder function in recorder.py is being called. At least no ecasound process starts!
Ok, i removed "Fixes" annotation from the comment on #43. If this should close when we merge that, please reopen it if we haven't found the issue.
Do you know at what version the recorder last worked? It seems to still get started in pypo.
I'm at the point where it calls ecasound on my vagrant box and then fails miserably. Most likely it is some issue with file permissions or a missing folder somewhere. Also, after adding a new recording i t takes up to an hour for the recorder to pick up on it so keep that in mind if you want to test this.
I had to switch to record_file_type = 'mp3' in /etc/airtime/airtime.conf since my setup was lacking the vorbize command and my dev instance is currently recording a show through lame.
I also had to fix something in api_clietnts (PR coming) and then I got this fun part of the code. I'll have to look into that a bit.
A quick update on this... After biting my teeth out on how to get the recording from ecasound uploaded to the API for inclusion in the library through analyzer (without loosing all the metadata concerning that it's a pre-recording).
We should probably rewrite the code so that the file entry in the db gets pre-populated so we can pass its id to pypo-recorder when requesting the recording. pypo-recorder would then be able to just PUT an update to the file resource, that already contains the needed metadata. pypo-recorder would need to add proper id3 tags as well (I need to re-check if it does anything smart yet).
On the MVC side of things the models need to be adapted to store these file resources in a fashion similar to how podcast episodes and watched files are handled. It also makes sense to clean up the ui integration points a bit and keep the recordings nicely split from the main library in a fashion similar to other things like podcasts and streams.
Sorry about the braindump but I just realized that I need somewhere to put this. I'm currently focussing on a largish js refactor but I hope I'll find some time to look into this.
This issue has been automatically marked as stale because it has not had activity in the last 5 months. It will be closed if no activity occurs in the next month. Please chat to us on discourse or ask for help on our chat if you have any questions or need further support with getting this issue resolved. You may also label an issue as pinned if you would like to make sure that it does not get closed by this bot.
I managed to get the recording part working consistently from a stream using a slightly modified version of @JohnnyC1951's script
The audio files get loaded into the library and appear to be good. Although they aren't attached to the show or future scheduled shows it will still be a very useful feature (I.e to record a scheduled show, but without the rebroadcast function).
Attempting to record from line-in is always going to be a challenge (or impossible) with cloud-based, or docker based instances. I suggest re-enabling the record function from Stream 1 (or the master or show source instead). The rebroadcasting functionality could be turned on later once we've figured out how to handle it...
POC code is here: https://github.com/GroundTruthNZ/libretime/commit/a15ef48f3dcb87474068bdb6c1e2f327b85b4019
The source in line 93 in the recorder.py script is hard coded here but could presumably be dynamic .
This issue has been automatically marked as stale because it has not had activity in the last 5 months. It will be closed if no activity occurs in the next month. Please chat to us on the forum or ask for help on our chat if you have any questions or need further support with getting this issue resolved. You may also label an issue as pinned if you would like to make sure that it does not get closed by this bot.