# VLC: problemi con files MP4

## fbcyborg

Salve a tutti, 

Non riesco a risolvere un problema che ho con VLC. Per quanto ne so, dovrebbe leggere anche le pizzette, ma non sono mai riuscito a vedere un video mp4. Sento solo il suono.

Da qualche parte avevo letto che bisognava compilare ffmpeg con la flag USE faad abilitata, ebbene l'ho attivata, ricompilato ma è tale e quale a prima.

Ecco la situazione:

```
[ebuild   R   ] media-video/ffmpeg-0.6  USE="3dnow 3dnowext X alsa amr doc encode faac faad hardcoded-tables ieee1394 mmx mmxext mp3 oss sdl ssse3 theora threads vorbis x264 xvid zlib (-altivec) -bindist -cpudetection -custom-cflags -debug -dirac -gsm -jack -jpeg2k -network -pic -rtmp -schroedinger -speex -test -v4l -v4l2 -vaapi -vdpau -vpx" VIDEO_CARDS="nvidia" 0 kB            

[ebuild   R   ] media-video/vlc-1.1.4  USE="X a52 aac alsa dbus dts dvb dvd ffmpeg flac gcrypt kde libnotify mmx mp3 mpeg ncurses ogg opengl oss png qt4 samba sdl sse stream svg truetype v4l vorbis x264 xcb xml xv -aalib (-altivec) -atmo -avahi -bidi -cdda -cddb -dc1394 -debug -dirac -directfb -fbcon -fluidsynth -fontconfig -ggi -gnome -gnutls -httpd -id3tag -ieee1394 -jack -kate -libass -libcaca -libproxy -libtiger -libv4l -libv4l2 -lirc -live -lua -matroska -modplug -mtp -musepack -nsplugin -optimisememory -projectm -pulseaudio -pvr -remoteosd -rtsp -run-as-root -schroedinger -sdl-image -shine -shout -skins -speex -sqlite (-svga) -taglib -theora -twolame -udev -upnp -v4l2 -vaapi -vcdx -vlm (-win32codecs) -wma-fixed -xosd -zvbi" 0 kB
```

Ecco cosa accade aprendo il file mp4 da riga di comando con vlc:

```
VLC media player 1.1.4 The Luggage (revision exported)

Blocked: call to unsetenv("DBUS_ACTIVATION_ADDRESS")

Blocked: call to unsetenv("DBUS_ACTIVATION_BUS_TYPE")

Warning: call to signal(13, 0x1)

[0x605120] main libvlc: Running vlc with the default interface. Use 'cvlc' to use vlc without interface.

Blocked: call to setlocale(6, "")

Blocked: call to sigaction(17, 0x7f3a93dfcb60, 0x7f3a93dfcac0)

Blocked: call to setlocale(6, "")

Warning: call to signal(13, 0x1)

Warning: call to rand()

Warning: call to rand()

Warning: call to rand()

[0x6d1500] qt4 interface error: Unable to load extensions module

Blocked: call to setlocale(1, "C")

Blocked: call to setlocale(1, "en_US.ISO-8859-1")

[0x1827c50] main video output error: video output creation failed

[0x7f3a94dd40c0] main decoder error: failed to create video output

Blocked: call to setlocale(1, "C")

[0x1886480] main video output error: video output creation failed

[0x7f3a94dd40c0] main decoder error: failed to create video output

Warning: call to rand()

Warning: call to rand()

```

Che diavolo manca?   :Confused: 

----------

## ago

la butto li giusto per...potrebbe mancare qualche plugin di gst?

----------

## fbcyborg

Non lo so!

Sinceramente di gst non ho nulla di installato sul sistema, però vedendo la lista dei plugin di gst, non mi pare ci sia mp4 in mezzo.

Al limite, vedo questi due:

```
[N] media-plugins/gst-plugins-faac (0.10.18(0.10)): plugin for gstreamer

[N] media-plugins/gst-plugins-faad (0.10.18(0.10)): plugin for gstreamer
```

Però sinceramente non capisco cosa c'entrino con VLC.

----------

## Onip

prova a capire con

```
$ ffmpeg -i <nome_file>.mp4
```

qual è il codec video del file e vedi se c'è qualche use in ffmpeg (o vlc) che gli assomiglia...

Dall'ebuild gstreamer e plugin vari non centrano un'acca.

----------

## fbcyborg

Ecco l'output del comando che mi hai suggerito:

```
FFmpeg version 0.6, Copyright (c) 2000-2010 the FFmpeg developers

  built on Dec  9 2010 23:59:07 with gcc 4.4.4

  configuration: --prefix=/usr --libdir=/usr/lib64 --shlibdir=/usr/lib64 --mandir=/usr/share/man --enable-static --enable-shared --cc=x86_64-pc-linux-gnu-gcc --disable-debug --disable-network --enable-libmp3lame --enable-libvorbis --enable-libtheora --enable-libx264 --enable-libxvid --enable-libfaac --enable-nonfree --enable-libdc1394 --disable-indev=v4l --disable-indev=v4l2 --disable-indev=jack --enable-x11grab --enable-pthreads --enable-libopencore-amrwb --enable-libopencore-amrnb --enable-libfaad --disable-vdpau --disable-vaapi --disable-altivec --cpu=core2 --enable-gpl --enable-version3 --enable-postproc --enable-avfilter --enable-avfilter-lavf --disable-stripping --enable-hardcoded-tables

  libavutil     50.15. 1 / 50.15. 1

  libavcodec    52.72. 2 / 52.72. 2

  libavformat   52.64. 2 / 52.64. 2

  libavdevice   52. 2. 0 / 52. 2. 0

  libavfilter    1.19. 0 /  1.19. 0

  libswscale     0.11. 0 /  0.11. 0

  libpostproc   51. 2. 0 / 51. 2. 0

Seems stream 1 codec frame rate differs from container frame rate: 59.94 (2997/50) -> 29.97 (30000/1001)

Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'video.mp4':

  Metadata:

    major_brand     : mp42

    minor_version   : 0

    compatible_brands: isomavc1mp42

  Duration: 00:31:19.07, start: 0.000000, bitrate: 153 kb/s

    Stream #0.0(und): Audio: aac, 44100 Hz, stereo, s16, 93 kb/s

    Stream #0.1(und): Video: h264, yuv420p, 480x360 [PAR 1:1 DAR 4:3], 57 kb/s, 29.97 fps, 29.97 tbr, 30k tbn, 59.94 tbc

At least one output file must be specified
```

Ho dato un'occhiata ma non riesco a capirci molto...

----------

## fbcyborg

L'ultima prova che ho fatto è stata quella di ricompilare vlc con tutte le flag USE attive:

```
media-video/vlc X a52 aac alsa dbus dts dvb dvd elibc_glibc ffmpeg flac gcrypt kde libnotify mmx mp3 mpeg ncurses ogg opengl oss png qt4 samba sdl sse stream svg truetype v4l vorbis x264 xcb xml xv aalib atmo avahi bidi cdda cddb dc1394 -debug dirac directfb fbcon fluidsynth fontconfig ggi gnome gnutls httpd id3tag ieee1394 jack kate libass libcaca libproxy libtiger libv4l libv4l2 lirc live lua matroska modplug mtp musepack nsplugin optimisememory projectm pvr remoteosd rtsp run-as-root schroedinger sdl-image shine shout skins speex sqlite taglib theora twolame udev upnp v4l2 vaapi vcdx vlm wma-fixed xosd zvbi
```

Tutte tranne 2-3 che erano fra parentesi e pulseaudio.

Non è cambiato nulla, quindi non saprei. Forse potrei provare a fare la stessa cosa con ffmpeg.

Mi rendo conto che l'approccio non sia il migliore, ma non mi viene in mente altro.

EDIT: niente, ho fatto la stessa cosa con ffmpeg e il risultato è sempre lo stesso. La cosa strana comunque è che con Kaffeine questo file lo vedo benissimo. Quindi non penso sia una questione di codec mancante a livello di sistema.

Anzi, con il comando 

```
ffplay video.mp4
```

Il video parte e si vede!

----------

## djinnZ

se sono i soliti mp4 fatti da beceri windozziani/macman che si trovano in rete vlc non riesce a riprodurli, quale che sia il sistema.

Prova con la 1.1.5

----------

## fbcyborg

Mah, in realtà si tratta di un file mp4 di un video scaricato da youtube con JDownloader.

----------

## fbcyborg

Non è che a qualcuno è venuta in mente un'idea nel frattempo?  :Sad: 

----------

## ago

a me funzionano gli mp4 scaricati su youtube :=)

----------

## fbcyborg

Sì, ma devo avere qualche problema su VLC, o non so dove, perché con ffplay funzionano! È assurda sta situazione.

----------

## pierino_89

A me VLC si incanta con gli mp4 (ma non solo), nel senso che ogni tanto l'immagine resta ferma su un frame e per 3-4 secondi non si muove mentre il suono procede. Poi sgrana un attimo e riprende la riproduzione. Per assurdo disabilitando il salto frame la situazione è migliorata, ma è ridicolo che un i7 con una nvidia non riesca a riprodurre un video, per di più caffeine ci riesce benissimo. Cosa sta succedendo?

----------

## fbcyborg

Almeno a te qualcosa riproduce! A me nemmeno quello!

----------

## djinnZ

non è che ti sei scordato qualche use come ffmpeg, mpeg, stream, matroska etc.?

Comunque ti ripeto che vlc ha problemi con gli mp4 e non funzionano molto bene.

----------

## ciro64

Non vedo mp4 nelle tue use.

Sul mio sistema, facendo

```

$ emerge -epv world |grep mp4

[ebuild   R   ] media-libs/libmp4v2-1.9.1  USE="static-libs -utils" 423 kB

[ebuild   R   ] media-libs/taglib-1.6.3  USE="asf mp4 -debug -examples -test" 1,101 kB

```

noto questa use aver a che fare con taglib.

Potrebbe essere ?

----------

## fbcyborg

 *djinnZ wrote:*   

> non è che ti sei scordato qualche use come ffmpeg, mpeg, stream, matroska etc.?
> 
> 

 Allora matroska non ce l'ho effettivamente, ma come già detto in un post precedente ho provato a ricompilare vlc con tutte le USE flag attive e non è cambiato nulla. Quindi non penso sia un problema collegato a questo fatto. *djinnZ wrote:*   

> 
> 
> Comunque ti ripeto che vlc ha problemi con gli mp4 e non funzionano molto bene.

 

Ecco... già questa comincia ad essere una valida spiegazione! Perché altrimenti non è possibile!

 *ciro64 wrote:*   

> Non vedo mp4 nelle tue use.
> 
> Sul mio sistema, facendo
> 
> ```
> ...

 

Ecco cosa esce fuori nel mio caso:

```
$ emerge -epv world |grep mp4 

[ebuild   R   ] media-libs/libmp4v2-1.9.1  USE="-static-libs -utils" 423 kB [0]

[ebuild   R   ] media-libs/taglib-1.6.3  USE="asf mp4 -debug -examples -test" 0 kB [0]
```

----------

## djinnZ

Dato che suppongo entrambi aver installato gentoolkit ricordatevi del povero comando euse (opzione -I), meschino, dimenticato da tutti, eppure è tanto utile per evitare fesserie...

L'unico errore che hai è con le qt4, hai provato a disabilitare le use qt4 e kde?

Anzi farei un controllo per tutti i codec e simili che hanno la use qt4/kde (forse te ne sei scordato qualcuno).

Altrimenti l'unica possibilità che resta è legata a xv e v4l ma non dovrebbero poter influenzare l'output sino a questo livello o dovresti aver problemi su qualsiasi formato video (per ragioni che non ho mai investigato vlc smette di funzionare se attivo il dual screen sul portatile, tanto per dirne una).

Se attivi la console degli errori di vlc (fermi la riproduzione, vai in strumenti e riavvii) non visualizza niente? ha i qualche opzione strana attivata? hai provato a disabilitare l'overlay?

Questo è tutto quello che so oltre al fatto che non sono ancora riuscito a vedere un mp4 proveniente da mac in maniera decente.

Diciamo che vlc lo uso solo perché su quell'altro OS (o meglio lurida sottospecie di) è l'unico che mi consente di usare la tastiera per l'avanzamento e non il mouse del piffero.

----------

## fbcyborg

Dunque, prima di procedere vorrei capire bene cosa sto facendo. 

Perché dovrei disabilitare le USE qt4 e kde? Cosa comporta questo fatto?

----------

## lele_dj

Se può esserti di aiuto io ho vlc che legge senza problemi tutti gli mp4 fino ad ora aperti

io l'ho compilato su gnome 2.30.2 con queste use:

```
$ emerge -pv vlc

These are the packages that would be merged, in order:

Calculating dependencies... done!

[ebuild   R   ] media-video/vlc-1.1.4  USE="X a52 aac alsa dbus dts dvd ffmpeg flac gcrypt gnome libnotify mmx mp3 mpeg ncurses nsplugin ogg opengl png pulseaudio qt4 sdl sse svg truetype udev vorbis x264 xcb xml xv -aalib (-altivec) -atmo -avahi -bidi -cdda -cddb -dc1394 -debug -dirac -directfb -dvb -fbcon -fluidsynth -fontconfig -ggi -gnutls -httpd -id3tag -ieee1394 -jack -kate -kde -libass -libcaca -libproxy -libtiger -libv4l -libv4l2 -lirc -live -lua -matroska -modplug -mtp -musepack -optimisememory -oss -projectm -pvr -remoteosd -rtsp -run-as-root -samba -schroedinger -sdl-image -shine -shout -skins -speex -sqlite -stream (-svga) -taglib -theora -twolame -upnp -v4l -v4l2 -vaapi -vcdx -vlm (-win32codecs) -wma-fixed -xosd -zvbi" 0 kB

Total: 1 package (1 reinstall), Size of downloads: 0 kB

```

la use mp4 l'ho attiva in make.conf ma nel sistema con questa flag ho solamente questo pacchetto:

```
$ equery hasuse mp4

[ Searching for USE flag mp4 in all categories among: ]

 * installed packages

[I--] [  ] media-libs/taglib-1.6.3 (0)

```

il pacchetto media-libs/libmp4v2 non c'è nel mio sistema

e come gst-plugin ho questi pacchetti:

```

[ebuild   R   ] media-plugins/gst-plugins-meta-0.10-r4  USE="X a52 alsa dvd flac lame mad mpeg ogg vorbis xv -dvb -esd -ffmpeg -mythtv -oss -pulseaudio -taglib -theora -v4l -v4l2" 0 kB

[ebuild   R   ] media-libs/gst-plugins-base-0.10.29  USE="nls -debug" 0 kB

[ebuild   R   ] media-libs/gst-plugins-good-0.10.23  USE="-debug" 0 kB

[ebuild   R   ] media-plugins/gst-plugins-gconf-0.10.23  0 kB

[ebuild   R   ] media-plugins/gst-plugins-x-0.10.29  0 kB

[ebuild   R   ] media-plugins/gst-plugins-alsa-0.10.29  0 kB

[ebuild   R   ] media-plugins/gst-plugins-ogg-0.10.29  0 kB

[ebuild   R   ] media-plugins/gst-plugins-vorbis-0.10.29  0 kB

[ebuild   R   ] media-plugins/gst-plugins-gio-0.10.29  0 kB

[ebuild   R   ] media-libs/gst-plugins-ugly-0.10.13  USE="-debug" 0 kB

[ebuild   R   ] media-plugins/gst-plugins-xvideo-0.10.29  0 kB

[ebuild   R   ] media-plugins/gst-plugins-a52dec-0.10.13  0 kB

[ebuild   R   ] media-plugins/gst-plugins-dvdread-0.10.13  0 kB

[ebuild   R   ] media-plugins/gst-plugins-mad-0.10.13  0 kB

[ebuild   R   ] media-plugins/gst-plugins-flac-0.10.23  0 kB

[ebuild   R   ] media-plugins/gst-plugins-resindvd-0.10.19  0 kB

[ebuild   R   ] dev-python/gst-python-0.10.17  USE="-examples -test" 0 kB

[ebuild   R   ] media-plugins/gst-plugins-theora-0.10.29  0 kB

[ebuild   R   ] media-plugins/gst-plugins-v4l2-0.10.23  0 kB

[ebuild   R   ] media-plugins/gst-plugins-cdparanoia-0.10.29  0 kB

[ebuild   R   ] media-plugins/gst-plugins-pango-0.10.29  0 kB

[ebuild   R   ] media-plugins/gst-plugins-soup-0.10.22  0 kB

[ebuild   R   ] media-plugins/gst-plugins-lame-0.10.13  0 kB

[ebuild   R   ] media-plugins/gst-plugins-taglib-0.10.23  0 kB

[ebuild   R   ] media-plugins/gst-plugins-mpeg2dec-0.10.13  0 kB

```

Poi ... magari ancora non ho avuto la "sfortuna" di aprire qualche mp4 particolare .... sarei però curioso di provare ad aprire il file che ti da problemi per vedere se li da anche a me

----------

## fbcyborg

Ciao, 

dunque, io sono su kde, ma più o meno ho le tue stesse use. Dunque ecco un diff:

In più rispetto a te ho: dvb, kde (al posto di gnome), samba e stream.

In meno ho: nsplugin, pulseaudio (che non uso). 

Ora, che sia un problema di nsplugin ci credo poco. Pulseaudio non credo sia il problema, visto che è un problema video per lo più.

Per quanto riguarda la flag use mp4 ce l'ho anche io nel make.conf ed ho la tua stessa situazione:

```
equery hasuse mp4 

[ Searching for USE flag mp4 in all categories among: ]

 * installed packages

[I--] [  ] media-libs/taglib-1.6.3 (0)
```

Io invece il pacchetto media-libs/libmp4v2 c'è l'ho installato nel mio sistema. Sarà qualche dipendenza sicuramente.

Però per quanto riguarda i gst-plugin non ce n'ho nemmeno uno installato, come già anticipato. Come ripeto non capisco cosa c'entrino con vlc, e nel caso c'entrino qualcosa perché non vengono tirati dietro come dipendenza se veramente sono necessari? Ho provato anche ad installare tutti i gst-plugins che hai anche tu, ma la situazione non cambia. Sempre solo audio.

Boooh!   :Shocked: 

----------

## djinnZ

 *fbcyborg wrote:*   

> 
> 
> ```
> VLC media player 1.1.4 The Luggage (revision exported)
> 
> ...

 possibile che ci sia qualche problema nell'interfaccia. Tanto vale escludere del tutto l'interfasccia qt (che non usi) e vedere con la normale, attivando la finestra dei messaggi, se ti spiega perchè non legge gli mp4.

Puoi anche attendere a disabilitare l'integrazione a kde e qt ma avvia e guarda cosa ti riporta nella finestra dei messaggi.

----------

## fbcyborg

Ho provato a vedere se la finestra dei messaggi dicesse qualcosa di significativo, ma mi pare che dica soltanto che non riesce a creare l'output video e basta.

Ecco i messaggi.

Secondo te invece c'è qualche indizio che io non sono riuscito a cogliere?

----------

## djinnZ

```
#

main error: failed to create video output

#

main warning: can't get output picture

#

avcodec warning: disabling direct rendering

#

main debug: no usable vout present, spawning one
```

ti riferisci a questo? Vuol dire che il filtro yuvp non funziona e quindi non è in grado di decodificare il filmato (ed ora è strano perchè ffmpeg dice che usa quello per decodificare).

Hai provato a scaricare lo stesso filmato con qualcosa di differente? jdownloader li pasticcia molto i video (per esempio da megavideo mi rovina sempre la sincronia audio a metà video, quale che sia la dimensione o la durata del file scaricato).

Oppure prova a convertirlo con ffmpeg ed a riconvenrtislo nello stesso formato.

Altro non mi viene in mente.

----------

## fbcyborg

Eh... ora cerco di rimediare qualche altro video mp4...  :Sad: 

Comunque sarà anche che JDownloader incasina i file, ma con Kaffeine si vede benissimo.

----------

