Bitmovin versions 3.25.0 3.26.0 has broken CHROMECAST feature

Last working version is 3.24.2

I’m using your samples project from : GitHub - bitmovin/bitmovin-player-android-samples: Sample apps for the Bitmovin Player Android SDK
project called : BasicCastingKotlin.

Code I’m using to play your sample is as follows :

private fun initializePlayer(sourceUrl: String, sourceTitle: String) {
        // Create a new source item
        val sourceItem = SourceConfig.fromUrl("https://bitmovin-a.akamaihd.net/content/art-of-motion_drm/mpds/11331.mpd").apply {
            title = "drm protected"
            drmConfig = WidevineConfig("https://cwip-shaka-proxy.appspot.com/no_auth")
        }

        // load source using the created source item
        player.load(sourceItem)
    }

WHEN I’M casting to my chromecast Error I’m receiving is as follows :

2022-12-09 16:04:31.569 18388-18388/com.bitmovin.player.samples.casting.basic I/MediaNotificationService: actionsProvider == null
2022-12-09 16:04:31.591 18388-18388/com.bitmovin.player.samples.casting.basic I/DynamiteModule: Considering local module com.google.android.gms.cast.framework.dynamite:0 and remote module com.google.android.gms.cast.framework.dynamite:226
2022-12-09 16:04:31.592 18388-18388/com.bitmovin.player.samples.casting.basic I/DynamiteModule: Selected remote version of com.google.android.gms.cast.framework.dynamite, version >= 226
2022-12-09 16:04:31.592 18388-18388/com.bitmovin.player.samples.casting.basic V/DynamiteModule: Dynamite loader version >= 2, using loadModule2NoCrashUtils
2022-12-09 16:04:31.595 18388-18388/com.bitmovin.player.samples.casting.basic I/CastDynamiteModuleImpl: vw created by ClassLoader dalvik.system.DelegateLastClassLoader[DexPathList[[zip file "/data/user_de/0/com.google.android.gms/app_chimera/m/00000155/DynamiteModulesC.apk"],nativeLibraryDirectories=[/data/user_de/0/com.google.android.gms/app_chimera/m/00000155/DynamiteModulesC.apk!/lib/arm64-v8a, /system/lib64, /system_ext/lib64]]].
2022-12-09 16:04:32.339 18388-18388/com.bitmovin.player.samples.casting.basic I/DynamiteModule: Considering local module com.google.android.gms.cast.framework.dynamite:0 and remote module com.google.android.gms.cast.framework.dynamite:226
2022-12-09 16:04:32.339 18388-18388/com.bitmovin.player.samples.casting.basic I/DynamiteModule: Selected remote version of com.google.android.gms.cast.framework.dynamite, version >= 226
2022-12-09 16:04:32.339 18388-18388/com.bitmovin.player.samples.casting.basic V/DynamiteModule: Dynamite loader version >= 2, using loadModule2NoCrashUtils
2022-12-09 16:04:32.344 18388-18388/com.bitmovin.player.samples.casting.basic I/CastDynamiteModuleImpl: vw created by ClassLoader dalvik.system.DelegateLastClassLoader[DexPathList[[zip file "/data/user_de/0/com.google.android.gms/app_chimera/m/00000155/DynamiteModulesC.apk"],nativeLibraryDirectories=[/data/user_de/0/com.google.android.gms/app_chimera/m/00000155/DynamiteModulesC.apk!/lib/arm64-v8a, /system/lib64, /system_ext/lib64]]].
2022-12-09 16:04:32.396 18388-18388/com.bitmovin.player.samples.casting.basic W/MediaControlChannel: received unexpected error: Invalid Request.
2022-12-09 16:04:32.398 18388-18388/com.bitmovin.player.samples.casting.basic W/MediaQueue: Error fetching queue item ids, statusCode=2001, statusMessage=null

Especially this one :

/MediaQueue: Error fetching queue item ids, statusCode=2001, statusMessage=null

When I’m back to 3.24.2, everything is working.

Why this feature is broken now ?
What I’m missing ?

I’ve noticed that in version 3.25.0 you have :

Integrated changes from ExoPlayer version 2.18.1

maybe it is the reason for that problems ?

Regards

Hi Michal,

Thanks for reaching out. You are not missing anything, this is unfortunately a bug in recent player versions. We are already aware of this issue and are working towards a fix. The problem seems to affect casting of DRM-protected sources only.

The latest Bitmovin Android Player SDK version 3.31.0 was just released and has a fix for the mentioned issue. Please check it out and let us know if you need anything else.

Best,
Lukas

Hi, I’ve hoped that your fix will also have impact on my streaming problems.
In the app I’m developing some videos works fine when casting to Chromecast and some don’t , there is only “CAS Receiver v3 - Stable” displayed on my tv after casting.
I’m receiving error :

  received unexpected error: Invalid Request.
2023-02-16 11:09:52.789 29181-29181 MediaQueue                           
W  Error fetching queue item ids, statusCode=2001, statusMessage=null

I read that this code “2001” is related to CORS problem, that receiver is located in different place than video domain or something like that ? And is also related to DRM protection.

Of course those video works fine inside your player.

Is it true ? Can it be bypassed by adding some additional headers? I also found information that there may be something with receiver code.

Regards

Michal

Hi @michal.rabinski,

unfortunately this warning is not very descriptive but it hints towards an issue on the receiver side.

We are currently working on some improvements regarding logging of cast related issues so the release published next Tuesday might help you.

As this is a different topic than this thread is originally about, would you mind opening a new question, I can try to help with debugging this issue there.

This topic was automatically closed 60 minutes after the last reply. New replies are no longer allowed.

FYI, version 3.32.0 of our player was just released which contains detailed warning events for playback issues on the cast receiver, check it out!