Commit 93ec2c60 authored by AutonomousHansen's avatar AutonomousHansen Committed by Mayank Mittal

Set livestream enabled to false unless it is otherwise specified (#374)

From Isaac `2023.1.0-hotfix.1` to `2023.1.1`, `/app/livestream/enabled`
started to default to True. This breaks our logic w/r/t
`SimulationContext.render()`, which is now treating a headless instance
as one that needs full rendering. This causes problems with multiple
SimulationContext calls, and ultimately this bottoms out with this
[line](https://github.com/isaac-orbit/orbit/blob/670a8c97db645d50a3ea89b06f7366fc2212fc06/source/extensions/omni.isaac.orbit/omni/isaac/orbit/sim/simulation_context.py#L563)
sending us into an infinite rendering cycle from which i.e. unittest
cannot exit.

I fix this problem by setting `/app/livestream/enabled` to explicitly
False in AppLauncher unless otherwise requested. This corrects the hang.

Ultimately, the answer to this is #238, but in the meantime we need a
fix or this is a showstopper for unit testing.

Fixes #323

- Bug fix (non-breaking change which fixes an issue)

- [x] I have run the [`pre-commit` checks](https://pre-commit.com/) with
`./orbit.sh --format`
- [ ] I have made corresponding changes to the documentation
- [x] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] I have run all the tests with `./orbit.sh --test` and they pass
- [x] I have updated the changelog and the corresponding version in the
extension's `config/extension.toml` file
- [x] I have added my name to the `CONTRIBUTORS.md` or my name already
exists there
parent 670a8c97
[package] [package]
# Note: Semantic Versioning is used: https://semver.org/ # Note: Semantic Versioning is used: https://semver.org/
version = "0.10.16" version = "0.10.17"
# Description # Description
title = "ORBIT framework for Robot Learning" title = "ORBIT framework for Robot Learning"
......
Changelog Changelog
--------- ---------
0.10.17 (2024-02-02)
~~~~~~~~~~~~~~~~~~~~
Fixed
^^^^^^
* Fixed carb setting ``/app/livestream/enabled`` to be set as False unless live-streaming is specified
by :class:`omni.isaac.orbit.app.AppLauncher` settings. This fixes the logic of :meth:`SimulationContext.render`,
which depended on the config in previous versions of Isaac defaulting to false for this setting.
0.10.16 (2024-01-29) 0.10.16 (2024-01-29)
~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~
......
...@@ -610,6 +610,8 @@ class AppLauncher: ...@@ -610,6 +610,8 @@ class AppLauncher:
enable_extension("omni.services.streamclient.webrtc") enable_extension("omni.services.streamclient.webrtc")
else: else:
raise ValueError(f"Invalid value for livestream: {self._livestream}. Expected: 1, 2, 3 .") raise ValueError(f"Invalid value for livestream: {self._livestream}. Expected: 1, 2, 3 .")
else:
carb_settings_iface.set_bool("/app/livestream/enabled", False)
# As of IsaacSim 2022.1.1, the ros extension has to be loaded # As of IsaacSim 2022.1.1, the ros extension has to be loaded
# after the streaming extension or it will cause a segfault # after the streaming extension or it will cause a segfault
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment