Coder Social home page Coder Social logo

drewcarlson / anystream Goto Github PK

View Code? Open in Web Editor NEW
31.0 4.0 4.0 4.63 MB

A self-hosted streaming service for your media collection. (Kotlin multiplatform)

Home Page: https://docs.anystream.dev

License: GNU Affero General Public License v3.0

Kotlin 99.01% HTML 0.11% JavaScript 0.06% Dockerfile 0.06% Swift 0.41% SCSS 0.35%
kotlin ktor jetpack-compose media-library jetbrains-compose kotlin-multiplatform

anystream's People

Contributors

amitgoelny avatar amitgoelnyc avatar drewcarlson avatar renovate[bot] avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

anystream's Issues

Embed documentation in server jar

It would be ideal for all deployments to have documentation available for that specific version, especially while offline.

We should have a flag to enable/disable including a built version of the docs and when added it should be served by the api.

Video stream playback issues

  • When resuming playback states for partially transcoded items, the playlist generation hangs indefinitely and playback does not begin.
  • Sometimes transcoded video streaming hangs after starting: When starting a FFmpeg process and attaching the progress listener, the first (0) segment's completion is not properly tracked leaving the first completed segment as 1. This causes playback to hang indefinitely while the player tries to load the 0th segment but never receives the file.
  • When stream playback races transcoding output, segment file requests occasionally return 404s. This is likely that the transcoding is done but the segment has not yet been written to disk. Video.js handles this safely in most cases but ExoPlayer does not, the endpoint should wait until the segment is fully written.

Dependency Dashboard

This issue lists Renovate updates and detected dependencies. Read the Dependency Dashboard docs to learn more.

Repository problems

These problems occurred while renovating this repository. View logs.

  • WARN: Package lookup failures

Rate-Limited

These updates are currently rate-limited. Click on a checkbox below to force their creation now.

  • Update dependency app.softwork:routing-compose to v0.2.14
  • Update dependency com.google.zxing:core to v3.5.3
  • Update dependency com.squareup.okhttp3:okhttp to v5.0.0-alpha.14
  • Update dependency io.insert-koin:koin-androidx-compose to v3.5.6
  • Update dependency io.insert-koin:koin-compose to v1.1.5
  • Update dependency io.insert-koin:koin-core to v3.5.6
  • Update dependency io.mockk:mockk to v1.13.10
  • Update dependency org.jetbrains.compose.compiler:compiler to v1.5.14
  • Update koinAndroid to v3.5.6 (io.insert-koin:koin-android-compat, io.insert-koin:koin-android)
  • Update koinKtor to v3.5.6 (io.insert-koin:koin-logger-slf4j, io.insert-koin:koin-ktor)
  • Update kotlin monorepo to v1.9.24 (org.jetbrains.kotlin.android, org.jetbrains.kotlin.plugin.serialization, org.jetbrains.kotlin.jvm, org.jetbrains.kotlin.multiplatform, org.jetbrains.kotlin:kotlin-gradle-plugin)
  • Update ksp to v1.9.24-1.0.20 (com.google.devtools.ksp, com.google.devtools.ksp:symbol-processing-api)
  • Update ktor monorepo to v2.3.11 (io.ktor:ktor-server-websockets, io.ktor:ktor-server-auth-jwt, io.ktor:ktor-server-auth, io.ktor:ktor-server-cors, io.ktor:ktor-server-compression, io.ktor:ktor-server-status-pages, io.ktor:ktor-server-call-logging, io.ktor:ktor-server-caching-headers, io.ktor:ktor-server-default-headers, io.ktor:ktor-server-auto-head-response, io.ktor:ktor-server-content-negotiation, io.ktor:ktor-server-partial-content, io.ktor:ktor-server-metrics, io.ktor:ktor-server-tests, io.ktor:ktor-server-sessions, io.ktor:ktor-server-netty, io.ktor:ktor-server-core, io.ktor:ktor-client-darwin, io.ktor:ktor-client-websockets, io.ktor:ktor-client-content-negotiation, io.ktor:ktor-client-cio, io.ktor:ktor-client-js, io.ktor:ktor-client-okhttp, io.ktor:ktor-client-logging, io.ktor:ktor-client-core, io.ktor:ktor-serialization-kotlinx-json)
  • Update serialization to v1.6.3 (org.jetbrains.kotlinx:kotlinx-serialization-json, org.jetbrains.kotlinx:kotlinx-serialization-core)
  • Update compose to v1.6.7 (androidx.compose.ui:ui-tooling-preview, androidx.compose.runtime:runtime-livedata, androidx.compose.ui:ui-tooling, androidx.compose.ui:ui)
  • Update compose.material to v1.6.7 (androidx.compose.material:material, androidx.compose.material:material-icons-extended)
  • Update coroutines to v1.8.1 (org.jetbrains.kotlinx:kotlinx-coroutines-test, org.jetbrains.kotlinx:kotlinx-coroutines-jdk8, org.jetbrains.kotlinx:kotlinx-coroutines-core)
  • Update dependency androidx.activity:activity-compose to v1.9.0
  • Update dependency androidx.activity:activity-ktx to v1.9.0
  • Update dependency androidx.compose.foundation:foundation to v1.6.7
  • Update dependency androidx.core:core-ktx to v1.13.1
  • Update dependency androidx.lifecycle:lifecycle-viewmodel-compose to v2.8.0
  • Update dependency ch.qos.logback:logback-classic to v1.5.6
  • Update dependency com.android.tools.build:gradle to v8.4.0
  • Update dependency com.diffplug.spotless to v6.25.0
  • Update dependency com.squareup.leakcanary:leakcanary-android to v2.14
  • Update dependency io.coil-kt:coil-compose to v2.6.0
  • Update dependency io.github.g00fy2.quickie:quickie-bundled to v1.10.0
  • Update dependency media.kamel:kamel-image to v0.9.4
  • Update dependency mike to v2.1.1
  • Update dependency mkdocs to v1.6.0
  • Update dependency net.java.dev.jna:jna to v5.14.0
  • Update dependency org.drewcarlson:torrentsearch to v0.8.0
  • Update dependency org.gradle.kotlin:gradle-kotlin-dsl-conventions to v0.9.0
  • Update dependency org.jetbrains.compose to v1.6.2
  • Update dependency org.jetbrains.kotlinx.kover to v0.8.0
  • Update dependency org.jetbrains.kotlinx:kotlinx-datetime to v0.6.0
  • Update icu4j to v74.2 (com.ibm.icu:icu4j-localespi, com.ibm.icu:icu4j-charset, com.ibm.icu:icu4j)
  • Update jdbi to v3.45.1 (org.jdbi:jdbi3-kotlin-sqlobject, org.jdbi:jdbi3-kotlin, org.jdbi:jdbi3-sqlobject, org.jdbi:jdbi3-core)
  • Update media3 to v1.3.1 (androidx.media3:media3-cast, androidx.media3:media3-session, androidx.media3:media3-datasource-okhttp, androidx.media3:media3-exoplayer-hls, androidx.media3:media3-ui, androidx.media3:media3-exoplayer)
  • Update mobiuskt to v1.2.1 (org.drewcarlson:mobiuskt-codegen-api, org.drewcarlson:mobiuskt-codegen, org.drewcarlson:mobiuskt-compose, org.drewcarlson:mobiuskt-coroutines, org.drewcarlson:mobiuskt-extras, org.drewcarlson:mobiuskt-test, org.drewcarlson:mobiuskt-core)
  • Update plugin downloadPlugin to v5.6.0
  • Update GitHub Artifact Actions to v4 (major) (actions/download-artifact, actions/upload-artifact)
  • Update actions/cache action to v4
  • Update actions/setup-java action to v4
  • Update actions/setup-python action to v5
  • Update codecov/codecov-action action to v4
  • Update icu4j to v75 (major) (com.ibm.icu:icu4j-localespi, com.ibm.icu:icu4j-charset, com.ibm.icu:icu4j)
  • Update softprops/action-gh-release action to v2
  • Update tj-actions/changed-files action to v44
  • ๐Ÿ” Create all rate-limited PRs at once ๐Ÿ”

Warning

Renovate failed to look up the following dependencies: Failed to look up maven package io.insert-koin:koin-android-workmanager, Failed to look up maven package io.insert-koin:koin-android-navigation.

Files affected: gradle/libsAndroid.versions.toml


Open

These updates have all been created already. Click a checkbox below to force a retry/rebase of any.

Detected dependencies

docker-compose
docker-compose.yml
dockerfile
Dockerfile
Dockerfile-local
github-actions
.github/workflows/code-quality.yml
  • actions/checkout v4
  • tj-actions/changed-files v41
  • tj-actions/changed-files v41
  • tj-actions/changed-files v41
  • tj-actions/changed-files v41
  • tj-actions/changed-files v41
  • tj-actions/changed-files v41
  • tj-actions/changed-files v41
  • actions/checkout v4
  • actions/setup-java v3
  • actions/cache v3
  • gradle/gradle-build-action v2
  • actions/checkout v4
  • actions/setup-java v3
  • actions/cache v3
  • gradle/gradle-build-action v2
  • actions/checkout v4
  • actions/setup-java v3
  • actions/cache v3
  • gradle/gradle-build-action v2
  • actions/checkout v4
  • actions/setup-java v3
  • actions/cache v3
  • gradle/gradle-build-action v2
  • actions/checkout v4
  • actions/setup-java v3
  • actions/cache v3
  • gradle/gradle-build-action v2
  • actions/checkout v4
  • actions/setup-java v3
  • actions/cache v3
  • gradle/gradle-build-action v2
.github/workflows/release.yml
  • actions/checkout v4
  • tj-actions/changed-files v41
  • tj-actions/changed-files v41
  • actions/checkout v4
  • actions/setup-python v4
  • actions/checkout v4
  • actions/setup-java v3
  • actions/cache v3
  • gradle/gradle-build-action v2
  • docker/login-action v2
  • docker/metadata-action v4
  • docker/build-push-action v4
  • softprops/action-gh-release v1
.github/workflows/tests.yml
  • actions/checkout v4
  • tj-actions/changed-files v41
  • tj-actions/changed-files v41
  • tj-actions/changed-files v41
  • tj-actions/changed-files v41
  • tj-actions/changed-files v41
  • tj-actions/changed-files v41
  • tj-actions/changed-files v41
  • actions/checkout v4
  • actions/setup-java v3
  • actions/cache v3
  • gradle/gradle-build-action v2
  • actions/upload-artifact v3
  • mikepenz/action-junit-report v4
  • actions/checkout v4
  • actions/setup-java v3
  • actions/cache v3
  • gradle/gradle-build-action v2
  • actions/upload-artifact v3
  • mikepenz/action-junit-report v4
  • actions/checkout v4
  • actions/setup-java v3
  • actions/cache v3
  • reactivecircus/android-emulator-runner v2
  • actions/upload-artifact v3
  • mikepenz/action-junit-report v4
  • actions/checkout v4
  • actions/setup-java v3
  • actions/cache v3
  • gradle/gradle-build-action v2
  • actions/upload-artifact v3
  • mikepenz/action-junit-report v4
  • actions/checkout v4
  • actions/setup-java v3
  • actions/cache v3
  • gradle/gradle-build-action v2
  • actions/upload-artifact v3
  • mikepenz/action-junit-report v4
  • actions/checkout v4
  • actions/download-artifact v3
  • codecov/codecov-action v3
.github/workflows/yarn-lock-upgrade.yml
  • actions/checkout v4
  • actions/setup-java v3
  • actions/cache v3
  • gradle/gradle-build-action v2
  • EndBug/add-and-commit v9
gradle
gradle.properties
settings.gradle.kts
build.gradle.kts
build-logic/settings.gradle.kts
build-logic/build.gradle.kts
  • org.gradle.kotlin:gradle-kotlin-dsl-conventions 0.8.0
build-logic/src/main/kotlin/multiplatform-lib.gradle.kts
build-logic/src/main/kotlin/server-lib.gradle.kts
client/android/build.gradle.kts
client/core/build.gradle.kts
client/data-models/build.gradle.kts
client/desktop/build.gradle.kts
client/ui/build.gradle.kts
client/web/build.gradle.kts
gradle/libsAndroid.versions.toml
  • com.squareup.okhttp3:okhttp 5.0.0-alpha.11
  • com.github.anrwatchdog:anrwatchdog 1.4.0
  • com.google.zxing:core 3.5.2
  • com.google.android.exoplayer:exoplayer-core 2.19.1
  • com.google.android.exoplayer:exoplayer-ui 2.19.1
  • com.google.android.exoplayer:exoplayer-hls 2.19.1
  • androidx.media3:media3-exoplayer 1.2.0
  • androidx.media3:media3-ui 1.2.0
  • androidx.media3:media3-exoplayer-hls 1.2.0
  • androidx.media3:media3-datasource-okhttp 1.2.0
  • androidx.media3:media3-session 1.2.0
  • androidx.media3:media3-cast 1.2.0
  • androidx.core:core-ktx 1.12.0
  • androidx.appcompat:appcompat 1.6.1
  • androidx.leanback:leanback 1.1.0-rc02
  • androidx.activity:activity-ktx 1.8.1
  • androidx.activity:activity-compose 1.8.1
  • androidx.lifecycle:lifecycle-viewmodel-compose 2.6.2
  • androidx.test:runner 1.5.2
  • io.insert-koin:koin-android 3.5.0
  • io.insert-koin:koin-android-compat 3.5.0
  • io.insert-koin:koin-android-workmanager 3.5.0
  • io.insert-koin:koin-android-navigation 3.5.0
  • io.insert-koin:koin-androidx-compose 3.5.0
  • io.github.g00fy2.quickie:quickie-bundled 1.8.0
  • com.squareup.leakcanary:leakcanary-android 2.12
gradle/libsClient.versions.toml
  • org.jetbrains.kotlin-wrappers:kotlin-browser 1.0.0-pre.646
  • org.jetbrains.kotlin-wrappers:kotlin-extensions 1.0.1-pre.646
  • com.github.anrwatchdog:anrwatchdog 1.4.0
  • com.google.zxing:core 3.5.2
  • com.google.android.exoplayer:exoplayer-core 2.19.1
  • com.google.android.exoplayer:exoplayer-ui 2.19.1
  • com.google.android.exoplayer:exoplayer-hls 2.19.1
  • androidx.media3:media3-exoplayer 1.2.0
  • androidx.media3:media3-ui 1.2.0
  • androidx.media3:media3-exoplayer-hls 1.2.0
  • androidx.media3:media3-datasource-okhttp 1.2.0
  • androidx.media3:media3-session 1.2.0
  • androidx.media3:media3-cast 1.2.0
  • org.drewcarlson:torrentsearch 0.7.0
  • androidx.compose.ui:ui 1.5.4
  • androidx.compose.ui:ui-tooling 1.5.4
  • androidx.compose.foundation:foundation 1.5.4
  • androidx.compose.material:material-icons-extended 1.5.4
  • androidx.compose.material:material 1.5.4
  • androidx.compose.runtime:runtime-livedata 1.5.4
  • androidx.compose.ui:ui-tooling-preview 1.5.4
  • io.insert-koin:koin-compose 1.1.0
  • io.insert-koin:koin-ktor 3.5.1
  • io.insert-koin:koin-logger-slf4j 3.5.1
  • io.coil-kt:coil-compose 2.5.0
  • media.kamel:kamel-image 0.8.3
  • app.softwork:routing-compose 0.2.12
  • com.squareup.leakcanary:leakcanary-android 2.12
  • org.drewcarlson:mobiuskt-core 1.1.0
  • org.drewcarlson:mobiuskt-test 1.1.0
  • org.drewcarlson:mobiuskt-extras 1.1.0
  • org.drewcarlson:mobiuskt-coroutines 1.1.0
  • org.drewcarlson:mobiuskt-compose 1.1.0
  • org.drewcarlson:mobiuskt-codegen 1.1.0
  • org.drewcarlson:mobiuskt-codegen-api 1.1.0
  • org.drewcarlson:objectstore-core 0.2.0
  • org.drewcarlson:objectstore-fs 0.2.0
  • org.drewcarlson:objectstore-json 0.2.0
  • org.drewcarlson:objectstore-protobuf 0.2.0
  • org.drewcarlson:objectstore-secure 0.2.0
  • org.jetbrains.compose.compiler:compiler 1.5.3
  • uk.co.caprica:vlcj 4.8.2
  • net.java.dev.jna:jna 5.13.0
  • org.jetbrains.compose 1.5.10
gradle/libsCommon.versions.toml
  • org.jetbrains.kotlin:kotlin-gradle-plugin 1.9.20
  • org.jetbrains.kotlinx:kotlinx-coroutines-core 1.7.3
  • org.jetbrains.kotlinx:kotlinx-coroutines-jdk8 1.7.3
  • org.jetbrains.kotlinx:kotlinx-coroutines-test 1.7.3
  • org.jetbrains.kotlinx:kotlinx-serialization-core 1.6.1
  • org.jetbrains.kotlinx:kotlinx-serialization-json 1.6.1
  • org.jetbrains.kotlinx:kotlinx-datetime 0.4.1
  • org.jetbrains.kotlinx:atomicfu 0.22.0
  • org.jetbrains.kotlinx:atomicfu-gradle-plugin 0.22.0
  • com.android.tools.build:gradle 8.1.4
  • io.ktor:ktor-serialization-kotlinx-json 2.3.6
  • io.ktor:ktor-client-core 2.3.6
  • io.ktor:ktor-client-logging 2.3.6
  • io.ktor:ktor-client-okhttp 2.3.6
  • io.ktor:ktor-client-js 2.3.6
  • io.ktor:ktor-client-cio 2.3.6
  • io.ktor:ktor-client-content-negotiation 2.3.6
  • io.ktor:ktor-client-websockets 2.3.6
  • io.ktor:ktor-client-darwin 2.3.6
  • io.ktor:ktor-server-core 2.3.6
  • io.ktor:ktor-server-netty 2.3.6
  • io.ktor:ktor-server-sessions 2.3.6
  • io.ktor:ktor-server-tests 2.3.6
  • io.ktor:ktor-server-metrics 2.3.6
  • io.ktor:ktor-server-partial-content 2.3.6
  • io.ktor:ktor-server-content-negotiation 2.3.6
  • io.ktor:ktor-server-auto-head-response 2.3.6
  • io.ktor:ktor-server-default-headers 2.3.6
  • io.ktor:ktor-server-caching-headers 2.3.6
  • io.ktor:ktor-server-call-logging 2.3.6
  • io.ktor:ktor-server-status-pages 2.3.6
  • io.ktor:ktor-server-compression 2.3.6
  • io.ktor:ktor-server-cors 2.3.6
  • io.ktor:ktor-server-auth 2.3.6
  • io.ktor:ktor-server-auth-jwt 2.3.6
  • io.ktor:ktor-server-websockets 2.3.6
  • org.drewcarlson:ktor-permissions 0.2.1
  • com.google.devtools.ksp:symbol-processing-api 1.9.20-1.0.14
  • io.insert-koin:koin-core 3.5.0
  • io.insert-koin:koin-ktor 3.5.1
  • io.insert-koin:koin-logger-slf4j 3.5.1
  • org.jetbrains.kotlin.multiplatform 1.9.20
  • org.jetbrains.kotlin.jvm 1.9.20
  • org.jetbrains.kotlin.plugin.serialization 1.9.20
  • org.jetbrains.kotlinx.kover 0.7.4
  • org.jetbrains.kotlin.android 1.9.20
  • com.google.devtools.ksp 1.9.20-1.0.14
  • com.diffplug.spotless 6.22.0
  • de.undercouch.download 5.5.0
gradle/libsServer.versions.toml
  • org.flywaydb:flyway-core 9.22.3
  • cn.danielw:fast-object-pool 2.2.1
  • io.mockk:mockk 1.13.8
  • org.jdbi:jdbi3-core 3.41.3
  • org.jdbi:jdbi3-sqlobject 3.41.3
  • org.jdbi:jdbi3-kotlin 3.41.3
  • org.jdbi:jdbi3-kotlin-sqlobject 3.41.3
  • org.xerial:sqlite-jdbc 3.42.0.1
  • org.drewcarlson:kjob-core 0.6.0
  • org.drewcarlson:kjob-jdbi 0.6.0
  • org.drewcarlson:qbittorrent-models 1.0.0-beta04
  • org.drewcarlson:qbittorrent-client 1.0.0-beta04
  • org.drewcarlson:torrentsearch 0.7.0
  • com.github.kokorin.jaffree:jaffree 2023.09.10
  • org.bouncycastle:bcprov-jdk15on 1.70
  • ch.qos.logback:logback-classic 1.4.11
  • org.drewcarlson:tmdb-api-jvm 1.2.1
  • io.insert-koin:koin-ktor 3.5.1
  • io.insert-koin:koin-logger-slf4j 3.5.1
  • com.ibm.icu:icu4j 74.1
  • com.ibm.icu:icu4j-charset 74.1
  • com.ibm.icu:icu4j-localespi 74.1
  • com.github.johnrengelman.shadow 8.1.1
libs/preferences/build.gradle.kts
libs/sql-generator/build.gradle.kts
libs/sql-generator-api/build.gradle.kts
server/application/build.gradle.kts
server/db-models/build.gradle.kts
server/library-manager/build.gradle.kts
server/metadata-manager/build.gradle.kts
server/shared/build.gradle.kts
server/stream-service/build.gradle.kts
gradle-wrapper
gradle/wrapper/gradle-wrapper.properties
  • gradle 8.2.1
pip_requirements
docs/requirements.txt
  • mkdocs ==1.5.3
  • mkdocs-material ==9.4.10
  • mkdocs-markdownextradata-plugin ==0.2.5
  • mike ==2.0.0

  • Check this box to trigger a request for Renovate to run again on this repository

Remaining SQL migration issues

  • Concurrent access to Daos is prohibited, currently frequent media inserts occur behind locks. Remove locks and rely on thread local dao instances.
  • TV Shows do not contain the correct numberOfSeasons or numberOfEpisodes
  • TV Show media lookup results contain only the show and season folder media references
  • Metadata refresh is not implemented, update queries are noops
  • Media reference stream details are not stored
  • Search only matches full text parts, add wildcard to support for partial matching (i.e. hell returns hellsing)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.