Page 1 of 1

Missing metadata tags when streaming OGG/OPUS as server

Posted: 19 May 2022 18:44
by sdm553
Hi all,

I have spent considerable time researching and reading, before posting, as well as hours of playing with my config file. If this question has already been addressed, please accept my apology in advance for being a mouth breather.

Usage scenario:

I am running several instances of VLC as a SERVER in a Win10/64 environment, streaming audio from remote communications receivers which are sourced from local USB audio devices. I have chosen the OGG container with the OPUS codec. The stream audio works fine. I have chosen OPUS instead of MP3, as OPUS is far superior and I can scale the bitrate right down to about 16kbps without any perceivable loss in quality (this is not high-fidelity audio I'm working with).

What does not work, is any attempt to encode metadata tags into each stream, via command-line options.

What DOES work, is if I stream to a Icecast server. Clients connect to the Icecast server. Metadata tags are then displayed to the clients. But, I do not want to run an Icecast server. It creates extra bloat/middleman for my usage scenario. It also eats up extra RAM/CPU for no particular benefit.

Is there any way to encode metadata into the native OGG/OPUS stream, so VLC clients (who are remotely connecting to my VLC server/stream instances) will see the metadata?

If I run an Icecast server, and feed my Icecast server from the VLC client (sourcing the USB audio device), this command line syntax functions as intended:

Code: Select all

START vlc dshow:// :dshow-adev="Receiver 1" :sout=#transcode{vcodec=none,acodec=opus,ab=32,channels=1,samplerate=48000,scodec=none}:std{access=shout,mux=ogg,dst=//source:password1234@1.2.3.4:12345/rx1} :no-sout-all :sout-keep --sout-ogg-indexintvl=0 --sout-mux-caching=1000 --sout-shout-description="Audio logger 1" --sout-shout-name="Agency Name 1" --sout-shout-genre="Receiver 1"


If I run VLC as a server, offering a OGG/OPUS stream, utilizing the syntax below, the metadata tags are not received by the VLC client(s):

Code: Select all

START vlc dshow:// :dshow-adev="Receiver 1" :sout=#transcode{vcodec=none,acodec=opus,ab=32,channels=1,samplerate=48000,scodec=none}:http{mux=ogg,dst=:12345/rx1.opus} :no-sout-all :sout-keep --sout-ogg-indexintvl=0 --sout-mux-caching=1000 --sout-http-mime="audio/ogg" --meta-title="Agency Name 1" --meta-artist="Receiver 1" --meta-description="Audio Logger 1"

If VLC does not support encoding of metadata information in a OGG/OPUSS stream, is there any technical reason or limitation (relating to the OGG container or OPUS codec) why it cannot be supported in the future via the appropriate command line tags?

Re: Missing metadata tags when streaming OGG/OPUS as server

Posted: 20 May 2022 08:08
by RĂ©mi Denis-Courmont
VLC does not really support encoding metadata in the streaming output as of yet.

Re: Missing metadata tags when streaming OGG/OPUS as server

Posted: 20 May 2022 12:44
by sdm553
VLC does not really support encoding metadata in the streaming output as of yet.
Remi, thank you for taking time to reply.

This is unfortunate, but I'm relieved I was not doing something wrong, or missing something in my command syntax. I do very respectfully recommend that consideration be given to implementing metadata tags for OGG/OPUS streaming in the future. It would be a great feature.

Thank you to the VLC team for making a useful, free media player for so many years. I've been using it since at least 2005-2006.