XBVR Guide - Host your own Video/Funscript streaming with Images, Previews and More!

Trying to get this working but it is not playing nice with me. When i try to install it nothing happens. when i check the logs on docker and on windows it just shows time="2025-06-02T18:18:32Z" level=info msg="visiting https://site-api.project1service.com/v2/releases?type=scene&limit=24&offset=106600" with the offset just increasing.

the localhost isnt running and neither is http://127.0.0.1:9999/. Any help would be appriciated.

You should see something like…

time="2025-06-02T18:26:11Z" level=info msg="Migration did run successfully"
time="2025-06-02T18:26:13Z" level=info msg="Starting router "
time="2025-06-02T18:26:13Z" level=info msg="Added realm: default"
time="2025-06-02T18:26:13Z" level=info msg="XBVR 0.4.33 (build date 2025-01-19T14:49:38Z) starting..."

Sounds like you have something wonky going on with your container. Are you using the Docker Compose from the xbvr wiki? It is setup for MariaDB - not the built-in SQLite DB - but would be a good starting point.

i just copied and pasted the docker container on the github page on my linux machine after the windows one also was just doing the same thing. Looking through the logs at the start it says ffprobe is not found in the $PATH which is weird since it says it should auto install with the container.

The ffprobe message is a normal and can be safely ignored.

The Docker Compose from this page:

required MariaDB rather than using the built-in SQLite DB. If that’s what you used and you don’t have MariaDB setup then that’s why it isn’t working right.

Hey everyone, After years of struggling with XBVR, I finally got everything working—including the funscripts and VR videos. The only issue I’m having now is with 2D videos.

When I create a custom scene and match the funscript to it, the 2D videos show up stretched in my VR headset, almost like XPVR is trying to process them as VR videos. I’ve been trying to fix this for a few days now, but I can’t figure out what I’m doing wrong.

If anyone knows how to fix this, I’d really appreciate the help. Thanks in advance!

There are two ways to fix this.

  1. Change the settings in your video player. HereSphere has a ā€œPerspectiveā€ video projection setting, which puts the video on a virtual theater screen. Perfect for 2D content.
  2. The better alternative is to name any 2D files with _FLAT on the end before importing into xbvr. e.g. my-sexy-video_FLAT.mp4. This tells xbvr the video is 2D and it will both generate previews correctly for the scene and send the information to HereSphere so the video is automatically played correctly.

XBVR is primarily for VR and not 2D. You should be able to toggle over to the correct format in your player of choice when you start your 2D video, but there would not be a global way to correct it to my knowledge short of relying heavily on tags. That’s the primary reason I moved over to Stash several years back; it can handle both 2D and VR.

xbvr is focused on VR content to be sure. With the addition of Stash scraping support you can just as easily curate 2D content in xbvr.

Check my post immediate above yours that explains how to tag 2D videos for easy playback with xbvr and HereSphere. Hint: _FLAT.

I found the solution to this. The problem is that XBVR is being blocked from accessing that site. Depending on your location, a VPN might help.

I just got this working as a docker container in my stack, let me know if you want my docker compose for it.

I had actually been running my setup via docker at the time of writing this guide, but didnt have time to write out the full scope of docker deployment instructions to a degree I’d be happy with/wouldn’t confuse more novice users.

I have since moved over to LXC which has further delayed my writing of a docker-based guide so please feel free to post your compose file and any details which folks might find helpful here so those interested can follow along!

1 Like

Quick docker compose I used to get it working with my personal stack. I know it runs but i’m far from an expert so use it as a template but not a direct copy paste.

For more information about docker compose files and how to bring up a docker stack see this official documentation.

Click to view
xbvr:
  image: ghcr.io/xbapps/xbvr:latest
  container_name: xbvr
  restart: unless-stopped
  privileged: true
  network_mode: host 
#^ I was unable to get this working routed through gluetun, this will route traffic
#directly through your ISP without a VPN setup outside docker
  logging:
    driver: "json-file"
    options:
      max-file: "10"
      max-size: "2m"
  environment:
    - PUID=${PUID:?err}
    - PGID=${PGID:?err}
    - TZ=${TIMEZONE:?err}
    - STASH_PORT=${PORT_FOR_XBVR:?err}
  volumes:
    - ${FOLDER_FOR_DATA:?err}/xbvr:/root/.config/
    - ${FOLDER_FOR_MEDIA:?err}:/data

env variables I included in .env

PORT_FOR_XBVR=9999 #or whatever you want, only 9999 worked for me though
PUID=1000
PGID=1000
TIMEZONE=yourCountry/yourCity
FOLDER_FOR_DATA=path/to/store/config/data
FOLDER_FOR_MEDIA=path/to/your/videos
1 Like

Hi i’m new to this but i downloaded my videos off of eporner and there is a massive mix of videos from different studios and many under different names. is the 2nd step necessary?

You either need to set up scrapers and match your scenes or create a manual entry for each scene or else XBVR won’t have anything to show you. Scrapers is by far the easier path of you have lots of files.

Bear in mind XBVR is really only meant for VR(3D) scenes. 2d works but you have to create manual scene entries for them or set up a stashdb scraper which is beyond the scope of this guide.

Anyone knows if it’s possible to remove the ā€œLink to stashdbā€ button?

1 Like

Hi, i am now up and running with this app/library, but have someone solved the NaughtyAmerica scrape issue? I have so many videos&scripts from that page. Sad that like half of all videos not showing up

Naughty America have some anti bot measures so you can only get some of the scenes.
The work around is one of the community members have an export of naughty america scenes that you can import into your instance.
Download this from https://xbvr.org/navr then go to options data import / export and import this file.
You should then go to the scraper settings and enable limited scraping and it should just try and get the new scenes.
Join the xbvr discord and see the #scrapers-and-metadata channel.

1 Like

Thanks :)

I seem to get stuck trying to connect to the deovr on my headset, idk if i have the wrong IP but there seems to be like a million that look right. i tried the 127 one for the site and my wifi and my pc i think!

looks like a dead website