Android get audio output - java

Is it possible to get the raw audio being played by the other apps? My idea is to create a visualizer like you find in iTunes or windows media player that will work with any app. I've looked around but haven't seen anything that would work. If anyone could point me in the right direction, I would really appreciated it.

You might access the buffers via JNi and C++..

Related

Sceneform: Render WebRTC media stream in to ExternalTexture

I am trying to develop an AR app to help visual impaired people to make better their access conditions to a computer.
I am investigating on how AR can help HCI for visual disabilities, so, the application is using WebRTC to get computer Desktop to be magnified at AR environment using Sceneform.
I have successfully used the Sceneform example https://github.com/google-ar/sceneform-android-sdk/tree/master/samples/chromakeyvideo, but, I have no idea of how to render the WebRTC stream directly to a ExternalTexture. -> https://github.com/judicapo/MUITSS-ARBE/tree/master/SampleApps/ARCK
I already tried some Stackoverflow answers, but, have not found the clue.
Thank you all for your replies, hope some one has any idea.
Honestly I have not worked with this. but I could think of a way on how to approach this.
Instead of chromaKey rendering on a texture, why don't you try a 'ViewRenderable'? using this, you can place any android View to a node. You just need to place a VideoView and do your webRTC magic. let me know if this works
https://developers.google.com/ar/reference/java/sceneform/reference/com/google/ar/sceneform/rendering/ViewRenderable
https://developers.google.com/ar/develop/java/sceneform/create-renderables
AugmentedImage example - https://proandroiddev.com/arcore-sceneform-simple-video-playback-3fe2f909bfbc
ViewRenderable example - https://github.com/Hariofspades/ARExperiments/blob/master/AugmentedImages/app/src/main/java/com/hariofspades/augmentedimages/common/AugmentedImageNode.java

How to separate audio from video without converting into a file?

googled and found some libraries like xuggle, vlcj and how to convert video to audio. But I want to stream audio without making it as a separate audio file using java. Please help.
It might be possible to use vlcj for it even though it feels like a strange way to go since it's a library created for video playback.. but if you just don't set a video surface then it might play only the audio.. not sure if it's possible through the embeddedmediaplayercomponent but it should be possible if using the DirectMediaPlayerComponent.

Intercept Blackberry Calls

How can i intercept blackberry calls audio and amplify the audio before the audio is sent out?
My blackberry z30 running on the latest bb10 OS has had an issue of low voice calls. Everyone complains that they cant hear me when on call. However, when am recording audio say on whatsapp calls or video recording, the audio is crystal clear, meaning somehow blackberry suppresses my call audio only.
I dont want to throw away the phone without putting up a good fight, programmatically. I would like to try to "intercept" the audio on calls, amplify the sound then send out the voice, much louder. Any possibility of achieving this? I am good in Java and c++ programming. Solutions using these languages will be highly appreciated.
Found a solution. Got source code of one of those fancy voice changer apps. Instead of changing voice, i amplify the sound. I am yet to hear anyone complain, second day now.

How to play changing midi on Android - jetPlayer

I have been breaking my head over this.
I have a ndk c++ app that continuously generates note info in a vector.
Now I need to either write this as midi files (from ndk or sdk) that can be played back without delay.
It seems I should use JetPlayer. But this is not documented properly, I cannot make heads or tails from it.
How do I get the .jet file? And where exactly is my midi info? I looked at the jetBoy example, but I don't really understand it. Thanks for any help.
As far as I know JetPlayer can't generate midi.
So I used MediaPlayer instead and generated the midi with android-midi-lib.

Sequenced video playback (cutlists) in Java.. can it be done?

If I have a bunch of video files, all in precisely the same format, shape, whatever, then can I play them back seamlessly without jumps or gaps? The effect from the end user's point of view would be as though they are watching one video.
I understand that this is possible in DirectX, but I'd rather use Java if possible.
If you want to play media in Java, the Sun standard is JMF (http://java.sun.com/javase/technologies/desktop/media/jmf/) which unfortunately has been dormant for quite a while.
The FMJ project (http://fmj-sf.net/) is API-compatible and under active development.
I cannot answer your question better, but hopefully this can get you further.

Categories