Browse Source

Move VLCInstance & VLCOptions to resources module

merge-requests/509/head
Geoffrey Métais 7 years ago
committed by Geoffrey Métais
parent
commit
4a4e181a21
  1. 2
      application/app/src/main/java/org/videolan/mobile/app/AppSetupDelegate.kt
  2. 2
      application/resources/src/main/java/org/videolan/resources/Constants.kt
  3. 8
      application/resources/src/main/java/org/videolan/resources/VLCInstance.kt
  4. 13
      application/resources/src/main/java/org/videolan/resources/VLCOptions.kt
  5. 9
      application/resources/src/main/java/org/videolan/resources/util/VLCCrashHandler.kt
  6. 0
      application/resources/src/main/res/values-land/booleans.xml
  7. 0
      application/resources/src/main/res/values-sw400dp/booleans.xml
  8. 0
      application/resources/src/main/res/values-v19/booleans.xml
  9. 0
      application/resources/src/main/res/values/booleans.xml
  10. 2
      application/television/src/main/java/org/videolan/television/ui/preferences/PreferencesAdvanced.kt
  11. 2
      application/television/src/main/java/org/videolan/television/ui/preferences/PreferencesAudio.kt
  12. 2
      application/television/src/main/java/org/videolan/television/ui/preferences/PreferencesSubtitles.kt
  13. 3
      application/tools/src/main/java/org/videolan/tools/KotlinExtensions.kt
  14. 2
      application/vlc-android/src/org/videolan/vlc/PreviewVideoInputService.kt
  15. 4
      application/vlc-android/src/org/videolan/vlc/RendererDelegate.kt
  16. 2
      application/vlc-android/src/org/videolan/vlc/StoragesMonitor.kt
  17. 1
      application/vlc-android/src/org/videolan/vlc/gui/InfoActivity.kt
  18. 4
      application/vlc-android/src/org/videolan/vlc/gui/audio/EqualizerFragment.kt
  19. 1
      application/vlc-android/src/org/videolan/vlc/gui/helpers/PlayerOptionsDelegate.kt
  20. 2
      application/vlc-android/src/org/videolan/vlc/gui/preferences/PreferencesAdvanced.kt
  21. 2
      application/vlc-android/src/org/videolan/vlc/gui/preferences/PreferencesAudio.kt
  22. 2
      application/vlc-android/src/org/videolan/vlc/gui/preferences/PreferencesCasting.kt
  23. 2
      application/vlc-android/src/org/videolan/vlc/gui/preferences/PreferencesSubtitles.kt
  24. 2
      application/vlc-android/src/org/videolan/vlc/gui/video/benchmark/BenchActivity.kt
  25. 3
      application/vlc-android/src/org/videolan/vlc/media/PlayerController.kt
  26. 2
      application/vlc-android/src/org/videolan/vlc/media/PlaylistManager.kt
  27. 2
      application/vlc-android/src/org/videolan/vlc/providers/BrowserProvider.kt
  28. 2
      application/vlc-android/src/org/videolan/vlc/util/Kextensions.kt
  29. 1
      application/vlc-android/src/org/videolan/vlc/util/Util.kt

2
application/app/src/main/java/org/videolan/mobile/app/AppSetupDelegate.kt

@ -43,7 +43,7 @@ import org.videolan.vlc.gui.helpers.AudioUtil
import org.videolan.vlc.gui.helpers.NotificationHelper import org.videolan.vlc.gui.helpers.NotificationHelper
import org.videolan.vlc.util.DialogDelegate import org.videolan.vlc.util.DialogDelegate
import org.videolan.vlc.util.SettingsMigration import org.videolan.vlc.util.SettingsMigration
import org.videolan.vlc.util.VLCInstance import org.videolan.resources.VLCInstance
interface AppDelegate { interface AppDelegate {
val appContextProvider : AppContextProvider val appContextProvider : AppContextProvider

2
application/resources/src/main/java/org/videolan/resources/Constants.kt

@ -194,3 +194,5 @@ const val CRASH_ML_MSG = "crash_ml_msg"
fun String.buildPkgString() = "${BuildConfig.APP_ID}.$this" fun String.buildPkgString() = "${BuildConfig.APP_ID}.$this"
// Activity names
const val COMPATERROR_ACTIVITY = "org.videolan.vlc.gui.CompatErrorActivity"

8
application/vlc-android/src/org/videolan/vlc/util/VLCInstance.kt → application/resources/src/main/java/org/videolan/resources/VLCInstance.kt

@ -18,7 +18,7 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA. * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
*/ */
package org.videolan.vlc.util package org.videolan.resources
import android.annotation.SuppressLint import android.annotation.SuppressLint
import android.app.Activity import android.app.Activity
@ -30,9 +30,7 @@ import org.videolan.libvlc.FactoryManager
import org.videolan.libvlc.interfaces.ILibVLC import org.videolan.libvlc.interfaces.ILibVLC
import org.videolan.libvlc.interfaces.ILibVLCFactory import org.videolan.libvlc.interfaces.ILibVLCFactory
import org.videolan.libvlc.util.VLCUtil import org.videolan.libvlc.util.VLCUtil
import org.videolan.resources.AppContextProvider import org.videolan.resources.util.VLCCrashHandler
import org.videolan.vlc.VLCCrashHandler
import org.videolan.vlc.gui.CompatErrorActivity
@ObsoleteCoroutinesApi @ObsoleteCoroutinesApi
object VLCInstance { object VLCInstance {
@ -75,7 +73,7 @@ object VLCInstance {
fun testCompatibleCPU(context: Context): Boolean { fun testCompatibleCPU(context: Context): Boolean {
return if (sLibVLC == null && !VLCUtil.hasCompatibleCPU(context)) { return if (sLibVLC == null && !VLCUtil.hasCompatibleCPU(context)) {
if (context is Activity) { if (context is Activity) {
val i = Intent(context, CompatErrorActivity::class.java) val i = Intent(Intent.ACTION_VIEW).setClassName(context.applicationContext, COMPATERROR_ACTIVITY)
context.startActivity(i) context.startActivity(i)
} }
false false

13
application/vlc-android/src/org/videolan/vlc/util/VLCOptions.kt → application/resources/src/main/java/org/videolan/resources/VLCOptions.kt

@ -18,7 +18,7 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA. * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
*/ */
package org.videolan.vlc.util package org.videolan.resources
import android.content.Context import android.content.Context
import android.content.SharedPreferences import android.content.SharedPreferences
@ -33,15 +33,12 @@ import org.videolan.libvlc.util.AndroidUtil
import org.videolan.libvlc.util.HWDecoderUtil import org.videolan.libvlc.util.HWDecoderUtil
import org.videolan.libvlc.util.VLCUtil import org.videolan.libvlc.util.VLCUtil
import org.videolan.medialibrary.interfaces.media.MediaWrapper import org.videolan.medialibrary.interfaces.media.MediaWrapper
import org.videolan.resources.AppContextProvider import org.videolan.resources.R.*
import org.videolan.tools.Preferences import org.videolan.tools.Preferences
import org.videolan.tools.Settings import org.videolan.tools.Settings
import org.videolan.vlc.PlaybackService
import org.videolan.vlc.R
import java.io.File import java.io.File
import java.util.* import java.util.*
object VLCOptions { object VLCOptions {
private val TAG = "VLCConfig" private val TAG = "VLCConfig"
@ -69,7 +66,7 @@ object VLCOptions {
val options = ArrayList<String>(50) val options = ArrayList<String>(50)
val timeStrechingDefault = context != null && context.resources.getBoolean(R.bool.time_stretching_default) val timeStrechingDefault = context != null && context.resources.getBoolean(bool.time_stretching_default)
val timeStreching = pref.getBoolean("enable_time_stretching_audio", timeStrechingDefault) val timeStreching = pref.getBoolean("enable_time_stretching_audio", timeStrechingDefault)
val subtitlesEncoding = pref.getString("subtitle_text_encoding", "") ?: "" val subtitlesEncoding = pref.getString("subtitle_text_encoding", "") ?: ""
val frameSkip = pref.getBoolean("enable_frame_skip", false) val frameSkip = pref.getBoolean("enable_frame_skip", false)
@ -202,7 +199,7 @@ object VLCOptions {
return ret return ret
} }
fun setMediaOptions(media: IMedia, context: Context, flags: Int) { fun setMediaOptions(media: IMedia, context: Context, flags: Int, hasRenderer: Boolean) {
val noHardwareAcceleration = flags and MediaWrapper.MEDIA_NO_HWACCEL != 0 val noHardwareAcceleration = flags and MediaWrapper.MEDIA_NO_HWACCEL != 0
val noVideo = flags and MediaWrapper.MEDIA_VIDEO == 0 val noVideo = flags and MediaWrapper.MEDIA_VIDEO == 0
val benchmark = flags and MediaWrapper.MEDIA_BENCHMARK != 0 val benchmark = flags and MediaWrapper.MEDIA_BENCHMARK != 0
@ -231,7 +228,7 @@ object VLCOptions {
if (!prefs.getBoolean("subtitles_autoload", true)) media.addOption(":sub-language=none") if (!prefs.getBoolean("subtitles_autoload", true)) media.addOption(":sub-language=none")
if (!benchmark && prefs.getBoolean("media_fast_seek", true)) media.addOption(":input-fast-seek") if (!benchmark && prefs.getBoolean("media_fast_seek", true)) media.addOption(":input-fast-seek")
if (PlaybackService.hasRenderer()) { if (hasRenderer) {
media.addOption(":sout-chromecast-audio-passthrough=" + prefs.getBoolean("casting_passthrough", true)) media.addOption(":sout-chromecast-audio-passthrough=" + prefs.getBoolean("casting_passthrough", true))
media.addOption(":sout-chromecast-conversion-quality=" + prefs.getString("casting_quality", "2")!!) media.addOption(":sout-chromecast-conversion-quality=" + prefs.getString("casting_quality", "2")!!)
} }

9
application/vlc-android/src/org/videolan/vlc/VLCCrashHandler.kt → application/resources/src/main/java/org/videolan/resources/util/VLCCrashHandler.kt

@ -18,7 +18,7 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA. * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
*/ */
package org.videolan.vlc package org.videolan.resources.util
import android.os.Environment import android.os.Environment
import android.text.format.DateFormat import android.text.format.DateFormat
@ -29,6 +29,8 @@ import org.videolan.tools.Logcat
import java.io.* import java.io.*
import java.lang.Thread.UncaughtExceptionHandler import java.lang.Thread.UncaughtExceptionHandler
private const val TAG = "VLC/VlcCrashHandler"
class VLCCrashHandler : UncaughtExceptionHandler { class VLCCrashHandler : UncaughtExceptionHandler {
private val defaultUEH: UncaughtExceptionHandler = Thread.getDefaultUncaughtExceptionHandler() private val defaultUEH: UncaughtExceptionHandler = Thread.getDefaultUncaughtExceptionHandler()
@ -98,9 +100,4 @@ class VLCCrashHandler : UncaughtExceptionHandler {
} }
} }
companion object {
private val TAG = "VLC/VlcCrashHandler"
}
} }

0
application/vlc-android/res/values-land/booleans.xml → application/resources/src/main/res/values-land/booleans.xml

0
application/vlc-android/res/values-sw400dp/booleans.xml → application/resources/src/main/res/values-sw400dp/booleans.xml

0
application/vlc-android/res/values-v19/booleans.xml → application/resources/src/main/res/values-v19/booleans.xml

0
application/vlc-android/res/values/booleans.xml → application/resources/src/main/res/values/booleans.xml

2
application/television/src/main/java/org/videolan/television/ui/preferences/PreferencesAdvanced.kt

@ -44,7 +44,7 @@ import org.videolan.vlc.gui.DebugLogActivity
import org.videolan.vlc.gui.helpers.UiTools import org.videolan.vlc.gui.helpers.UiTools
import org.videolan.vlc.gui.helpers.hf.StoragePermissionsDelegate.Companion.getWritePermission import org.videolan.vlc.gui.helpers.hf.StoragePermissionsDelegate.Companion.getWritePermission
import org.videolan.vlc.util.FileUtils import org.videolan.vlc.util.FileUtils
import org.videolan.vlc.util.VLCInstance import org.videolan.resources.VLCInstance
import java.io.File import java.io.File
@ExperimentalCoroutinesApi @ExperimentalCoroutinesApi

2
application/television/src/main/java/org/videolan/television/ui/preferences/PreferencesAudio.kt

@ -35,7 +35,7 @@ import org.videolan.libvlc.util.HWDecoderUtil
import org.videolan.vlc.R import org.videolan.vlc.R
import org.videolan.tools.AUDIO_DUCKING import org.videolan.tools.AUDIO_DUCKING
import org.videolan.tools.RESUME_PLAYBACK import org.videolan.tools.RESUME_PLAYBACK
import org.videolan.vlc.util.VLCInstance import org.videolan.resources.VLCInstance
@ExperimentalCoroutinesApi @ExperimentalCoroutinesApi
@ObsoleteCoroutinesApi @ObsoleteCoroutinesApi

2
application/television/src/main/java/org/videolan/television/ui/preferences/PreferencesSubtitles.kt

@ -29,7 +29,7 @@ import kotlinx.coroutines.ExperimentalCoroutinesApi
import kotlinx.coroutines.ObsoleteCoroutinesApi import kotlinx.coroutines.ObsoleteCoroutinesApi
import org.videolan.vlc.R import org.videolan.vlc.R
import org.videolan.vlc.util.VLCInstance import org.videolan.resources.VLCInstance
@ExperimentalCoroutinesApi @ExperimentalCoroutinesApi
@ObsoleteCoroutinesApi @ObsoleteCoroutinesApi

3
application/tools/src/main/java/org/videolan/tools/KotlinExtensions.kt

@ -16,6 +16,7 @@ import androidx.annotation.AttrRes
import androidx.core.content.ContextCompat.getSystemService import androidx.core.content.ContextCompat.getSystemService
import androidx.lifecycle.Lifecycle import androidx.lifecycle.Lifecycle
import androidx.lifecycle.LifecycleOwner import androidx.lifecycle.LifecycleOwner
import androidx.lifecycle.ProcessLifecycleOwner
import kotlinx.coroutines.CancellationException import kotlinx.coroutines.CancellationException
import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.channels.Channel import kotlinx.coroutines.channels.Channel
@ -35,6 +36,8 @@ fun <T> List<T>.getposition(target: T): Int {
return -1 return -1
} }
fun isAppStarted() = ProcessLifecycleOwner.get().isStarted()
fun LifecycleOwner.isStarted() = lifecycle.currentState.isAtLeast(Lifecycle.State.STARTED) fun LifecycleOwner.isStarted() = lifecycle.currentState.isAtLeast(Lifecycle.State.STARTED)
fun View.isVisible() = visibility == View.VISIBLE fun View.isVisible() = visibility == View.VISIBLE

2
application/vlc-android/src/org/videolan/vlc/PreviewVideoInputService.kt

@ -19,7 +19,7 @@ import org.videolan.resources.util.getFromMl
import org.videolan.tools.getContextWithLocale import org.videolan.tools.getContextWithLocale
import org.videolan.vlc.media.MediaPlayerEventListener import org.videolan.vlc.media.MediaPlayerEventListener
import org.videolan.vlc.media.PlayerController import org.videolan.vlc.media.PlayerController
import org.videolan.vlc.util.VLCInstance import org.videolan.resources.VLCInstance
import org.videolan.vlc.util.random import org.videolan.vlc.util.random
import java.io.IOException import java.io.IOException

4
application/vlc-android/src/org/videolan/vlc/RendererDelegate.kt

@ -27,8 +27,8 @@ import org.videolan.tools.AppScope
import org.videolan.tools.NetworkMonitor import org.videolan.tools.NetworkMonitor
import org.videolan.tools.retry import org.videolan.tools.retry
import org.videolan.tools.livedata.LiveDataset import org.videolan.tools.livedata.LiveDataset
import org.videolan.vlc.util.VLCInstance import org.videolan.resources.VLCInstance
import org.videolan.vlc.util.isAppStarted import org.videolan.tools.isAppStarted
import java.util.* import java.util.*
@ObsoleteCoroutinesApi @ObsoleteCoroutinesApi

2
application/vlc-android/src/org/videolan/vlc/StoragesMonitor.kt

@ -14,7 +14,7 @@ import org.videolan.medialibrary.interfaces.Medialibrary
import org.videolan.tools.AppScope import org.videolan.tools.AppScope
import org.videolan.vlc.gui.DialogActivity import org.videolan.vlc.gui.DialogActivity
import org.videolan.resources.util.getFromMl import org.videolan.resources.util.getFromMl
import org.videolan.vlc.util.isAppStarted import org.videolan.tools.isAppStarted
import org.videolan.vlc.util.scanAllowed import org.videolan.vlc.util.scanAllowed

1
application/vlc-android/src/org/videolan/vlc/gui/InfoActivity.kt

@ -32,6 +32,7 @@ import org.videolan.medialibrary.interfaces.media.Artist
import org.videolan.medialibrary.interfaces.media.MediaWrapper import org.videolan.medialibrary.interfaces.media.MediaWrapper
import org.videolan.medialibrary.media.MediaLibraryItem import org.videolan.medialibrary.media.MediaLibraryItem
import org.videolan.resources.TAG_ITEM import org.videolan.resources.TAG_ITEM
import org.videolan.resources.VLCInstance
import org.videolan.tools.readableFileSize import org.videolan.tools.readableFileSize
import org.videolan.vlc.R import org.videolan.vlc.R
import org.videolan.vlc.databinding.InfoActivityBinding import org.videolan.vlc.databinding.InfoActivityBinding

4
application/vlc-android/src/org/videolan/vlc/gui/audio/EqualizerFragment.kt

@ -49,8 +49,8 @@ import org.videolan.vlc.gui.dialogs.VLCBottomSheetDialogFragment
import org.videolan.vlc.gui.helpers.UiTools import org.videolan.vlc.gui.helpers.UiTools
import org.videolan.vlc.gui.view.EqualizerBar import org.videolan.vlc.gui.view.EqualizerBar
import org.videolan.vlc.interfaces.OnEqualizerBarChangeListener import org.videolan.vlc.interfaces.OnEqualizerBarChangeListener
import org.videolan.vlc.util.VLCInstance import org.videolan.resources.VLCInstance
import org.videolan.vlc.util.VLCOptions import org.videolan.resources.VLCOptions
import java.lang.Runnable import java.lang.Runnable
@ObsoleteCoroutinesApi @ObsoleteCoroutinesApi

1
application/vlc-android/src/org/videolan/vlc/gui/helpers/PlayerOptionsDelegate.kt

@ -38,7 +38,6 @@ import org.videolan.vlc.gui.dialogs.*
import org.videolan.vlc.gui.video.VideoPlayerActivity import org.videolan.vlc.gui.video.VideoPlayerActivity
import org.videolan.vlc.interfaces.IPlaybackSettingsController import org.videolan.vlc.interfaces.IPlaybackSettingsController
import org.videolan.vlc.media.PlayerController import org.videolan.vlc.media.PlayerController
import org.videolan.vlc.util.*
import java.util.* import java.util.*
private const val ACTION_AUDIO_DELAY = 2 private const val ACTION_AUDIO_DELAY = 2

2
application/vlc-android/src/org/videolan/vlc/gui/preferences/PreferencesAdvanced.kt

@ -42,7 +42,7 @@ import org.videolan.vlc.gui.DebugLogActivity
import org.videolan.vlc.gui.helpers.UiTools import org.videolan.vlc.gui.helpers.UiTools
import org.videolan.vlc.gui.helpers.hf.StoragePermissionsDelegate.Companion.getWritePermission import org.videolan.vlc.gui.helpers.hf.StoragePermissionsDelegate.Companion.getWritePermission
import org.videolan.vlc.util.FileUtils import org.videolan.vlc.util.FileUtils
import org.videolan.vlc.util.VLCInstance import org.videolan.resources.VLCInstance
import java.io.File import java.io.File
@ExperimentalCoroutinesApi @ExperimentalCoroutinesApi

2
application/vlc-android/src/org/videolan/vlc/gui/preferences/PreferencesAudio.kt

@ -35,7 +35,7 @@ import org.videolan.vlc.R
import org.videolan.tools.AUDIO_DUCKING import org.videolan.tools.AUDIO_DUCKING
import org.videolan.resources.AndroidDevices import org.videolan.resources.AndroidDevices
import org.videolan.tools.RESUME_PLAYBACK import org.videolan.tools.RESUME_PLAYBACK
import org.videolan.vlc.util.VLCInstance import org.videolan.resources.VLCInstance
@ExperimentalCoroutinesApi @ExperimentalCoroutinesApi
@ObsoleteCoroutinesApi @ObsoleteCoroutinesApi

2
application/vlc-android/src/org/videolan/vlc/gui/preferences/PreferencesCasting.kt

@ -26,7 +26,7 @@ import android.content.SharedPreferences
import android.os.Bundle import android.os.Bundle
import androidx.preference.Preference import androidx.preference.Preference
import org.videolan.vlc.R import org.videolan.vlc.R
import org.videolan.vlc.util.VLCInstance import org.videolan.resources.VLCInstance
class PreferencesCasting : BasePreferenceFragment(), SharedPreferences.OnSharedPreferenceChangeListener { class PreferencesCasting : BasePreferenceFragment(), SharedPreferences.OnSharedPreferenceChangeListener {

2
application/vlc-android/src/org/videolan/vlc/gui/preferences/PreferencesSubtitles.kt

@ -27,7 +27,7 @@ import kotlinx.coroutines.ExperimentalCoroutinesApi
import kotlinx.coroutines.ObsoleteCoroutinesApi import kotlinx.coroutines.ObsoleteCoroutinesApi
import org.videolan.vlc.R import org.videolan.vlc.R
import org.videolan.vlc.util.VLCInstance import org.videolan.resources.VLCInstance
@ObsoleteCoroutinesApi @ObsoleteCoroutinesApi
@ExperimentalCoroutinesApi @ExperimentalCoroutinesApi

2
application/vlc-android/src/org/videolan/vlc/gui/video/benchmark/BenchActivity.kt

@ -49,7 +49,7 @@ import org.videolan.libvlc.MediaPlayer
import org.videolan.vlc.PlaybackService import org.videolan.vlc.PlaybackService
import org.videolan.tools.AppScope import org.videolan.tools.AppScope
import org.videolan.tools.Settings import org.videolan.tools.Settings
import org.videolan.vlc.util.VLCInstance import org.videolan.resources.VLCInstance
import java.io.* import java.io.*
/** /**

3
application/vlc-android/src/org/videolan/vlc/media/PlayerController.kt

@ -14,13 +14,14 @@ import org.videolan.libvlc.interfaces.IMedia
import org.videolan.libvlc.interfaces.IMediaList import org.videolan.libvlc.interfaces.IMediaList
import org.videolan.libvlc.interfaces.IVLCVout import org.videolan.libvlc.interfaces.IVLCVout
import org.videolan.medialibrary.interfaces.media.MediaWrapper import org.videolan.medialibrary.interfaces.media.MediaWrapper
import org.videolan.resources.VLCInstance
import org.videolan.resources.VLCOptions
import org.videolan.tools.KEY_PLAYBACK_RATE import org.videolan.tools.KEY_PLAYBACK_RATE
import org.videolan.tools.KEY_PLAYBACK_SPEED_PERSIST import org.videolan.tools.KEY_PLAYBACK_SPEED_PERSIST
import org.videolan.tools.Settings import org.videolan.tools.Settings
import org.videolan.vlc.BuildConfig import org.videolan.vlc.BuildConfig
import org.videolan.vlc.PlaybackService import org.videolan.vlc.PlaybackService
import org.videolan.vlc.repository.SlaveRepository import org.videolan.vlc.repository.SlaveRepository
import org.videolan.vlc.util.*
import kotlin.math.abs import kotlin.math.abs
@ObsoleteCoroutinesApi @ObsoleteCoroutinesApi

2
application/vlc-android/src/org/videolan/vlc/media/PlaylistManager.kt

@ -312,7 +312,7 @@ class PlaylistManager(val service: PlaybackService) : MediaWrapperList.EventList
val start = getStartTime(mw) val start = getStartTime(mw)
val media = mediaFactory.getFromUri(VLCInstance.get(service), uri) val media = mediaFactory.getFromUri(VLCInstance.get(service), uri)
media.addOption(":start-time=${start/1000L}") media.addOption(":start-time=${start/1000L}")
VLCOptions.setMediaOptions(media, ctx, flags or mw.flags) VLCOptions.setMediaOptions(media, ctx, flags or mw.flags, PlaybackService.hasRenderer())
/* keeping only video during benchmark */ /* keeping only video during benchmark */
if (isBenchmark) { if (isBenchmark) {
media.addOption(":no-audio") media.addOption(":no-audio")

2
application/vlc-android/src/org/videolan/vlc/providers/BrowserProvider.kt

@ -48,7 +48,7 @@ import org.videolan.tools.Settings
import org.videolan.tools.livedata.LiveDataset import org.videolan.tools.livedata.LiveDataset
import org.videolan.vlc.R import org.videolan.vlc.R
import org.videolan.vlc.util.ModelsHelper import org.videolan.vlc.util.ModelsHelper
import org.videolan.vlc.util.VLCInstance import org.videolan.resources.VLCInstance
import org.videolan.vlc.util.isBrowserMedia import org.videolan.vlc.util.isBrowserMedia
import org.videolan.vlc.util.isMedia import org.videolan.vlc.util.isMedia
import java.util.* import java.util.*

2
application/vlc-android/src/org/videolan/vlc/util/Kextensions.kt

@ -153,8 +153,6 @@ fun asyncTextItem(view: TextView, item: MediaLibraryItem?) {
(view as AppCompatTextView).setTextFuture(PrecomputedTextCompat.getTextFuture(text, params, null)) (view as AppCompatTextView).setTextFuture(PrecomputedTextCompat.getTextFuture(text, params, null))
} }
fun isAppStarted() = ProcessLifecycleOwner.get().isStarted()
fun Int.toPixel(): Int { fun Int.toPixel(): Int {
val metrics = Resources.getSystem().displayMetrics val metrics = Resources.getSystem().displayMetrics
val px = toFloat() * (metrics.densityDpi / 160f) val px = toFloat() * (metrics.densityDpi / 160f)

1
application/vlc-android/src/org/videolan/vlc/util/Util.kt

@ -27,6 +27,7 @@ import android.text.TextUtils
import kotlinx.coroutines.ExperimentalCoroutinesApi import kotlinx.coroutines.ExperimentalCoroutinesApi
import kotlinx.coroutines.ObsoleteCoroutinesApi import kotlinx.coroutines.ObsoleteCoroutinesApi
import org.videolan.resources.AppContextProvider import org.videolan.resources.AppContextProvider
import org.videolan.resources.VLCInstance
import org.videolan.tools.CloseableUtils import org.videolan.tools.CloseableUtils
import org.videolan.tools.runBackground import org.videolan.tools.runBackground
import org.videolan.tools.runOnMainThread import org.videolan.tools.runOnMainThread

Loading…
Cancel
Save