CastCompanionLibrary Android: не удалось запустить воспроизведение мультимедиа

Я хочу привести поток к Cast Device, используя Cast Companion Library Android. Я пробую URL, но когда я нажимаю кнопку воспроизведения, появляется сообщение об ошибке "Не удалось запустить воспроизведение мультимедиа". Я не знаю почему.. Вы можете мне помочь?

Вот мой код:

public class MainActivity extends AppCompatActivity {

VideoCastManager mCastManager;
MediaInfo mediaInfo;
String uriString = "someURL=m3u8";

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    BaseCastManager.checkGooglePlayServices(this);

    CastConfiguration options = new CastConfiguration.Builder(this.getString(R.string.app_id)) 
            .enableAutoReconnect()
            .enableCaptionManagement()
            .enableDebug()
            .enableLockScreen()
            .enableWifiReconnection()
            .enableNotification()
            .addNotificationAction(CastConfiguration.NOTIFICATION_ACTION_PLAY_PAUSE, true)
            .addNotificationAction(CastConfiguration.NOTIFICATION_ACTION_DISCONNECT, true)
            .build();

    VideoCastManager.initialize(this, options);
    mCastManager = VideoCastManager.getInstance();

    MediaMetadata mMediaMetadata = new MediaMetadata(MediaMetadata.MEDIA_TYPE_MOVIE);

    mediaInfo = new MediaInfo.Builder(
            uriString)
            .setStreamType(MediaInfo.STREAM_TYPE_BUFFERED)
            .setContentType("application/x-mpegURL")
            .setMetadata(mMediaMetadata)
            .build();


    CastConsumer castConsumer = new CastConsumer();
    mCastManager.addVideoCastConsumer(castConsumer);       mCastManager.startVideoCastControllerActivity(getApplicationContext(),mediaInfo,0,true);
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    super.onCreateOptionsMenu(menu);
    getMenuInflater().inflate(R.menu.media_route, menu);
    mCastManager.addMediaRouterButton(menu, R.id.media_route_menu_item);
    return true;
}

private class CastConsumer extends VideoCastConsumerImpl {
    @Override
    public void onApplicationConnected(ApplicationMetadata appMetadata, String sessionId, boolean wasLaunched) {
        mCastManager.startVideoCastControllerActivity(MainActivity.this, mediaInfo, 0, false);
    }
}

}

0 ответов

Другие вопросы по тегам