ubuntuusers.de

VLC 3.0.21 und Opus 5.1

Status: Gelöst | Ubuntu-Version: Kein Ubuntu
Antworten |

Kreuzschnabel

Anmeldungsdatum:
12. Dezember 2011

Beiträge: 1500

Moinsen, VLC steht in den Ubuntu-Repos noch auf v3.0.20, während Debian (inkl. stable) schon auf die letzte Woche erschienene 3.0.21 upgedatet hat. Seit diesem Update spielen meine Debiane keine Audiostreams mehr ab, die

  • mit Opus kodiert sind

  • 6 Audiokanäle haben (5.1).

Opus 2.0-kanalig (normal stereo) läuft, andere Formate (etwa AAC) mit 5.1 laufen auch, aber genau diese Konfig (in der die meisten Videos meiner Sammlung vorliegen) spielt nicht mehr.

Mit Ubuntu und v3.0.20 (bzw. 3.0.16 auf 22.04) läuft noch alles klaglos, weshalb mein Medienabspielrechner jetzt vorläufig unter Kubuntu 22.04 läuft, in der Hoffnung, dass das VLC-Update hier erst nach einem Patch vorgenommen wird ☺

--ks

tomtomtom Team-Icon

Supporter
Avatar von tomtomtom

Anmeldungsdatum:
22. August 2008

Beiträge: 55380

Wohnort: Berlin

Kreuzschnabel schrieb:

Mit Ubuntu und v3.0.20 (bzw. 3.0.16 auf 22.04) läuft noch alles klaglos, weshalb mein Medienabspielrechner jetzt vorläufig unter Kubuntu 22.04 läuft, in der Hoffnung, dass das VLC-Update hier erst nach einem Patch vorgenommen wird ☺

VLC bekommt bei Ubuntu in der Regel überhaupt kein Update, 3.0.21 sollte also nur in 24.10 kommen (und liegt da auch schon seit 11.06.2024).

trollsportverein

Avatar von trollsportverein

Anmeldungsdatum:
21. Oktober 2010

Beiträge: 4886

Es gibt das PPA von Panda Jim:

Dort gibt es zur Zeit VLC DEB-Pakete in Version 3.0.21. Bei dem funktioniert aber die Hardwarebeschleunigung nicht, aber die funktioniert auch nicht beim VLC aus universe. mpv ist besser, da funktioniert die Nvidia NVENC Hardwarebeschleunigung.

Was Video mit 6 Kanal Opus Audio angeht, da müsstest Du mal einen Link auf eine Testdatei geben. Bin aber nicht wirklich sicher, ob ich den Unterschied merken würde. Mein Kopf hat nur zwei Ohren, und mein Bluetooth-Kopfhörer nur zwei Ohrmuscheln. Aber mpv kann extrastereo, das finde ich beim Video gucken angenehm.

Kreuzschnabel

(Themenstarter)

Anmeldungsdatum:
12. Dezember 2011

Beiträge: 1500

trollsportverein schrieb:

Was Video mit 6 Kanal Opus Audio angeht, da müsstest Du mal einen Link auf eine Testdatei geben.

Nicht vor heute nachmittag.

Bin aber nicht wirklich sicher, ob ich den Unterschied merken würde.

Den Unterschied zwischen „hör was“ und „hör nix“ hörst du garantiert ☺

Mein Kopf hat nur zwei Ohren, und mein Bluetooth-Kopfhörer nur zwei Ohrmuscheln. Aber mpv kann extrastereo, das finde ich beim Video gucken angenehm.

VLC hat bei 5.1-Audio einen speziellen Kopfhörer-Mix mit sehr räumlichem Klang. Ist also auch dann für was gut, wenn man keine 5.1-Lautsprecheranlage hat.

--ks

trollsportverein

Avatar von trollsportverein

Anmeldungsdatum:
21. Oktober 2010

Beiträge: 4886

Nachtrag: das ist ja weird, der 64-Bit VLC für Windows macht Hardwarebeschleungigung mit Nvidia Grafik unter Wine (Version 9.10~noble-1) auf meinen Kubuntu Noble Numbat.

7z auspacken und in der Wine Bottle platzieren. 😎 Einstellungen im Windows-VLC: "OpenGL für Windows", und bei den Codecs die Hardwarebeschleunigung auf automatisch einstellen.

trollsportverein

Avatar von trollsportverein

Anmeldungsdatum:
21. Oktober 2010

Beiträge: 4886

Kreuzschnabel schrieb:

Opus 2.0-kanalig (normal stereo) läuft, andere Formate (etwa AAC) mit 5.1 laufen auch, aber genau diese Konfig (in der die meisten Videos meiner Sammlung vorliegen) spielt nicht mehr.

Sag mal, hast Du Ambisonic Pakete installiert? Ich bin nämlich gerade hier drüber gestolpert:

Kreuzschnabel

(Themenstarter)

Anmeldungsdatum:
12. Dezember 2011

Beiträge: 1500

trollsportverein schrieb:

Sag mal, hast Du Ambisonic Pakete installiert?

Nicht wirklich …

volker@marvin:~$ dpkg -l | grep ambi
volker@marvin:~$ 

--ks

shinichi

Anmeldungsdatum:
14. März 2008

Beiträge: 735

Wohnort: Lausitz + Honshu

Ist mpv keine Option?

trollsportverein

Avatar von trollsportverein

Anmeldungsdatum:
21. Oktober 2010

Beiträge: 4886

Kreuzschnabel schrieb:

trollsportverein schrieb:

Sag mal, hast Du Ambisonic Pakete installiert?

Nicht wirklich …

volker@marvin:~$ dpkg -l | grep ambi
volker@marvin:~$ 

Dann probiere doch mal aus, ob der VLC dann den Opus Ambisonic Support hat, wenn man die passenden Ambisonic Pakete installiert. Bei mir auf Noble Numbat gäbe es da einige:

apt-cache search 'ambisonic'

iem-plugin-suite-standalone - IEM's spatialization suite - standalone
iem-plugin-suite-vst - IEM's spatialization suite - VST2 plugins
libambix-dev - AMBIsonics eXchange library (development files)
libambix-doc - AMBIsonics eXchange library (documentation)
libambix-utils - AMBIsonics eXchange library (utilities)
libambix0 - AMBIsonics eXchange library
pd-ambix - AMBIsonics eXchange objects for Pure Data
pd-iemambi - Pd-objects for Ambisonics sound spatialization
soundscaperenderer - tool for real-time spatial audio reproduction
soundscaperenderer-common - tool for real-time spatial audio reproduction (common-files)
soundscaperenderer-nox - tool for real-time spatial audio reproduction (without X support)
aeolus - Synthetischer Orgelemulator
amb-plugins - LADSPA-Erweiterungen für Klangfelder (Ambisonics)
ambdec - Ambisonic-Dekodierer für erste und zweite Ordnung
libspatialaudio-dev - library for ambisonic encoding and decoding (development files)
libspatialaudio0t64 - library for ambisonic encoding and decoding (runtime files)
multimedia-ambisonics - Pakete für die Arbeit mit 3D-Raumklang (Ambisonics)
tetraproc - Programm zur Verarbeitung von Ambisonics-Raumklangaufnahmen
zita-rev1 - Professioneller Audio-Halleffekt

Vielleicht bleibt dann auch die Opus 5.1 Ausgabe dann nicht mehr stumm?

Kreuzschnabel

(Themenstarter)

Anmeldungsdatum:
12. Dezember 2011

Beiträge: 1500

shinichi schrieb:

Ist mpv keine Option?

Sogar mplayer ist eine Option, und damit geht’s – der kann ja mit hrtf auch eine spezielle Surround-Kopfhörermischung bauen, wie ich gerade erst gelernt habe.

Aber ich hab mich so an VLC gewöhnt ☺

trollsportverein schrieb:

Was Video mit 6 Kanal Opus Audio angeht, da müsstest Du mal einen Link auf eine Testdatei geben.

Der erste bleibt in VLC 3.0.21 stumm, egal in welchem Audiomodus. Unter Werkzeuge > Codec-Informationen > Codec zeigt er einen Opus-Stream, aber ohne Channel-Layout. Der zweite ist in VLC 3.0.21 einwandfrei abspielbar (Audio beginnt nach 5 Sekunden).

Kreuzschnabel

(Themenstarter)

Anmeldungsdatum:
12. Dezember 2011

Beiträge: 1500

trollsportverein schrieb:

Dann probiere doch mal aus, ob der VLC dann den Opus Ambisonic Support hat, wenn man die passenden Ambisonic Pakete installiert.

Hab testweise multimedia-ambisonics installiert, das hat einen ganzen Zoo von Abhängigkeiten im Schlepptau. Aber keine Änderung.

--ks

trollsportverein

Avatar von trollsportverein

Anmeldungsdatum:
21. Oktober 2010

Beiträge: 4886

Die 1.mkv Datei mit dem Opus 5.1 bleibt auch bei mir stumm, auf Noble Numbat mit dem VLC 3.0.21 aus dem Panda Jim PPA.

Ich habe mir dann mal den VLC 3.0.21 Sourcecode geholt und geguckt, was ein Eigenbau macht, aber Pustekuchen! Der baut gar nicht erst durch, wegen Audiochannel Fehler. Hier ein Auszug, ab zwei Zeilen vor dem ersten auftreten der Audiochannel Fehler:

  CC       codec/avcodec/libavcodec_plugin_la-subtitle.lo
  CC       codec/avcodec/libavcodec_plugin_la-audio.lo
codec/avcodec/audio.c: In function ‘OpenAudioCodec’:
codec/avcodec/audio.c:142:8: error: ‘AVCodecContext’ has no member named ‘channels’
  142 |     ctx->channels = p_dec->fmt_in.audio.i_channels;
      |        ^~
codec/avcodec/audio.c: In function ‘DecodeBlock’:
codec/avcodec/audio.c:399:20: error: ‘AVCodecContext’ has no member named ‘channels’
  399 |             if( ctx->channels <= 0 || ctx->channels > INPUT_CHAN_MAX
      |                    ^~
codec/avcodec/audio.c:399:42: error: ‘AVCodecContext’ has no member named ‘channels’
  399 |             if( ctx->channels <= 0 || ctx->channels > INPUT_CHAN_MAX
      |                                          ^~
In file included from ../include/vlc_common.h:1034,
                 from codec/avcodec/audio.c:34:
codec/avcodec/audio.c:403:30: error: ‘AVCodecContext’ has no member named ‘channels’
  403 |                           ctx->channels, ctx->sample_rate );
      |                              ^~
../include/vlc_messages.h:79:23: note: in definition of macro ‘msg_Generic’
   79 |             __func__, __VA_ARGS__)
      |                       ^~~~~~~~~~~
codec/avcodec/audio.c:402:17: note: in expansion of macro ‘msg_Warn’
  402 |                 msg_Warn( p_dec, "invalid audio properties channels count %d, sample rate %d",
      |                 ^~~~~~~~
codec/avcodec/audio.c: In function ‘ConvertAVFrame’:
codec/avcodec/audio.c:487:55: error: ‘AVCodecContext’ has no member named ‘channels’
  487 |         p_block = block_Alloc(frame->linesize[0] * ctx->channels);
      |                                                       ^~
codec/avcodec/audio.c:490:35: error: ‘AVCodecContext’ has no member named ‘channels’
  490 |             const void *planes[ctx->channels];
      |                                   ^~
codec/avcodec/audio.c:491:36: error: ‘AVCodecContext’ has no member named ‘channels’
  491 |             for (int i = 0; i < ctx->channels; i++)
      |                                    ^~
codec/avcodec/audio.c:495:32: error: ‘AVCodecContext’ has no member named ‘channels’
  495 |                             ctx->channels, p_dec->fmt_out.audio.i_format);
      |                                ^~
codec/avcodec/audio.c:490:25: warning: unused variable ‘planes’ [-Wunused-variable]
  490 |             const void *planes[ctx->channels];
      |                         ^~~~~~
codec/avcodec/audio.c:514:56: error: ‘AVCodecContext’ has no member named ‘channels’
  514 |                                  p_block->p_buffer, ctx->channels,
      |                                                        ^~
codec/avcodec/audio.c: In function ‘SetupOutputFormat’:
codec/avcodec/audio.c:583:55: error: ‘AVCodecContext’ has no member named ‘channels’
  583 |     if( p_sys->i_previous_channels == p_sys->p_context->channels &&
      |                                                       ^~
codec/avcodec/audio.c:584:55: error: ‘AVCodecContext’ has no member named ‘channel_layout’; did you mean ‘ch_layout’?
  584 |         p_sys->i_previous_layout == p_sys->p_context->channel_layout )
      |                                                       ^~~~~~~~~~~~~~
      |                                                       ch_layout
codec/avcodec/audio.c:588:54: error: ‘AVCodecContext’ has no member named ‘channels’
  588 |         p_sys->i_previous_channels = p_sys->p_context->channels;
      |                                                      ^~
codec/avcodec/audio.c:589:54: error: ‘AVCodecContext’ has no member named ‘channel_layout’; did you mean ‘ch_layout’?
  589 |         p_sys->i_previous_layout = p_sys->p_context->channel_layout;
      |                                                      ^~~~~~~~~~~~~~
      |                                                      ch_layout
codec/avcodec/audio.c:597:27: error: ‘AVCodecContext’ has no member named ‘channel_layout’; did you mean ‘ch_layout’?
  597 |         p_sys->p_context->channel_layout ? p_sys->p_context->channel_layout :
      |                           ^~~~~~~~~~~~~~
      |                           ch_layout
codec/avcodec/audio.c:597:62: error: ‘AVCodecContext’ has no member named ‘channel_layout’; did you mean ‘ch_layout’?
  597 |         p_sys->p_context->channel_layout ? p_sys->p_context->channel_layout :
      |                                                              ^~~~~~~~~~~~~~
      |                                                              ch_layout
codec/avcodec/audio.c:598:9: error: implicit declaration of function ‘av_get_default_channel_layout’ [-Wimplicit-function-declaration]
  598 |         av_get_default_channel_layout( p_sys->p_context->channels );
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
codec/avcodec/audio.c:598:56: error: ‘AVCodecContext’ has no member named ‘channels’
  598 |         av_get_default_channel_layout( p_sys->p_context->channels );
      |                                                        ^~
codec/avcodec/audio.c:603:46: error: ‘AVCodecContext’ has no member named ‘channels’
  603 |          && i_channels_src < p_sys->p_context->channels; i++ )
      |                                              ^~
codec/avcodec/audio.c:609:47: error: ‘AVCodecContext’ has no member named ‘channels’
  609 |         if( i_channels_src != p_sys->p_context->channels && b_trust )
      |                                               ^~
codec/avcodec/audio.c:641:59: error: ‘AVCodecContext’ has no member named ‘channels’
  641 |         p_dec->fmt_out.audio.i_channels = p_sys->p_context->channels;
      |                                                           ^~
  CC       codec/avcodec/libavcodec_plugin_la-va.lo
make[4]: *** [Makefile:21884: codec/avcodec/libavcodec_plugin_la-audio.lo] Fehler 1

Die müssen den VLC 3.0.21 Code wohl patched haben, um überhaupt bauen zu können. Dabei scheint dann wohl die Opus 5.1 Fähigkeit hinten runter gefallen zu sein. ¯\_(ツ)_/¯

Kreuzschnabel

(Themenstarter)

Anmeldungsdatum:
12. Dezember 2011

Beiträge: 1500

Nachtrag: Das aktuelle nightly, von https://artifacts.videolan.org/vlc-3.0/nightly-snap/ als Snap erhältlich, tuts tadellos. Dann wirds das nächste Update wohl auch tun.

Um im gesnappten VLC eine Datei von externer Festplatte öffnen zu können, war nur noch ein

sudo snap connect vlc:removable-media

erforderlich.

--ks

tomtomtom Team-Icon

Supporter
Avatar von tomtomtom

Anmeldungsdatum:
22. August 2008

Beiträge: 55380

Wohnort: Berlin

trollsportverein schrieb:

Die müssen den VLC 3.0.21 Code wohl patched haben, um überhaupt bauen zu können.

Kann man ja nachsehen. 😉

wget https://launchpad.net/~ubuntuhandbook1/+archive/ubuntu/vlc/+sourcefiles/vlc/3.0.21-0build6~ubuntu24.04/vlc_3.0.21-0build6~ubuntu24.04.debian.tar.xz
tar -xf vlc_3.0.21-0build6~ubuntu24.04.debian.tar.xz
$ ls -aluh debian/patches/
insgesamt 20K
drwxr-xr-x 2 tomx3 users 4,0K 12. Jul 21:20 .
drwxr-xr-x 6 tomx3 users 4,0K 12. Jul 21:20 ..
-rw-r--r-- 1 tomx3 users  486 12. Jul 21:20 0001-configure-fix-linking-on-RISC-V-ISA.patch
-rw-r--r-- 1 tomx3 users 2,1K 12. Jul 21:20 0002-Do-not-generate-cache-during-build.patch
-rw-r--r-- 1 tomx3 users   93 12. Jul 21:20 series
$

Also nö, nix gepatched, was nicht schon ewig gepatched würde.

Ich hab in meinem VLC-PPA die selben beiden plus einen wegen t64, ließ sich dann auch alles bauen.

Im PKGBUILD von Arch LInux findet sich übrigens folgender netter Kommentar:

  'ffmpeg4.4'  # NOTE: switch to ffmpeg4.4, as ffmpeg >= 5 requires extensive changes disabling VAAPI (only supported with vlc >= 4)

trollsportverein

Avatar von trollsportverein

Anmeldungsdatum:
21. Oktober 2010

Beiträge: 4886

tomtomtom schrieb:

Im PKGBUILD von Arch LInux findet sich übrigens folgender netter Kommentar:

  'ffmpeg4.4'  # NOTE: switch to ffmpeg4.4, as ffmpeg >= 5 requires extensive changes disabling VAAPI (only supported with vlc >= 4)

Kein Wunder, dass VLC auf aktueller (K]Ubuntu Version nicht allzu gut läuft. Das DEB-Paket für Noble Numbat ist bei FFmpeg Version 7:6.1.1-3ubuntu5.

Antworten |