From 03a28791d93855da6b0f054a28b62b6ee2c99813 Mon Sep 17 00:00:00 2001 From: tateisu Date: Sat, 9 Sep 2023 22:22:28 +0900 Subject: [PATCH] =?UTF-8?q?=E3=82=B3=E3=83=BC=E3=83=89=E6=95=B4=E5=BD=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../columnviewholder/ColumnViewHolder.kt | 5 +++-- .../ColumnViewHolderLoading.kt | 2 -- .../java/jp/juggler/util/data/StorageUtils.kt | 2 +- .../java/jp/juggler/util/media/MovieUtils.kt | 20 +++++++++---------- 4 files changed, 14 insertions(+), 15 deletions(-) diff --git a/app/src/main/java/jp/juggler/subwaytooter/columnviewholder/ColumnViewHolder.kt b/app/src/main/java/jp/juggler/subwaytooter/columnviewholder/ColumnViewHolder.kt index 6499b17f..e91b9bf4 100644 --- a/app/src/main/java/jp/juggler/subwaytooter/columnviewholder/ColumnViewHolder.kt +++ b/app/src/main/java/jp/juggler/subwaytooter/columnviewholder/ColumnViewHolder.kt @@ -329,12 +329,13 @@ class ColumnViewHolder( ) when (streamStatus) { - StreamStatus.Missing, StreamStatus.Closed ,StreamStatus.ClosedNoRetry -> { - } + StreamStatus.Missing, StreamStatus.Closed, StreamStatus.ClosedNoRetry -> Unit + StreamStatus.Connecting, StreamStatus.Open -> { sb.appendColorShadeIcon(activity, R.drawable.ic_pulse, "Streaming") sb.append("?") } + StreamStatus.Subscribed -> { sb.appendColorShadeIcon(activity, R.drawable.ic_pulse, "Streaming") } diff --git a/app/src/main/java/jp/juggler/subwaytooter/columnviewholder/ColumnViewHolderLoading.kt b/app/src/main/java/jp/juggler/subwaytooter/columnviewholder/ColumnViewHolderLoading.kt index 8d69b5c5..0131cca7 100644 --- a/app/src/main/java/jp/juggler/subwaytooter/columnviewholder/ColumnViewHolderLoading.kt +++ b/app/src/main/java/jp/juggler/subwaytooter/columnviewholder/ColumnViewHolderLoading.kt @@ -47,8 +47,6 @@ private class ErrorFlickListener( velocityX: Float, velocityY: Float, ): Boolean { - - val vx = abs(velocityX) val vy = abs(velocityY) if (vy < vx * 1.5f) { diff --git a/base/src/main/java/jp/juggler/util/data/StorageUtils.kt b/base/src/main/java/jp/juggler/util/data/StorageUtils.kt index 49b26579..355558f6 100644 --- a/base/src/main/java/jp/juggler/util/data/StorageUtils.kt +++ b/base/src/main/java/jp/juggler/util/data/StorageUtils.kt @@ -298,7 +298,7 @@ fun Intent.handleGetContentResult(contentResolver: ContentResolver): ArrayList - (0 until clipData.itemCount).mapNotNull { clipData.getItemAt(it)?.uri }.forEach { uri -> + for (uri in (0 until clipData.itemCount).mapNotNull { clipData.getItemAt(it)?.uri }) { if (urlList.none { it.uri == uri }) { urlList.add(GetContentResultEntry(uri)) } diff --git a/base/src/main/java/jp/juggler/util/media/MovieUtils.kt b/base/src/main/java/jp/juggler/util/media/MovieUtils.kt index e367e4cf..a25502a9 100644 --- a/base/src/main/java/jp/juggler/util/media/MovieUtils.kt +++ b/base/src/main/java/jp/juggler/util/media/MovieUtils.kt @@ -22,7 +22,6 @@ import com.otaliastudios.transcoder.strategy.DefaultAudioStrategy import com.otaliastudios.transcoder.strategy.DefaultVideoStrategy import jp.juggler.util.coroutine.AppDispatchers import jp.juggler.util.data.clip -import jp.juggler.util.data.notZero import jp.juggler.util.log.LogCategory import kotlinx.coroutines.* import kotlinx.coroutines.channels.Channel @@ -84,14 +83,14 @@ data class MovieResizeConfig( MovideResizeMode.Auto -> info.squarePixels > limitSquarePixels || (info.actualBps ?: 0).toFloat() > limitBitrate.toFloat() * 1.5f || - (info.frameRatio==null || info.frameRatio<1f || info.frameRatio > limitFrameRate) + (info.frameRatio == null || info.frameRatio < 1f || info.frameRatio > limitFrameRate) } } /** * レシーバが奇数なら+1した値を返す * - * `[OMX.qcom.video.encoder.avc] video encoder does not support odd resolution 1018x2263` + * `OMX.qcom.video.encoder.avc video encoder does not support odd resolution 1018x2263` */ private fun Int.fixOdd() = if (and(1) == 0) this else this + 1 @@ -144,7 +143,7 @@ suspend fun transcodeVideoMedia3Transformer( val editedMediaItem = EditedMediaItem.Builder(srcMediaItem).apply { // 入力のフレームレートが高すぎるなら制限する - if (info.frameRatio==null || info.frameRatio<1f || + if (info.frameRatio == null || info.frameRatio < 1f || info.frameRatio > resizeConfig.limitFrameRate ) { // This should be set for inputs that don't have an implicit frame rate (e.g. images). @@ -158,10 +157,10 @@ suspend fun transcodeVideoMedia3Transformer( ) { // 端数やodd補正などによる問題が出なさそうなscale値を計算する fun calcScale( - srcLongerSide:Int, - aspect:Float, - limitSqPixel:Int, - ):Float { + srcLongerSide: Int, + aspect: Float, + limitSqPixel: Int, + ): Float { var sqPixel = limitSqPixel while (true) { val newW = ceil(sqrt(sqPixel * aspect)).toInt().fixOdd() @@ -172,10 +171,11 @@ suspend fun transcodeVideoMedia3Transformer( sqPixel -= srcLongerSide } } + val scale = calcScale( srcLongerSide = max(info.size.w, info.size.h), - aspect = info.size.w.toFloat() / info.size.h.toFloat(), - limitSqPixel = resizeConfig.limitSquarePixels + aspect = info.size.w.toFloat() / info.size.h.toFloat(), + limitSqPixel = resizeConfig.limitSquarePixels ) val effects = Effects( /* audioProcessors */ emptyList(),