Skip to content

Commit

Permalink
Fix AudioRenderProvider.kt (#800)
Browse files Browse the repository at this point in the history
* Fix AudioRenderProvider.kt to point to the correct packages
  • Loading branch information
Redirion authored Nov 24, 2023
1 parent 27fb145 commit dc32cd6
Showing 1 changed file with 12 additions and 7 deletions.
Original file line number Diff line number Diff line change
@@ -1,8 +1,10 @@
package com.devbrackets.android.exomedia.core.renderer.provider

import android.content.Context
import java.lang.reflect.Array
import android.os.Handler
import androidx.annotation.OptIn
import androidx.media3.common.audio.AudioProcessor
import androidx.media3.common.util.UnstableApi
import androidx.media3.exoplayer.Renderer
import androidx.media3.exoplayer.audio.AudioCapabilities
Expand All @@ -19,9 +21,9 @@ open class AudioRenderProvider : RenderProvider {

override fun rendererClasses(): List<String> {
return listOf(
"androidx.media3.exoplayer.ext.opus.LibopusAudioRenderer",
"androidx.media3.exoplayer.ext.flac.LibflacAudioRenderer",
"androidx.media3.exoplayer.ext.ffmpeg.FfmpegAudioRenderer",
"androidx.media3.decoder.opus.LibopusAudioRenderer",
"androidx.media3.decoder.flac.LibflacAudioRenderer",
"androidx.media3.decoder.ffmpeg.FfmpegAudioRenderer",
)
}

Expand Down Expand Up @@ -57,11 +59,14 @@ open class AudioRenderProvider : RenderProvider {
): Renderer {
val rendererClass = Class.forName(className)

val audioProcessorVarArg = Array.newInstance(AudioProcessor::class.java, 0)

val constructor = rendererClass.getConstructor(
Long::class.javaPrimitiveType,
AudioRendererEventListener::class.java
Handler::class.java,
AudioRendererEventListener::class.java,
audioProcessorVarArg::class.java
)

return constructor.newInstance(handler, listener) as Renderer
return constructor.newInstance(handler, listener, audioProcessorVarArg) as Renderer
}
}
}

0 comments on commit dc32cd6

Please sign in to comment.