Рейтинг:2

Как справиться с отсутствующими кодеками gstreamer

флаг af

Я сталкиваюсь с проблемой отсутствия кодеков для популярных видеоконтейнеров, таких как mp4 и avi, как при использовании gstreamer в командной строке, так и при попытке запустить пример кода playbin (подробности для каждого сценария ниже).

Это могут быть отсутствующие пакеты или некоторые настройки, которые необходимо выполнить. Как мне исправить свою среду, чтобы кодеки mp4 и avi работали в gstreamer?

1. С приставкой

Пытаясь запустить свое первое приложение gstreamer playbin, я взял официальную документацию gstreamer. Однако кажется, что независимо от того, какую кодировку видео я выбираю для воспроизведения, декодеры отсутствуют.

я установили ubuntu-ограниченные-дополнения который был предложен в другом месте как универсальное решение для такого рода вопросов, но на самом деле понятия не имею, как установить или настроить отсутствующие декодеры. Возможно, ты сможешь сделать меня мудрее.

Вот код и трассировка ошибки после него:

импорт систем, ОС
импорт ги
gi.require_version('Gst', '1.0')
gi.require_version('Gtk', '3.0')
gi.require_version('GstVideo', '1.0')
из gi.repository импортировать Gst, GObject, Gtk

# Требуется для window.get_xid(), xvimagesink.set_window_handle() соответственно:
из gi.repository импортировать GdkX11, GstVideo

класс GTK_Main (объект):

    защита __init__(сам):
        окно = Gtk.Window(Gtk.WindowType.TOPLEVEL)
        window.set_title("Видеоплеер")
        window.set_default_size (500, 400)
        window.connect("уничтожить", Gtk.main_quit, "WM уничтожить")
        vbox = Gtk.VBox()
        окно.добавить(vbox)
        hbox = Gtk.HBox()
        vbox.pack_start(hbox, Ложь, Ложь, 0)
        self.entry = Gtk.Entry()
        hbox.add (самозапись)
        self.button = Gtk.Button("Старт")
        hbox.pack_start(self.button, Ложь, Ложь, 0)
        self.button.connect("нажал", self.start_stop)
        self.movie_window = Gtk.DrawingArea()
        vbox.add(self.movie_window)
        окно.show_all()

        self.player = Gst.ElementFactory.make("playbin", "игрок")
        автобус = self.player.get_bus()
        bus.add_signal_watch()
        bus.enable_sync_message_emission()
        bus.connect("сообщение", self.on_message)
        bus.connect("sync-сообщение::элемент", self.on_sync_message)

    защита start_stop (я, ш):
        если self.button.get_label() == "Старт":
            путь к файлу = self.entry.get_text().strip()
            если os.path.isfile (путь к файлу):
                путь к файлу = os.path.realpath (путь к файлу)
                self.button.set_label("Стоп")
                self.player.set_property("uri", "file://" + путь к файлу)
                self.player.set_state(Gst.State.PLAYING)
            еще:
                print(f"нет пути к файлу {filepath}")
                self.player.set_state(Gst.State.NULL)
                self.button.set_label("Старт")

    def on_message(я, автобус, сообщение):
        т = сообщение.тип
        если t == Gst.MessageType.EOS:
            self.player.set_state(Gst.State.NULL)
            self.button.set_label("Старт")
        elif t == Gst.MessageType.ERROR:
            self.player.set_state(Gst.State.NULL)
            ошибка, отладка = message.parse_error()
            print("Ошибка: %s" % ошибка, отладка)
            self.button.set_label("Старт")

    def on_sync_message (я, автобус, сообщение):
        если message.get_structure().get_name() == 'подготовить дескриптор окна':
            imagesink = сообщение.src
            imagesink.set_property("соотношение сторон", True)
            imagesink.set_window_handle(self.movie_window.get_property('окно').get_xid())


GObject.threads_init()
Gst.init(Нет)
GTK_Main()
Gtk.main()

Трассировка ошибки:

playbin-example-video.py:72: PyGIDeprecationWarning: начиная с версии 3.11 вызов threads_init больше не требуется. См.: https://wiki.gnome.org/PyGObject/Threading.
      GObject.threads_init()
    playbin-example-video.py:17: PyGTKDeprecationWarning: использование позиционных аргументов с конструктором GObject устарело.Пожалуйста, укажите ключевые слова для "типа" или используйте конструктор класса. См.: https://wiki.gnome.org/PyGObject/InitializerDeprecations.
      окно = Gtk.Window(Gtk.WindowType.TOPLEVEL)
    playbin-example-video.py:27: PyGTKDeprecationWarning: использование позиционных аргументов с конструктором GObject устарело. Пожалуйста, укажите ключевые слова для "метки" или используйте конструктор класса. См.: https://wiki.gnome.org/PyGObject/InitializerDeprecations.
      self.button = Gtk.Button("Старт")
    Ошибка: gst-core-error-quark: в вашей установке GStreamer отсутствует подключаемый модуль. (12) gsturidecodebin.c(988): no_more_pads_full (): /GstPlayBin:player/GstURIDecodeBin:uridecodebin0:
    не найдено подходящих плагинов:
    gstdecodebin2.c(4640): gst_decode_bin_expose (): /GstPlayBin:player/GstURIDecodeBin:uridecodebin0/GstDecodeBin:decodebin0:
    не найдено подходящих плагинов:
    Отсутствует декодер: Audio Video Interleave (AVI) (video/x-msvideo)

Возможно, этот код устарел, мне пришлось преобразовать его в Python 3 после копирования из официальной документации.

я посмотрел на официальный документ для такого рода общей ситуации, но не мог видеть четкий путь, возникающий там.

2. Использование проигрывателя командной строки

Та же проблема с попыткой поиграть ави или же mp4 файлы из команды gstreamer:

$ gst-play-1.0 медиафайл.mp4
$ gst-play-1.0 media_file.avi

В некоторых местах упоминается переменная среды, которую необходимо установить, но немного сложно понять, где были установлены плагины, чтобы указать их в этой переменной среды. Например. Кажется, у меня установлены подходящие пакеты плагинов («базовые», «хорошие» и «плохие»), но каталоги, которые я могу найти, используя где похоже, не включает ничего, кроме двух исполняемых файлов.

Запуск исполняемого файла оттуда:

$ /usr/lib/x86_64-linux-gnu/gstreamer1.0/gstreamer-1.0/gst-плагин-сканер

ничего не возвращает.

Вывод gst-проверить:

$ gst-проверить-1.0 
видеошкала: видеошкала: масштабатор видео
ximagesink: ximagesink: приемник видео
audiotestsrc: audiotestsrc: Источник аудиотеста
аудиомикшер: audiointerleave: AudioInterleave
аудиомикшер: liveadder: AudioMixer
аудиомикшер: аудиомикшер: AudioMixer
audiorate: audiorate: Регулятор скорости звука
объем: объем: объем
videotestsrc: videotestsrc: источник видеотеста
opengl: glfilterglass: стеклянный фильтр OpenGL
opengl: gldeinterlace: фильтр деинтерлейсинга OpenGL
opengl: gltestsrc: источник тестового видео
opengl: glstereosplit: GLstereoSplit
opengl: glviewconvert: Фильтр преобразования OpenGL Multiview/3D
opengl: glfilterapp: фильтр приложений OpenGL
opengl: glshader: фильтр фрагментного шейдера OpenGL
opengl: glcolorscale: цветовая шкала OpenGL
opengl: gleffects_laplacian: демонстрационный эффект Лапласианской свертки
opengl: gleffects_blur: размытие с разделяемым эффектом свертки 9x9
opengl: gleffects_sobel: Эффект обнаружения края Собеля
opengl: gleffects_glow: эффект свечения
opengl: gleffects_sin: весь серый, но красный эффект
opengl: gleffects_xray: светящийся отрицательный эффект
opengl: gleffects_lumaxpro: эффект перекрестной обработки яркости
opengl: gleffects_xpro: Эффект перекрестной обработки
opengl: gleffects_sepia: тонирующий эффект сепии
opengl: gleffects_heat: Эффект тепловой сигнатуры
opengl: gleffects_square: Квадратный эффект
opengl: gleffects_bulge: эффект выпуклости
opengl: gleffects_twirl: эффект закручивания
opengl: gleffects_fisheye: эффект рыбьего глаза
opengl: gleffects_tunnel: Эффект светового туннеля
opengl: gleffects_stretch: Эффект растяжения
opengl: gleffects_squeeze: эффект сжатия
opengl: gleffects_mirror: Зеркальный эффект
opengl: gleffects_identity: Ничего не делать Эффект
opengl: gleffects: эффекты Gstreamer OpenGL
opengl: glfiltercube: кубический фильтр OpenGL
opengl: glsrcbin: Исходная корзина GL
opengl: glsinkbin: GL Sink Bin
opengl: glfilterbin: Корзина фильтра GL
opengl: glcolorbalance: Баланс видео
opengl: glcolorconvert: конвертер цветов OpenGL
opengl: gldownload: загрузчик OpenGL
opengl: glupload: загрузчик OpenGL
opengl: glimagesinkelement: приемник видео OpenGL
opengl: glimagesink: корзина для раковины GL
pbtypes: GstVideoMultiviewFlagsSet (GstDynamicTypeFactory)
typefindfunctions: audio/audible: aa, aax
typefindfunctions: audio/x-xi: xi
typefindfunctions: video/x-pva: pva
typefindfunctions: application/x-ssa: ssa, ass
typefindfunctions: application/octet-stream: без расширений
typefindfunctions: image/x-degas: без расширений
typefindfunctions: image/x-icon: без расширений
typefindfunctions: application/x-yuv4mpeg: без расширений
typefindfunctions: image/vnd.wap.wbmp: без расширений
typefindfunctions: image/vnd.adobe.photoshop: psd
typefindfunctions: application/msword: doc
typefindfunctions: приложение/pdf: pdf
typefindfunctions: audio/x-kss: kss
typefindfunctions: видео/x-ivf: ivf
typefindfunctions: audio/x-sap: sap
typefindfunctions: audio/x-vgm: vgm
typefindfunctions: audio/x-gbs: gbs
typefindfunctions: audio/x-ay: ay
typefindfunctions: audio/x-gym: gym
typefindfunctions: audio/x-nsf: nsf
typefindfunctions: video/vivo: viv
typefindfunctions: application/x-mmsh: без расширений
typefindfunctions: multipart/x-mixed-replace: без расширений
typefindfunctions: video/x-dirac: без расширений
typefindfunctions: application/x-ms-dos-executable: dll, exe, ocx, sys, scr, msstyles, cpl
typefindfunctions: application/x-ar: a
typefindfunctions: application/x-tar: tar
typefindfunctions: application/x-rar: rar
функции поиска типов: изображение/svg+xml: svg
typefindfunctions: приложение/постскриптум: ps
typefindfunctions: audio/x-caf: caf
typefindfunctions: audio/x-wavpack-correction: wvc
typefindfunctions: audio/x-wavpack: wv, wvp
typefindfunctions: audio/x-spc: spc
typefindfunctions: audio/aac: aac, adts, adif, loas
typefindfunctions: application/x-executable: без расширений
typefindfunctions: text/x-cmml: без расширений
typefindfunctions: application/x-ogg-skeleton: без расширений
typefindfunctions: audio/x-celt: без расширений
typefindfunctions: audio/x-speex: без расширений
typefindfunctions: application/x-ogm-text: без расширений
typefindfunctions: application/x-ogm-audio: без расширений
typefindfunctions: application/x-ogm-video: без расширений
typefindfunctions: video/x-theora: без расширений
typefindfunctions: audio/x-vorbis: без расширений
typefindfunctions: audio/x-flac: flac
typefindfunctions: application/x-subtitle-vtt: vtt
typefindfunctions: subtitle/x-kate: без расширений
typefindfunctions: application/x-compress: Z
typefindfunctions: application/zip: zip
typefindfunctions: application/x-gzip: gz
typefindfunctions: application/x-bzip: bz2
typefindfunctions: image/x-sun-raster: ras
typefindfunctions: image/x-xpixmap: xpm
typefindfunctions: image/x-jng: jng
typefindfunctions: видео/x-mng: mng
typefindfunctions: image/x-xcf: xcf
typefindfunctions: audio/x-sid: sid
typefindfunctions: audio/x-sbc: sbc
typefindfunctions: audio/iLBC-sh: ilbc
typefindfunctions: audio/x-amr-wb-sh: amr
typefindfunctions: audio/x-amr-nb-sh: amr
typefindfunctions: video/x-dv: dv, dif
typefindfunctions: видео/x-mve: mve
typefindfunctions: приложение/mxf: mxf
typefindfunctions: video/x-matroska: mkv, mka, mk3d, webm
typefindfunctions: image/x-portable-pixmap: pnm, ppm, pgm, pbm
typefindfunctions: image/x-exr: exr
typefindfunctions: image/webp: webp
typefindfunctions: image/tiff: tif, tiff
typefindfunctions: image/bmp: bmp
typefindfunctions: изображение/png: png
typefindfunctions: image/gif: gif
typefindfunctions: image/jpeg: jpg, jpe, jpeg
typefindfunctions: application/x-ape: ape
typefindfunctions: audio/x-shorten: shn
typefindfunctions: audio/x-rf64: rf64
typefindfunctions: audio/x-w64: w64
typefindfunctions: audio/x-ircam: sf
typefindfunctions: audio/x-sds: sds
typefindfunctions: audio/x-voc: voc
typefindfunctions: audio/x-nist: nist
typefindfunctions: audio/x-paris: paf
typefindfunctions: audio/x-svx: iff, svx
typefindfunctions: audio/x-aiff: aiff, aif, aifc
typefindfunctions: audio/x-wav: wav
typefindfunctions: приложение/xml: xml
typefindfunctions: приложение/ttml+xml: ttml+xml
typefindfunctions: application/smil: smil
typefindfunctions: приложение/sdp: sdp
typefindfunctions: приложение/x-hls: m3u8
typefindfunctions: application/itc: itc
typefindfunctions: text/uri-list: ram
typefindfunctions: text/utf-32: txt
typefindfunctions: text/utf-16: txt
typefindfunctions: text/plain: txt
typefindfunctions: видео/x-flv: flv
typefindfunctions: application/vnd.ms-sstr+xml: без расширений
typefindfunctions: application/dash+xml: mpd, MPD
typefindfunctions: application/x-shockwave-flash: swf, swfl
typefindfunctions: application/x-pn-realaudio: ra, ram, rm, rmvb
typefindfunctions: application/vnd.rn-realmedia: ra, ram, rm, rmvb
typefindfunctions: text/html: htm, html
typefindfunctions: видео/mj2: mj2
typefindfunctions: image/x-jpc: jpc, j2k
typefindfunctions: image/jp2: jp2
typefindfunctions: image/x-quicktime: qif, qtif, qti
typefindfunctions: видео/quicktime: mov, mp4
typefindfunctions: application/x-3gp: 3gp
typefindfunctions: audio/x-m4a: m4a
typefindfunctions: видео/x-nuv: nuv
typefindfunctions: видео/x-h265: h265, x265, 265
typefindfunctions: video/x-h264: h264, x264, 264
typefindfunctions: video/x-h263: h263, 263
typefindfunctions: видео/mpeg4: m4v
typefindfunctions: video/mpeg-элементарно: mpv, mpeg, mpg
typefindfunctions: application/ogg: ogg, oga, ogv, ogm, ogx, spx, anx, axa, axv
typefindfunctions: видео/mpegts: ts, mts
typefindfunctions: video/mpeg-sys: mpe, mpeg, mpg
typefindfunctions: audio/x-gsm: gsm
typefindfunctions: audio/x-dts: dts
typefindfunctions: audio/x-ac3: ac3, eac3
typefindfunctions: audio/mpeg: mp3, mp2, mp1, mpga
typefindfunctions: audio/x-mod: 669, amf, ams, dbm, digi, dmf, dsm, gdm, far, imf, it, j2b, mdl, med, mod, mt2, mtm, okt, psm, ptm, sam, с3м, стм, стх, ульт, умкс, хм
typefindfunctions: audio/x-ttafile: tta
typefindfunctions: application/x-apetag: mp3, ape, mpc, wv
typefindfunctions: application/x-id3v1: mp3, mp2, mp1, mpga, ogg, flac, tta
typefindfunctions: application/x-id3v2: mp3, mp2, mp1, mpga, ogg, flac, tta
typefindfunctions: video/x-fli: flc, fli
typefindfunctions: audio/mobile-xmf: mxmf
typefindfunctions: audio/riff-midi: mid, midi
typefindfunctions: audio/midi: mid, midi
typefindfunctions: audio/x-imelody: imy, ime, imelody
typefindfunctions: video/x-vcd: dat
typefindfunctions: video/x-cdxa: dat
typefindfunctions: audio/qcelp: qcp
typefindfunctions: video/x-msvideo: avi
typefindfunctions: audio/x-au: au, snd
typefindfunctions: audio/x-musepack: mpc, mpp, mp+
typefindfunctions: video/x-ms-asf: asf, wm, wma, wmv
gio: giostreamsrc: источник потока GIO
gio: giostreamsink: приемник потока GIO
gio: giosrc: источник GIO
gio: giosink: приемник GIO
кодирование: encodebin: Корзина кодировщика
сыройпарс: сыройвидеопарсе: сыройвидеопарсе
необработанный разбор: необработанный аудиоразбор: необработанный аудиоразбор
необработанный разбор: невыровненныйвидеопарсе: невыровненныйвидеопарсе
rawparse: невыровненныйaudioparse: невыровненныйaudioparse
воспроизведение: parsebin: Parse Bin
воспроизведение: urisourcebin: чтение URI
воспроизведение: uridecodebin3: декодер URI
воспроизведение: uridecodebin: декодер URI
воспроизведение: decodebin3: Bin 3 декодера
воспроизведение: decodebin: корзина декодера
воспроизведение: streamsynchronizer: Синхронизатор потоков
воспроизведение: subtitleoverlay: наложение субтитров
воспроизведение: playsink: Player Sink
воспроизведение: playbin3: Player Bin 3
воспроизведение: playbin: Player Bin 2
приложение: appsink: AppSink
приложение: appsrc: AppSrc
видеоконвертировать: видеоконвертировать: конвертер цветового пространства
audioresample: audioresample: Аудио ресемплер
tcp: multisocketsink: приемник с несколькими сокетами
tcp: multifdsink: приемник нескольких файловых дескрипторов
tcp: tcpserversrc: источник TCP-сервера
tcp: tcpserversink: приемник TCP-сервера
tcp: tcpclientsrc: источник клиента TCP
tcp: tcpclientsink: приемник TCP-клиента
tcp: socketsrc: источник сокета
coretracers: утечки (GstTracerFactory)
coretracers: статистика (GstTracerFactory)
coretracers: rusage (GstTracerFactory)
coretracers: журнал (GstTracerFactory)
coretracers: задержка (GstTracerFactory)
сумматор: сумматор: сумматор
аудиоконвертер: аудиоконвертер: аудиоконвертер
subparse: ssaparse: Анализатор субтитров SSA
subparse: subparse: парсер субтитров
subparse: subparse_typefind: srt, sub, mpsub, mdvd, smi, txt, dks, vtt
coreelements: streamiddemux: демультиплексор Streamid
coreelements: клапан: Элемент клапана
coreelements: multiqueue: MultiQueue
основные элементы: typefind: TypeFind
coreelements: Тройник: Тройник
coreelements: filesink: File Sink
основные элементы: очередь2: очередь 2
основные элементы: очередь: очередь
coreelements: output-selector: селектор выхода
coreelements: input-selector: селектор входа
основные элементы: личность: личность
coreelements: воронка: фитинг трубы воронки
coreelements: filesrc: Источник файла
coreelements: fdsink: приемник дескриптора файла
coreelements: fdsrc: Источник файлового дескриптора
coreelements: фальшивый раковина: поддельная раковина
coreelements: fakesrc: поддельный источник
coreelements: буфер загрузки: DownloadBuffer
coreelements: dataurisrc: data: исходный элемент URI
основные элементы: concat: Concat
coreelements: capsfilter: CapsFilter
videorate: videorate: Регулятор скорости видео
staticelements: bin: универсальный бин
staticelements: pipe: объект конвейера

Всего: 25 плагинов, 253 функции.

Как мне исправить свою среду, чтобы кодеки mp4 и avi работали в gstreamer?

Выход для apt список gstreamer*:

gstreamer-qapt/focal 3.0.5-1ubuntu1 amd64
gstreamer1.0-adapter-pulseeffects/focal 4.7.1-2 amd64
gstreamer1.0-alsa/focal-updates,focal-security,теперь 1.16.2-4ubuntu0.1 amd64 [установлено]
gstreamer1.0-alsa/focal-updates,focal-security 1.16.2-4ubuntu0.1 i386
gstreamer1.0-autogain-pulseeffects/focal 4.7.1-2 amd64
gstreamer1.0-clutter-3.0/focal,теперь 3.0.27-1 amd64 [установлено]
gstreamer1.0-convolver-pulseeffects/focal 4.7.1-2 amd64
gstreamer1.0-crystalhd/focal 1:0.0~git20110715.fdd2f19-13build1 amd64
gstreamer1.0-crystalhd/focal 1:0.0~git20110715.fdd2f19-13build1 i386
gstreamer1.0-crystalizer-pulseeffects/focal 4.7.1-2 amd64
gstreamer1.0-doc/focal,focal 1.16.2-2 все
gstreamer1.0-espeak/focal 0.5.0-1 amd64
gstreamer1.0-fluendo-mp3/теперь 0.10.32.debian-1 amd64 [установлено, локально]
gstreamer1.0-gl/focal-updates,focal-security,теперь 1.16.2-4ubuntu0.1 amd64 [установлено]
gstreamer1.0-gl/focal-updates,focal-security 1.16.2-4ubuntu0.1 i386
gstreamer1.0-gtk3/focal-updates,focal-security,теперь 1.16.2-1ubuntu2.1 amd64 [установлено,автоматически]
gstreamer1.0-gtk3/focal-updates,focal-security 1.16.2-1ubuntu2.1 i386
gstreamer1.0-libav-dbg/focal 1.16.2-2 amd64
gstreamer1.0-libav-dbg/focal 1.16.2-2 i386
gstreamer1.0-libav/focal, теперь 1.16.2-2 amd64 [установлено, автоматически]
gstreamer1.0-libav/фокус 1.16.2-2 i386
gstreamer1.0-nice/focal, теперь 0.1.16-1 amd64 [установлено, автоматически]
gstreamer1.0-хороший/фокусный 0.1.16-1 i386
gstreamer1.0-omx-bellagio-config/focal 1.16.2-1 amd64
gstreamer1.0-omx-generic-config/focal 1.16.2-1 amd64
gstreamer1.0-omx-универсальный/фокусный 1.16.2-1 amd64
gstreamer1.0-opencv/фокус 1.16.2-2.1ubuntu1 amd64
gstreamer1.0-packagekit/focal-updates,focal-security,теперь 1.1.13-2ubuntu1.1 amd64 [установлено]
gstreamer1.0-pipewire/focal 0.2.7-1 amd64
gstreamer1.0-plugins-bad-dbg/focal 1.16.2-2.1ubuntu1 amd64
gstreamer1.0-plugins-bad-dbg/focal 1.16.2-2.1ubuntu1 i386
gstreamer1.0-plugins-bad-doc/focal,focal 1.16.2-2.1ubuntu1 все
gstreamer1.0-plugins-bad/focal, теперь 1.16.2-2.1ubuntu1 amd64 [установлено, автоматически]
gstreamer1.0-плагины-плохие/фокусные 1.16.2-2.1ubuntu1 i386
gstreamer1.0-plugins-base-apps/focal-updates,focal-security,теперь 1.16.2-4ubuntu0.1 amd64 [установлено]
gstreamer1.0-plugins-base-apps/focal-updates,focal-security 1.16.2-4ubuntu0.1 i386
gstreamer1.0-plugins-base-dbg/focal-updates,focal-security 1.16.2-4ubuntu0.1 amd64
gstreamer1.0-plugins-base-dbg/focal-updates,focal-security 1.16.2-4ubuntu0.1 i386
gstreamer1.0-plugins-base-doc/focal-updates,focal-updates,focal-security,focal-security 1.16.2-4ubuntu0.1 все
gstreamer1.0-plugins-base/focal-updates,focal-security,теперь 1.16.2-4ubuntu0.1 amd64 [установлено]
gstreamer1.0-plugins-base/focal-updates,focal-security 1.16.2-4ubuntu0.1 i386
gstreamer1.0-plugins-good-dbg/focal-updates,focal-security 1.16.2-1ubuntu2.1 amd64
gstreamer1.0-plugins-good-dbg/focal-updates,focal-security 1.16.2-1ubuntu2.1 i386
gstreamer1.0-plugins-good-doc/focal-updates,focal-updates,focal-security,focal-security 1.16.2-1ubuntu2.1 все
gstreamer1.0-plugins-good/focal-updates,focal-security,теперь 1.16.2-1ubuntu2.1 amd64 [установлено]
gstreamer1.0-plugins-good/focal-updates,focal-security 1.16.2-1ubuntu2.1 i386
gstreamer1.0-plugins-rtp/focal 1.14.4.1 amd64
gstreamer1.0-plugins-ugly-dbg/focal 1.16.2-2build1 amd64
gstreamer1.0-plugins-ugly-dbg/focal 1.16.2-2build1 i386
gstreamer1.0-plugins-ugly-doc/focal,focal 1.16.2-2build1 все
gstreamer1.0-plugins-ugly/focal, теперь 1.16.2-2build1 amd64 [установлено, автоматически]
gstreamer1.0-plugins-уродливый/фокусный 1.16.2-2build1 i386
gstreamer1.0-pocketsphinx/focal 0.8.0+real5prealpha+1-6ubuntu4 amd64
gstreamer1.0-pulseaudio/focal-updates,focal-security,теперь 1.16.2-1ubuntu2.1 amd64 [установлено]
gstreamer1.0-pulseaudio/focal-updates,focal-security 1.16.2-1ubuntu2.1 i386
gstreamer1.0-python3-dbg-plugin-loader/focal 1.16.2-2 amd64
gstreamer1.0-python3-плагин-загрузчик/фокус 1.16.2-2 amd64
gstreamer1.0-qt5/focal-updates,focal-security 1.16.2-1ubuntu2.1 amd64
gstreamer1.0-qt5/focal-updates,focal-security 1.16.2-1ubuntu2.1 i386
gstreamer1.0-rtsp-dbg/focal 1.16.2-3 amd64
gstreamer1.0-rtsp/фокус 1.16.2-3 amd64
gstreamer1.0-tools/focal, теперь 1.16.2-2 amd64 [установлено]
gstreamer1.0-tools/focal 1.16.2-2 i386
gstreamer1.0-vaapi-doc/focal,focal 1.16.2-2 все
gstreamer1.0-vaapi/focal, теперь 1.16.2-2 amd64 [установлено, автоматически]
gstreamer1.0-x/focal-updates,focal-security,теперь 1.16.2-4ubuntu0.1 amd64 [установлено]
gstreamer1.0-x/focal-updates,focal-security 1.16.2-4ubuntu0.1 i386
nobody avatar
флаг gh
вы можете добавить `dpkg -l | egrep 'libav|ffmpeg'` на ваш вопрос? У меня нет проблем с воспроизведением mp4 или других файлов с помощью gstreamer.
Рейтинг:0
флаг pl

Возможно, у вас «мешают» другие установки Python, например, от anaconda. пожалуйста, проверьте который - питон и который - питон3. Если вы обнаружите что-то подозрительное, попробуйте исправить это и снова воспроизвести файлы mp4.

Я должен был сделать именно это. В какой-то момент я изменил свой ~/.bashrc для анаконды, в том числе

экспорт PATH="${ANACONDA_DIR}/bin${PATH:+:${PATH}}"

поэтому мой питон по умолчанию был от анаконды. Среди прочего, у него нет модуля ги, и я подозреваю, что это (одна из) основных причин для gstreamer не воспроизводить видео.

Переход на

экспорт PATH="${PATH:+${PATH}:}${ANACONDA_DIR}/bin"

Я восстановил использование /USR/бен/python3, который имел модуль ги в наличии и, возможно, другие. В настоящее время gstreamer воспроизводит видео.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.