mixtape β€’ lava/youtubei

Innertube Client written in Kotlin.

  • Use multiple innertube clients with a single Innertube instance.
  • Can be used with any ktor http client instance.
  • Made with lavaplayer in mind.
  • Attempts to mimic clients via headers and random user agents.\

πŸ“¦ Modules

  • core β€” innertube client implementations
  • player β€” classes for requesting innertube players
    • PlayerScriptManager to fetch player scripts used to sign stream urls
    • Innertube.player for executing the /player innertube endpoint
  • json β€” common data structures found in innertube api results
  • protobuf β€” reverse-engineered protobuf structures

πŸ“ Documentation

Soonℒ️

πŸš€ Installation

🐘 Gradle

Usage With Bom:

repositories {
    maven("https://maven.dimensional.fun/releases")
}

dependencies {
    implementation(platform("mixtape.oss.youtubei:youtube-bom:{VERSION}"))
    implementation("mixtape.oss.youtubei:youtubei-{MODULE}")
}
πŸͺΆ Maven

<repositories>
    <repository>
        <id>dimensional-maven</id>
        <name>Dimensional Maven</name>
        <url>https://maven.dimensional.fun/releases</url>
    </repository>
</repositories>

<dependencies>
    <dependency>
        <groupId>mixtape.oss.youtubei</groupId>
        <artifactId>youtubei-{MODULE}</artifactId>
        <version>{VERSION}</version>
    </dependency>
</dependencies>

Examples

View some examples here

note: do not expect support for this library

Contributors


GitHub

View Github