• Sheikh Dawood's avatar
    Adds WebRTC livestreaming support with IP specification (#1967) · 7b9b4502
    Sheikh Dawood authored
    # Description
    
    <!--
    Thank you for your interest in sending a pull request. Please make sure
    to check the contribution guidelines.
    
    Link:
    https://isaac-sim.github.io/IsaacLab/main/source/refs/contributing.html
    -->
    
    Currently, the WebRTC livestream is limited to connections within the
    same local network. This change introduces the ability to set a public
    IP address as an environment variable to allow connecting over the
    Internet and allows for livestreaming remotely when using the pre-built
    Isaac Lab container.
    
    Note:
    This may not fix the livestreaming issue when using pip or native
    install of Isaac Lab, as it requires an updated version of the
    livestream extension, which is only available through the docker image
    at the moment. This will be fully fixed in the next version of Isaac
    Sim.
    
    Example: 
    
    Run with `PUBLIC_IP=$(curl -s ifconfig.me) LIVESTREAM=2 ./isaaclab.sh -p
    scripts/demos/quadrupeds.py` then connect using the [Isaac Sim WebRTC
    Streaming
    Client](https://docs.isaacsim.omniverse.nvidia.com/latest/installation/manual_livestream_clients.html#isaac-sim-short-webrtc-streaming-client).
    
    `PUBLIC_IP` can also be set to a private IP address if connecting within
    the same local network.
    
    <!-- As a practice, it is recommended to open an issue to have
    discussions on the proposed pull request.
    This makes it easier for the community to keep track of what is being
    developed or added, and if a given feature
    is demanded by more than one party. -->
    
    ## Type of change
    
    <!-- As you go through the list, delete the ones that are not
    applicable. -->
    
    - Bug fix (non-breaking change which fixes an issue)
    - This change requires a documentation update
    
    ## Screenshots
    
    Please attach before and after screenshots of the change if applicable.
    
    <!--
    Example:
    
    | Before | After |
    | ------ | ----- |
    | _gif/png before_ | _gif/png after_ |
    
    To upload images to a PR -- simply drag and drop an image while in edit
    mode and it should upload the image directly. You can then paste that
    source into the above before/after sections.
    -->
    
    ## Checklist
    
    - [x] I have run the [`pre-commit` checks](https://pre-commit.com/) with
    `./isaaclab.sh --format`
    - [x] I have made corresponding changes to the documentation
    - [x] My changes generate no new warnings
    - [x] I have added tests that prove my fix is effective or that my
    feature works
    - [ ] 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
    
    <!--
    As you go through the checklist above, you can mark something as done by
    putting an x character in it
    
    For example,
    - [x] I have done this task
    - [ ] I have not done this task
    -->
    
    ---------
    Co-authored-by: 's avatarKelly Guo <kellyguo123@hotmail.com>
    7b9b4502
isaaclab.app.rst 4.31 KB