Update
There's no time to learn the OBS API for this project and there's no community to gain any assistance. The Discord channel seems to comprise of child-minded aggressors that constantly attack. Therefore I've abandoned this script development for what is now
the best solution for me. May not be suitable for everyone.
Solution - OBS + Virtual DJ
I was able to achieve precisely what was desired (and much more) by implementing the free version of Virtual DJ. The application has a native function that reads file meta data, and the video skin coding is XML markup which provides command syntax to call specific data lines as needed and define the transition method, eg: `
fadein="1500ms" fadeout="1500ms"`. While VDJ will connect to a streaming server,
it is best to use OBS to connect and source VDJ for the media via
Window Capture and
Application Audio Capture This allows the benefit of scene changing and source layering.
The output
The media file title, artist, year, comment fields are read and displayed at start then fade out and shown again X seconds into play back time.
Additional benefits
- AutoMix playlist (seamless crossover)
- Sampler bank
- BPM mixing
- Video effects on the fly (shake, luminance, spectral etc)
- Meta data editor which updates during play
- Lyric editor and on screen scrolling display
- Annotation display by interval during video play
- Microphone ducking and vocal effects
Conclusion
This software streaming playback combination allows for an ideal studio like broadcast
- Producer / director - OBS
Scene changes, advertising overlays, on screen notifications, chat moderation
- Show host - Virtual DJ
Visual and aural stimulation