diff --git a/README.md b/README.md index 011ef263..7d65c47b 100644 --- a/README.md +++ b/README.md @@ -14,9 +14,9 @@ Supported formats include MP4, MKV, MOV, WebM, MP3, WAV, FLAC, AAC, and many mor | | Native | Transcoded | |--|--------|------------| -| **Video** | WebM, OGV | MP4, M4V, MKV, AVI, MOV, WMV, FLV, TS, MTS, M2TS, 3GP, IVF | +| **Video** | WebM, OGV | MP4, M4V, MKV, AVI, MOV, WMV, FLV, M2TS, M2T, 3GP, IVF | | **Audio** | MP3, WAV, FLAC, OGG, OGA, Opus | M4A, AAC, ADTS, AC3, EAC3, CAF, WMA, AIFF, AIF | -| **Telephony / Voice** | — | AMR, AU, PCMU, ULAW, PCMA, ALAW, G722, GSM, SLN | +| **Telephony / Voice** | — | AMR, AU, PCMU, ULAW, PCMA, ALAW, G722, SLIN | - **Native** — plays instantly in the embedded browser - **Transcoded** — converted to WebM (VP9/Opus) via bundled FFmpeg on first open, with live progress diff --git a/client/build.gradle.kts b/client/build.gradle.kts index 253ab94f..eabec8c8 100644 --- a/client/build.gradle.kts +++ b/client/build.gradle.kts @@ -1,11 +1,11 @@ import org.jetbrains.intellij.platform.gradle.TestFrameworkType -import java.util.concurrent.Callable - -val idesDir = rootProject.layout.projectDirectory.dir(".intellijPlatform/ides").asFile +import org.jetbrains.intellij.platform.gradle.models.Coordinates dependencies { intellijPlatform { bundledModule("intellij.platform.frontend") + bundledModule("intellij.rd.ide.model.generated") + platformDependency(Coordinates("com.jetbrains.intellij.rd", "rd-client")) compileOnly(libs.kotlin.serialization.core.jvm) compileOnly(libs.kotlin.serialization.json.jvm) testFramework(TestFrameworkType.Platform) @@ -13,31 +13,6 @@ dependencies { implementation(project(":shared")) implementation(project(":frontend")) - // These RD jars aren't exposed as bundledModule() in IU-261, so pin them as compileOnly — resolved - // lazily via Callable because the IDE dir is empty until the platform plugin downloads it (fresh CI). - compileOnly(files(Callable { - val ideHome = idesDir.listFiles()?.sortedByDescending { it.name }?.firstOrNull() - ?: error("No resolved IDE under $idesDir") - // Glob the whole frontend-split dir instead of naming rd-client.jar/frontend-split.jar: - // EAP builds rename these, and the split classes we compile against live somewhere in here. - val splitDir = ideHome.resolve("plugins/cwm-plugin/lib/frontend-split") - val splitJars = splitDir.listFiles { f -> f.extension == "jar" }?.toList().orEmpty() - val libJars = listOf( - "lib/intellij.rd.platform.jar", - "lib/intellij.rd.ui.jar", - "lib/intellij.rd.ide.model.generated.jar", - "lib/intellij.libraries.rd.core.jar", - ).map { ideHome.resolve(it) } - // Fail early with a clear message if the IDE layout moved these internal jars. - val missingLib = libJars.filterNot { it.exists() } - require(splitJars.isNotEmpty() && missingLib.isEmpty()) { - "Missing IntelliJ internal jars for :client under $ideHome:\n" + - (if (splitJars.isEmpty()) " $splitDir/*.jar\n" else "") + - missingLib.joinToString("\n") { " $it" } - } - splitJars + libJars - })) - testImplementation(libs.junit) testImplementation(libs.opentest4j) }