Browse Source

feat: 增加静音接口

hexleo 4 years ago
parent
commit
cf7b3f5821

+ 5 - 2
Android/PlayerProj/animplayer/src/main/java/com/tencent/qgame/animplayer/AnimPlayer.kt

@@ -51,6 +51,7 @@ class AnimPlayer(val animView: IAnimView) {
     var isSurfaceAvailable = false
     var isSurfaceAvailable = false
     var startRunnable: Runnable? = null
     var startRunnable: Runnable? = null
     var isStartRunning = false // 启动时运行状态
     var isStartRunning = false // 启动时运行状态
+    var isMute = false // 是否静音
 
 
     val configManager = AnimConfigManager(this)
     val configManager = AnimConfigManager(this)
     val pluginManager = AnimPluginManager(this)
     val pluginManager = AnimPluginManager(this)
@@ -106,11 +107,13 @@ class AnimPlayer(val animView: IAnimView) {
             if (isSurfaceAvailable) {
             if (isSurfaceAvailable) {
                 isStartRunning = false
                 isStartRunning = false
                 decoder?.start(fileContainer)
                 decoder?.start(fileContainer)
-                audioPlayer?.start(fileContainer)
+                if (!isMute) {
+                    audioPlayer?.start(fileContainer)
+                }
             } else {
             } else {
                  startRunnable = Runnable {
                  startRunnable = Runnable {
                     innerStartPlay(fileContainer)
                     innerStartPlay(fileContainer)
-                }
+                 }
                 animView.prepareTextureView()
                 animView.prepareTextureView()
             }
             }
         }
         }

+ 9 - 1
Android/PlayerProj/animplayer/src/main/java/com/tencent/qgame/animplayer/AnimView.kt

@@ -242,6 +242,14 @@ open class AnimView @JvmOverloads constructor(context: Context, attrs: Attribute
         scaleTypeUtil.scaleTypeImpl = scaleType
         scaleTypeUtil.scaleTypeImpl = scaleType
     }
     }
 
 
+    /**
+     * @param isMute true 静音
+     */
+    override fun setMute(isMute: Boolean) {
+        ALog.e(TAG, "set mute=$isMute")
+        player.isMute = isMute
+    }
+
     override fun startPlay(file: File) {
     override fun startPlay(file: File) {
         try {
         try {
             val fileContainer = FileContainer(file)
             val fileContainer = FileContainer(file)
@@ -273,7 +281,7 @@ open class AnimView @JvmOverloads constructor(context: Context, attrs: Attribute
                 lastFile = fileContainer
                 lastFile = fileContainer
                 player.startPlay(fileContainer)
                 player.startPlay(fileContainer)
             } else {
             } else {
-                ALog.i(TAG, "is running can not start")
+                ALog.e(TAG, "is running can not start")
             }
             }
         }
         }
     }
     }

+ 2 - 0
Android/PlayerProj/animplayer/src/main/java/com/tencent/qgame/animplayer/IAnimView.kt

@@ -50,6 +50,8 @@ interface IAnimView {
 
 
     fun setScaleType(scaleType: IScaleType)
     fun setScaleType(scaleType: IScaleType)
 
 
+    fun setMute(isMute: Boolean)
+
     fun startPlay(file: File)
     fun startPlay(file: File)
 
 
     fun startPlay(assetManager: AssetManager, assetsPath: String)
     fun startPlay(assetManager: AssetManager, assetsPath: String)