URL/API Source: Live Data, Media and AI on OBS Made Simple

URL/API Source: Live Data, Media and AI on OBS Made Simple v0.2.5

Supported Bit Versions
  1. 64-bit
Source Code URL
Minimum OBS Studio Version
Supported Platforms
  1. Windows
  2. Mac OS X
  3. Linux
The URL/API Source plugin adds a video source that fetches data from a URL / API endpoint or a local file and displays it as formatted text (HTML, CSS), Image and even Audio. You can build dynamic requests, including sending an image, parse output as JSON, XML, HTML and also plain text response body with a Regex to get just the information you need. Set up a timer to keep refreshing the data to get that live feed effect.

If this plugin has been valuable to you consider adding a ⭐ to the GH repo, rating it here on OBS, subscribing to my YouTube channel, and supporting my work: https://github.com/sponsors/royshil . Check out the Home for Open Source Content Creator AI: https://github.com/occ-ai Join us on Discord !

(YouTube Tutorial) (New Features Tutorial) (HTML Scraping tutorial)

AI in OBS with URL Source - be a 10x streamer & content creator with AI!
Chat with AI, summarize, translate, rephrase, analyze images, generate images, generate speech, etc. Add AI to your live content for engaging with your audience.
Tutorial videos (they're very short):

  • HTTP request types: GET, POST
  • Request headers (for e.g. API Key or Auth token)
  • Request body for POST
  • Dynamic input from a Text or Image source (base64)
  • Output parsing: JSON via JSONPointer & JSONPath, XML/HTML via XPath & XQuery, Regex and CSS selectors
  • Update timer for live updating data
  • Test of the request to find the right parsing
  • Output styling (font, color, etc.) and formatting (via regex post processing)
  • Output Image (via image URL or image data on the response)
  • Output text to external Text Source
  • Output audio to external Media Source
  • Multi-value (array, union) parsed output capture, object unpacking (via Inja)
  • Dynamic input aggregations (time-based, "empty"-based)
Coming soon:
  • Authentication (Basic, Digest, OAuth)
  • Websocket support
  • More parsing options (CSV, etc.)
  • More request types (HTTP PUT / DELETE / PATCH, and GraphQL)
  • More output formats (Markdown, slim, reStructured, HAML, etc.)
  • Video output

Walkthrough of the plugin code with highlights of its internal workings:
(YouTube Code Walkthrough)
  • WhatsApp Image 2023-11-17 at 13.37.53_5b39d038.jpg
    WhatsApp Image 2023-11-17 at 13.37.53_5b39d038.jpg
    128.5 KB · Views: 1,399
  • 1700246865986.png
    105.9 KB · Views: 1,434
  • WhatsApp Image 2023-11-21 at 11.09.41 AM.jpeg
    WhatsApp Image 2023-11-21 at 11.09.41 AM.jpeg
    135.3 KB · Views: 825
  • WhatsApp Image 2023-11-23 at 09.21.18_ebf2adae.jpg
    WhatsApp Image 2023-11-23 at 09.21.18_ebf2adae.jpg
    140.4 KB · Views: 677
First release
Last update
5.00 star(s) 5 ratings

More resources from royshilkrot

Latest updates

  1. v0.2.5 - Bugfixes

    In this release: Fixing temp filename to enable multiple sources mpeg -> mp3 to allow mp3...
  2. v0.2.4 - Aggregation options, dynamic image input resize

    This release adds some exciting new features: Dynamic input image resizing and additional...
  3. v0.2.3 - New Image Input feature, fixing various problems

    In this release we introduce a new feature: Image input (grab the image of any OBS source to use...

Latest reviews

Congratulations on the fantastic work. I tested the plugin on Windows and it works perfectly. However, for application I use Ubuntu 22.04 (XFCE) on VPS at Vultr. I've tried several times to install the plugin but I can't. During installation via terminal, error messages do not appear, but the plugin does not appear in Note. Could someone check and help me resolve it? Thanks.
Great method to create sports overlays. No fancy animations but easily grab API data!
Works great! Just what I needed for our Rumble channel implementation! Thank you @royshilkrot!
Very useful plugin for those familiar with web requests, with a good roadmap also, looking forward for more request type coverage.