More > JRiver Media Center 27 for Linux
Is there an analogous MC WMD sound redirect feature from other apps ?
mwillems:
--- Quote from: ths61 on January 21, 2021, 08:22:59 pm ---I understand what WMD means, but Unix/Linux is famous for its pipes, tees and redirections of I/O streams. One would think it would fit right at home in Linux. =)
--- End quote ---
Yeah you'd think it would be possible. Like, it's trivial to create a dummy ALSA device on Linux that can be set as the system default and will redirect all system audio to a pipe (all it takes is editing two config files). I got my system set up to do that for a while, and I could have all my Linux software system-wide (including MC if I wanted) output to the pipe and even redirect that pipe to a file to record local playback, but I just found no good way to get MC to take a pipe as input in real-time. Given that MC can open and play remote audio streams like web radio, you'd think reading info from a local pipe would be theoretically possible (and may have fewer complicating factors).
I briefly toyed with writing script to redirect my dummy alsa device pipe to a series of files(i.e. changing to a new file after some short interval) and then use MCWS to programmatically add the completed chunk files to the now playing list in real-time to get a slightly delayed WDM-like experience, but I never managed to get sub-second chunking/adding to work well at all, and the whole thing was pretty wonky. It would have been totally unusable for video or games, so I never got very far down the line.
I suspect that it may be possible one day!
ths61:
--- Quote from: mwillems on January 22, 2021, 05:29:40 pm ---...
I briefly toyed with writing script to redirect my dummy alsa device pipe to a series of files(i.e. changing to a new file after some short interval) and then use MCWS to programmatically add the completed chunk files to the now playing list in real-time to get a slightly delayed WDM-like experience, but I never managed to get sub-second chunking/adding to work well at all, and the whole thing was pretty wonky. It would have been totally unusable for video or games, so I never got very far down the line.
I suspect that it may be possible one day!
--- End quote ---
Have you seen these ?
Using modprobe to add snd-aloop to the kernel to create an ALSA loopback, then recording the ALSA stream from the loopback using ffmpeg ? It might give some ideas.
https://unix.stackexchange.com/questions/310164/create-virtual-device-in-asoundrc-file
https://unix.stackexchange.com/questions/263813/how-do-i-create-virtual-alsa-device-from-which-i-can-record-everything-that-is-p
https://www.alsa-project.org/alsa-doc/alsa-lib/pcm_plugins.html
bob:
--- Quote from: mwillems on January 22, 2021, 05:29:40 pm ---Yeah you'd think it would be possible. Like, it's trivial to create a dummy ALSA device on Linux that can be set as the system default and will redirect all system audio to a pipe (all it takes is editing two config files). I got my system set up to do that for a while, and I could have all my Linux software system-wide (including MC if I wanted) output to the pipe and even redirect that pipe to a file to record local playback, but I just found no good way to get MC to take a pipe as input in real-time. Given that MC can open and play remote audio streams like web radio, you'd think reading info from a local pipe would be theoretically possible (and may have fewer complicating factors).
I briefly toyed with writing script to redirect my dummy alsa device pipe to a series of files(i.e. changing to a new file after some short interval) and then use MCWS to programmatically add the completed chunk files to the now playing list in real-time to get a slightly delayed WDM-like experience, but I never managed to get sub-second chunking/adding to work well at all, and the whole thing was pretty wonky. It would have been totally unusable for video or games, so I never got very far down the line.
I suspect that it may be possible one day!
--- End quote ---
I've though about this occasionally and thought it seems like something that should be doable. I'm just not sure how in MC to handle the input.
If you use file->open on the pipe does that work?
Where should it feed into MC?
mattkhan:
--- Quote from: bob on January 29, 2021, 09:59:32 am ---I've though about this occasionally and thought it seems like something that should be doable. I'm just not sure how in MC to handle the input.
If you use file->open on the pipe does that work?
Where should it feed into MC?
--- End quote ---
why can't you just use some alsa input directly? isn't it going to be logically the same as asio line in?
mwillems:
--- Quote from: bob on January 29, 2021, 09:59:32 am ---I've though about this occasionally and thought it seems like something that should be doable. I'm just not sure how in MC to handle the input.
If you use file->open on the pipe does that work?
Where should it feed into MC?
--- End quote ---
Opening the pipe as a file did not work last time I tried it. I think MC expects the file input to be a fixed size which obviously doesn't work with the pipe.
I agree that listening to ALSA input directly (like the "open live" option on Windows) seems like a cleaner solution than piping it in. Depending on how its implemented it might not even require any user configuration at the OS level (audacity, for example, seems to be able to loopback/monitor arbitrary ALSA sinks with no changes to my system configs).
Navigation
[0] Message Index
[#] Next page
[*] Previous page
Go to full version