Почему ubuntu-limited-extras хочет удалить некоторые пакеты libav?

9

Когда я пытаюсь установить «Ubuntu Limited Extras» в «Ubuntu Software Center», появляется диалоговое окно с предупреждением, в котором говорится, что следующие элементы должны быть удалены:

libavcodec53
libavutil51

Почему? И если я решу установить «Ubuntu с ограничениями», что я потеряю?

PS: Кажется, я заметил, что libavcodec53 прошёл мимо, когда моя ежедневная сборка пакета codeblocks была установлена ​​... так что это одна из возможностей. Смогу ли я нарушить свою среду разработки программного обеспечения, если я установлю «дополнения с ограниченным доступом ubuntu»?

Или эти пакеты нужно удалить, потому что они включены в «Ubuntu с ограничениями»? Если так, то почему диалог не упоминает об этом (и устраняет беспокойство и путаницу)?

PS: вывод , генерируемый apt-get -s install ubuntu-restricted-extrasIS

NOTE: This is only a simulation!
      apt-get needs root privileges for real execution.
      Keep also in mind that locking is deactivated,
      so don't depend on the relevance to the real current situation!
Reading package lists...
Building dependency tree...
Reading state information...
The following extra packages will be installed:
  cabextract gstreamer0.10-plugins-bad-multiverse libavcodec-extra-53
  libavutil-extra-51 libfaac0 libmjpegtools-1.9 libopenjpeg2 libquicktime2
  ttf-mscorefonts-installer unrar
Suggested packages:
  libfaad0
The following packages will be REMOVED:
  libavcodec53 libavutil51
The following NEW packages will be installed:
  cabextract gstreamer0.10-plugins-bad-multiverse libavcodec-extra-53
  libavutil-extra-51 libfaac0 libmjpegtools-1.9 libopenjpeg2 libquicktime2
  ttf-mscorefonts-installer ubuntu-restricted-extras unrar
0 upgraded, 11 newly installed, 2 to remove and 0 not upgraded.
Remv libavutil51 [4:0.8.3-0ubuntu0.12.04.1] [libswscale2:amd64 libavcodec53:amd64 gstreamer0.10-ffmpeg:amd64 libpostproc52:amd64 libavformat53:amd64 ]
Inst libavutil-extra-51 (4:0.8.3ubuntu0.12.04.1 Ubuntu:12.04/precise-updates [amd64])
Conf libavutil-extra-51 (4:0.8.3ubuntu0.12.04.1 Ubuntu:12.04/precise-updates [amd64])
Inst libopenjpeg2 (1.3+dfsg-4 Ubuntu:12.04/precise [amd64])
Remv libavcodec53 [4:0.8.3-0ubuntu0.12.04.1] [gstreamer0.10-ffmpeg:amd64 libavformat53:amd64 ]
Inst libavcodec-extra-53 (4:0.8.3ubuntu0.12.04.1 Ubuntu:12.04/precise-updates [amd64])
Conf libopenjpeg2 (1.3+dfsg-4 Ubuntu:12.04/precise [amd64])
Conf libavcodec-extra-53 (4:0.8.3ubuntu0.12.04.1 Ubuntu:12.04/precise-updates [amd64])
Inst cabextract (1.4-1 Ubuntu:12.04/precise [amd64])
Inst ttf-mscorefonts-installer (3.4ubuntu3 Ubuntu:12.04/precise [all])
Inst libfaac0 (1.28-0ubuntu2 Ubuntu:12.04/precise [amd64])
Inst libquicktime2 (2:1.2.3-4build2 Ubuntu:12.04/precise [amd64])
Inst libmjpegtools-1.9 (1:1.9.0-0.5ubuntu7 Ubuntu:12.04/precise [amd64])
Inst gstreamer0.10-plugins-bad-multiverse (0.10.21-1 Ubuntu:12.04/precise [amd64])
Inst ubuntu-restricted-extras (57 Ubuntu:12.04/precise [amd64])
Inst unrar (1:4.0.3-1 Ubuntu:12.04/precise [amd64])
Conf cabextract (1.4-1 Ubuntu:12.04/precise [amd64])
Conf ttf-mscorefonts-installer (3.4ubuntu3 Ubuntu:12.04/precise [all])
Conf libfaac0 (1.28-0ubuntu2 Ubuntu:12.04/precise [amd64])
Conf libquicktime2 (2:1.2.3-4build2 Ubuntu:12.04/precise [amd64])
Conf libmjpegtools-1.9 (1:1.9.0-0.5ubuntu7 Ubuntu:12.04/precise [amd64])
Conf gstreamer0.10-plugins-bad-multiverse (0.10.21-1 Ubuntu:12.04/precise [amd64])
Conf ubuntu-restricted-extras (57 Ubuntu:12.04/precise [amd64])
Conf unrar (1:4.0.3-1 Ubuntu:12.04/precise [amd64])
honestann
источник
Пожалуйста, отредактируйте ваш вопрос, чтобы включить вывод apt-get -s install ubuntu-restricted-extras. (Обратите внимание на отсутствиеsudo и -sфлаг перед этим install. Это имитирует установку, а не фактически ее выполняет.)
Элия ​​Каган
Вот вывод: ubuntuone.com/5iqxCwLHrg0AdF4zipIfAJ
honestann

Ответы:

11

Потому что вместо этих версий будут установлены -extra версии этих библиотек, чтобы обеспечить дополнительную функциональность

Установка ubuntu- limited -extras , среди прочего, заменит libavcodec53 / libavutil51 на libavcodec-extra-53и libavutil-extra-51.

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

Основным отличием является добавление кодеров для MP3, AAC, H.264 и Xvid.

Быстрая разница между версиями, avconvвключенными в обычные / дополнительные библиотеки, показала, что основным отличием является добавление функциональности кодирования (создание) для следующих кодеков / форматов:

  1. MP3 аудио
  2. AAC аудио
  3. AMR широкополосный звук
  4. Видео H.264
  5. Xvid видео
  6. Дирак видео

Также добавлен декодер для видео на основе JPEG2000 .

иш
источник
1
Это, вероятно, наивный вопрос, но здесь идет. Если «дополнительные» пакеты устанавливают файл типа «libavcodec-extra-53.so», а какое-то приложение нравится «libavcodec53.so», разве это не сломает приложение? Или эти «дополнительные» пакеты также создают программные ссылки с более старыми именами библиотек на вновь установленные имена? Как такие вещи решаются, чтобы приложения не ломались?
Honorann
@honestann, ответ обманчиво прост - библиотека названа одинаково для обеих версий, а именно libavcodec.so.53 --> libavcodec.so.53.35.0!
Иш
1

Это совершенно нормально. Это просто замена кодеков с открытым исходным кодом на проприетарные кодеки, которые не могут быть упакованы с Ubuntu из-за патентов и авторских прав.

Вы должны найти эти ссылки полезными.

Полковник паника
источник
Если я правильно понимаю эти ссылки, это означает, что никогда не будет никакого приложения, которое зависит от чего-то в libavcodec53 или libavutil51, которое не предоставлено в форме IDENTICAL (ссылка на разделяемую библиотеку) с помощью «ubuntu-limited-extras». Иными словами, «ubuntu-limited-extras» является СТРОГОМ СУПЕРСЕТОМ содержимого «libavcodec53» и «libavutil51», правильно?
Honorann
Обратите внимание, что никакой "проприетарный" (т.е. не с открытым исходным кодом) код никогда не устанавливается - просто, тем не менее, реализация с открытым исходным кодом, возможно, защищена патентами.
Иш
@izx libav...Пакеты не устанавливают проприетарное программное обеспечение. Но как насчет кодеков Fluendo, доступных через extrasрепозиторий (который можно установить, установив флажок во время установки ОС)?
Элия ​​Каган
@EliahKagan: Fluendo является частной собственностью, но связана ли она libavв Extras, если вы устанавливаете последнюю через apt после установки ? Если так, то мой комментарий неточен.
Иш