Ubuntu 14.04, problema al instalar gstreamer1.0-libav, dependencias no satisfechas

11

De repente, mi Ubuntu dejó de reproducir video. Cuando abro un video, el reproductor sugiere que lo instale gstreamer1.0-libav. Sin embargo, no se instala.

Intenté instalarlo manualmente, aquí está el mensaje de error:

$ sudo apt-get install gstreamer1.0-libav
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 gstreamer1.0-libav : Depends: libavcodec54 (>= 6:9.1-1) but it is not going to be installed or
                               libavcodec-extra-54 (>= 6:9.13) but it is not going to be installed
                      Depends: libavformat54 (>= 6:9.1-1) but it is not going to be installed
E: Unable to correct problems, you have held broken packages.
Sergey
fuente
OMG tiene razón! eso funcionó totalmente para mí! ahora puedo reproducir archivos mp4 en Banshee. ¿Cómo te diste cuenta de eso?
No se No soy bueno en la cocina de Linux. Solo seguí las sugerencias de apt-get. Estoy feliz de que esta magia de Linux te haya ayudado :)
Sergey

Respuestas:

12

Dios mio.

$ sudo apt-get install libopus0
Suggested packages:
  opus-tools
The following packages will be REMOVED:
  gstreamer1.0-libav:i386 libavcodec54:i386 libavformat54:i386 libopus0:i386
The following NEW packages will be installed:
  libopus0

$ sudo apt-get install gstreamer1.0-libav
The following NEW packages will be installed:
  gstreamer1.0-libav libavcodec54 libavformat54
0 upgraded, 3 newly installed, 0 to remove and 18 not upgraded

Ahora funciona ... No sé por qué ... Pero estoy feliz.

Sergey
fuente
Parece que eliminó las bibliotecas de 32 bits y cargó las de 64 bits. Eso resolvió su problema, pero NO necesariamente responde el problema para otra persona .
david6
5

Creo que este es un problema conocido cuando se trata de la Multi-Architecturegestión de paquetes. apt-getpresenta la solución preferida para mantener el arco instalado actual de los mismos paquetes, que no es lo que desea en algunos casos.

En este caso, la mejor solución era reemplazar esos :i386(libavcodec54 o libavcodec-extra-54, libavformat54, ... otros paquetes del árbol de dependencias) con los :amd64paquetes correspondientes .

AFAIK, la solución más fácil es el uso aptitudeque proporciona todas las demás soluciones posibles y le permite seleccionar lo que prefiera.

Probado en un VirtualBox (Ubuntu 14.04). Lo instalé:

sudo apt-get install gstreamer1.0-libav:i386 libavcodec54:i386 libavformat54:i386 \
libopus0:i386

Intentar instalar gstreamer1.0-libav genera el mismo mensaje de error:

# apt-get install gstreamer1.0-libav
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 gstreamer1.0-libav : Depends: libavcodec54 (>= 6:9.1-1) but it is not going to be installed or
                               libavcodec-extra-54 (>= 6:9.13) but it is not going to be installed
                      Depends: libavformat54 (>= 6:9.1-1) but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

Instrucciones para resolver tal caso:

  1. Instalar aptitud:

    sudo apt-get install aptitude
    
  2. Ejecutarlo:

    sudo aptitude
    
  3. Presione /y busque gstreamer1.0-libaventoncesEnter

    Verifique que no lo esté gstreamer1.0-libav:i368, use npara buscar el siguiente.

  4. Luego presione +para marcarlo para la instalación

  5. En este caso hay dos soluciones, ver mensaje rojo en la parte inferior. Use .o ,para elegir Sugiere 4 eliminaciones, que es la que estamos buscando.

    Aptitud: sugiere 4 guarda Aptitud: sugiere 4 eliminaciones

  6. Para confirmar que es la solución correcta, presione epara que examine y muestre lo que va a hacer.

    Aptitud: examinar solución

  7. Si está bien, presione !para aplicar esa solución y luego gcomenzar el proceso de instalación.

    (Reading database ... 58187 files and directories currently installed.)
    Removing gstreamer1.0-libav:i386 (1.2.4-1~ubuntu1) ...
    Removing libavformat54:i386 (6:9.16-0ubuntu0.14.04.1) ...
    Removing libavcodec54:i386 (6:9.16-0ubuntu0.14.04.1) ...
    Removing libavutil52:i386 (6:9.16-0ubuntu0.14.04.1) ...
    Removing libgstreamer-plugins-base1.0-0:i386 (1.2.4-1~ubuntu1) ...
    Removing libgstreamer1.0-0:i386 (1.2.4-0ubuntu1) ...
    Removing libglib2.0-0:i386 (2.40.2-0ubuntu1) ...
    Removing librtmp0:i386 (2.4+20121230.gitdf6c518-1) ...
    Removing libgnutls26:i386 (2.12.23-12ubuntu2.1) ...
    Removing libp11-kit0:i386 (0.20.2-2ubuntu2) ...
    Removing libffi6:i386 (3.1~rc1+r3.0.13-12) ...
    Removing libgcrypt11:i386 (1.5.3-2ubuntu4.1) ...
    Removing libgpg-error0:i386 (1.12-0.2ubuntu1) ...
    Removing libgsm1:i386 (1.0.13-4) ...
    Removing libmp3lame0:i386 (3.99.5+repack1-3ubuntu1) ...
    Removing libvorbisenc2:i386 (1.3.2-1.3ubuntu1) ...
    Removing libvorbis0a:i386 (1.3.2-1.3ubuntu1) ...
    Removing libtheora0:i386 (1.1.1+dfsg.1-3.2) ...
    Removing libogg0:i386 (1.3.1-1ubuntu1) ...
    Removing libopenjpeg2:i386 (1.3+dfsg-4.7ubuntu1) ...
    Removing libopus0 (1.1-0ubuntu1) ...
    Removing libschroedinger-1.0-0:i386 (1.0.11-2ubuntu1) ...
    Removing liborc-0.4-0:i386 (1:0.4.18-1ubuntu1) ...
    Removing libspeex1:i386 (1.2~rc1.1-1ubuntu1) ...
    Removing libtasn1-6:i386 (3.4-3ubuntu0.1) ...
    Removing libva1:i386 (1.3.0-2) ...
    Removing libvpx1:i386 (1.3.0-2) ...
    Removing libx264-142:i386 (2:0.142.2389+git956c8d8-2) ...
    Removing libxvidcore4:i386 (2:1.3.2-9ubuntu1) ...
    Processing triggers for libc-bin (2.19-0ubuntu6) ...
    Selecting previously unselected package libopus0.
    (Reading database ... 58038 files and directories currently installed.)
    Preparing to unpack .../libopus0_1.1-0ubuntu1_amd64.deb ...
    Unpacking libopus0 (1.1-0ubuntu1) ...
    Selecting previously unselected package libavcodec54:amd64.
    Preparing to unpack .../libavcodec54_6%3a9.16-0ubuntu0.14.04.1_amd64.deb ...
    Unpacking libavcodec54:amd64 (6:9.16-0ubuntu0.14.04.1) ...
    Selecting previously unselected package libavformat54:amd64.
    Preparing to unpack .../libavformat54_6%3a9.16-0ubuntu0.14.04.1_amd64.deb ...
    Unpacking libavformat54:amd64 (6:9.16-0ubuntu0.14.04.1) ...
    Selecting previously unselected package gstreamer1.0-libav:amd64.
    Preparing to unpack .../gstreamer1.0-libav_1.2.4-1~ubuntu1_amd64.deb ...
    Unpacking gstreamer1.0-libav:amd64 (1.2.4-1~ubuntu1) ...
    Setting up libopus0 (1.1-0ubuntu1) ...
    Setting up libavcodec54:amd64 (6:9.16-0ubuntu0.14.04.1) ...
    Setting up libavformat54:amd64 (6:9.16-0ubuntu0.14.04.1) ...
    Setting up gstreamer1.0-libav:amd64 (1.2.4-1~ubuntu1) ...
    Processing triggers for libc-bin (2.19-0ubuntu6) ...
    Press Return to continue.
    
user.dz
fuente
3

Seguía recibiendo el mismo mensaje, pero cambié ligeramente los pasos de @Sergey y trabajé para mí.

  1. Primero desinstale manualmente los siguientes paquetes:

    sudo apt-get remove gstreamer1.0-libav:i386
    sudo apt-get remove libavcodec54:i386
    sudo apt-get remove libavformat54:i386
    sudo apt-get remove libopus0:i386
    
  2. Ahora instale:

    sudo apt-get install libopus0
    sudo apt-get install gstreamer1.0-libav
    
Ramesh
fuente