I have a simple blueprint that plays video with audio on a TV-Like mesh using media framework / media player. I cannot get the audio to attenuate with distance. I need several of these TV’s at different stations in my level, and I want audio to attenuate so the player ( VR/Vive) can listen/watch at each station without audio from an another station interfering.
I setup the audio source to spatialize and override attenuation - see snip below. I can see the attenuation spheres in the editor - see below. The audio just plays full volume regardless of where the player (VR Pawn) is at.
I tried every permutation of settings I could think of, but it won’t work. I just get audio at full volume everywhere. Curiously, I also get distorted audio when I turn Spatialization off.
I just tested this on my end in a test blueprint I have setup and it worked fin on my end. How are you controlling the audio to playback when used in conjunction with the media framework?
I think what would be easiest here would be to provide me with a minimal test project containing your scripting logic so I can take a quick look and see what could be going on in your project.
Thank you for responding to my question. I took your suggestion, and migrated my TV blueprint and supporting content to a simplified project. Having less to deal with allowed me to narrow the scope, and find my problems easier. I was finally able to get it running with a bit of work. Basically my media player gets launched by a button press event. I start the media playing with a “key pressed” event bound in the TV blueprint. This event starts a media player playing a media assett. Each TV has its own media player instance, video texture, media, and media audio component.
My problems were several.
First, I added an audio component to my TV blueprint, and set it to reference an existing audio component in the blueprint. This does not seem to work with spatialization and attenuation for some unknown reason. It plays the audio of the AV track fine, but won’t spatialize / attenuate no matter what I try. I removed it from the TV blueprint and just added it as a child to the TV screen blueprint object. I don’t like it because it packages less nicely, but it works.
Second problem, several of my media player uasset’s that I migrated were corrupted somehow - this caused the distorted audio, and other problems with playback. I recreated the three media players, and the now worked fine.
Third problem. The audio stream stops when attenuation goes to zero, and stereo audio is apparently unsupported. The video just plays on, as it should, but audio stops and can’t be restarted once it attenuates to zero. I could fix this by never letting volume go to zero, but in my opinion, this is a buggy behavior. It should either be fixed, or clearly and concisely documented it as a feature. I hate this kind of ■■■■, it just wastes everyone’s time.
I really wanted to maintain stereo playback of my media, spatialization is less important to me right now, so I just wrote my own attenuator in my TV blueprint using an Adjust Volume node and the calculated (x,y) distance from the player camera to the audio source (off event tick). I know that folks here are more focused on mono sound cues and such for video games, and that makes sense, but stereo media has its place too. I would suggest including the ability to easily break stereo audio into two ambient sounds (in a blueprint - easily right?). Then both speakers could be spatialized and attenuated. Finally give folks a tickable option to quit stopping the g******n audio when its out of focus - it needs to stay in sync with the video track for media players to work meaningfully.