From 120ecae3c0d62d17bd05780b0e775e3d041e4586 Mon Sep 17 00:00:00 2001 From: Christian Schabesberger Date: Tue, 17 Sep 2024 16:05:41 +0200 Subject: [PATCH] make yt test video work --- .../newpipe/newplayer/testapp/MainActivity.kt | 9 +++ .../newplayer/testapp/TestMediaRepository.kt | 55 ++++++++++++++++++- .../main/res/layout-land/activity_main.xml | 15 +++++ .../src/main/res/layout/activity_main.xml | 27 +++++++-- 4 files changed, 98 insertions(+), 8 deletions(-) diff --git a/test-app/src/main/java/net/newpipe/newplayer/testapp/MainActivity.kt b/test-app/src/main/java/net/newpipe/newplayer/testapp/MainActivity.kt index 51145d2..f5ab2da 100644 --- a/test-app/src/main/java/net/newpipe/newplayer/testapp/MainActivity.kt +++ b/test-app/src/main/java/net/newpipe/newplayer/testapp/MainActivity.kt @@ -75,6 +75,11 @@ class MainActivity : AppCompatActivity() { newPlayer.playStream("portrait", PlayMode.EMBEDDED_VIDEO) } + binding.startYtTestVideoButton.setOnClickListener { + newPlayer.playWhenReady = true + newPlayer.playStream("yt_test", PlayMode.EMBEDDED_VIDEO) + } + binding.add6502StreamButton.setOnClickListener { newPlayer.addToPlaylist("6502") } @@ -87,6 +92,10 @@ class MainActivity : AppCompatActivity() { newPlayer.addToPlaylist("portrait") } + binding.addYtTestVideoButton.setOnClickListener { + newPlayer.addToPlaylist("yt_test") + } + videoPlayerViewModel.newPlayer = newPlayer videoPlayerViewModel.contentFitMode = ContentScale.FIT_INSIDE diff --git a/test-app/src/main/java/net/newpipe/newplayer/testapp/TestMediaRepository.kt b/test-app/src/main/java/net/newpipe/newplayer/testapp/TestMediaRepository.kt index 95f6a38..7e11770 100644 --- a/test-app/src/main/java/net/newpipe/newplayer/testapp/TestMediaRepository.kt +++ b/test-app/src/main/java/net/newpipe/newplayer/testapp/TestMediaRepository.kt @@ -59,6 +59,16 @@ class TestMediaRepository(val context: Context) : MediaRepository { ) .build() + "yt_test" -> MediaMetadata.Builder() + .setTitle(context.getString(R.string.yt_test_title)) + .setArtist(context.getString(R.string.yt_test_channel)) + .setArtworkUri(null) + .setDurationMs( + context.resources.getInteger(R.integer.yt_test_length).toLong() * 1000L + ) + .build() + + else -> throw Exception("Unknown stream: $item") } @@ -90,7 +100,7 @@ class TestMediaRepository(val context: Context) : MediaRepository { streamUri = Uri.parse(context.getString(R.string.ccc_imu_1080_mp4)), mimeType = null, streamType = StreamType.AUDIO_AND_VIDEO, - language = "Deutsch", + language = null, identifier = "1080p", ), @@ -98,11 +108,51 @@ class TestMediaRepository(val context: Context) : MediaRepository { streamUri = Uri.parse(context.getString(R.string.ccc_imu_576_mp4)), mimeType = null, streamType = StreamType.AUDIO_AND_VIDEO, - language = "Deutsch", + language = null, identifier = "576p" ) ) + "yt_test" -> listOf( + Stream( + streamUri = Uri.parse(context.getString(R.string.yt_test_video_sd)), + mimeType = null, + streamType = StreamType.VIDEO, + language = null, + identifier = "SD", + ), + + Stream( + streamUri = Uri.parse(context.getString(R.string.yt_test_video_hd)), + mimeType = null, + streamType = StreamType.VIDEO, + language = null, + identifier = "HD", + ), + Stream( + streamUri = Uri.parse(context.getString(R.string.yt_test_video_fullhd)), + mimeType = null, + streamType = StreamType.VIDEO, + language = null, + identifier = "FullHD", + ), + Stream( + streamUri = Uri.parse(context.getString(R.string.yt_test_audio_english)), + mimeType = null, + streamType = StreamType.AUDIO, + language = "English", + identifier = "default audio", + ), + Stream( + streamUri = Uri.parse(context.getString(R.string.yt_test_audio_spanish)), + mimeType = null, + streamType = StreamType.AUDIO, + language = "Spanish", + identifier = "default audio", + ) + ) + + else -> throw Exception("Unknown item: $item") } @@ -125,6 +175,7 @@ class TestMediaRepository(val context: Context) : MediaRepository { "6502" -> context.getString(R.string.ccc_6502_preview_thumbnails) "imu" -> context.getString(R.string.ccc_imu_preview_thumbnails) "portrait" -> null + "ty_test" -> null else -> throw Exception("Unknown stream: $item") } diff --git a/test-app/src/main/res/layout-land/activity_main.xml b/test-app/src/main/res/layout-land/activity_main.xml index 92e702f..2731bed 100644 --- a/test-app/src/main/res/layout-land/activity_main.xml +++ b/test-app/src/main/res/layout-land/activity_main.xml @@ -100,6 +100,13 @@ android:layout_gravity="center" android:text="Start Portrait Stream" /> +