2010-02-26 7 views
1

Salut Je suis en train de visualiser un fichier musical dans GStreamer utilisant la commande suivante:de la musique avec GStreamer

gst-launch filesrc location=file.mp3 ! decodebin ! audioconvert ! 
tee name=myT myT. ! queue ! autoaudiosink myT. ! queue ! goom ! 
colorspace ! autovideosink 

Mais je reçois cette erreur: « Il peut y avoir un problème de timestamping, ou cet ordinateur est trop lent."

Pipeline is PREROLLING ... 
Pipeline is PREROLLED ... 
Setting pipeline to PLAYING ... 
New clock: GstAudioSinkClock 
WARNING: from element /GstPipeline:pipeline0/GstAutoVideoSink:autovideosink0/GstDshowVideoSink:autovideosink0-actual-sink-dshowvideo: A lot of buffers are being dropped. 
Additional debug info: 
..\Source\gstreamer\libs\gst\base\gstbasesink.c(2572): gst_base_sink_is_too_late(): /GstPipeline:pipeline0/GstAutoVideoSink:autovideosink0/GstDshowVideoSink:autovideosink0-actual-sink-dshowvideo: 
There may be a timestamping problem, or this computer is too slow. 
ERROR: from element /GstPipeline:pipeline0/GstAutoVideoSink:autovideosink0 

supposer que ce soit quelque chose à voir avec le fil, j'ai essayé la commande suivante:

gst-launch filesrc location=file.mp3 ! decodebin ! audioconvert ! tee name=myT 
{ ! queue ! autoaudiosink } { tee. ! queue ! goom ! colorspace ! autovideosink } 

Mais il donne l'erreur de lien folloiwng:

** (gst-launch-0.10:5308): WARNING **: Trying to connect elements that don't share a common ancestor: tee and queue1 
0:00:00.125000000 5308 003342F0 ERROR   GST_PIPELINE grammar.tab.c:656:gst_parse_perform_link: could not link tee to queue1 
WARNING: erroneous pipeline: could not link tee to queue1 

Quelqu'un peut-il dire ce que est faux? Merci

Répondre

1

Je ne peux pas vous donner une réponse exacte parce que je n'ai pas installé windows. Pour le débogage, utilisez votre premier pipeline (dans Linux fonctionne). Utilisez le paramètre -v avec gst-launch et placez l'identité de l'élément juste avant autovideosink. Cela va imprimer les informations du tampon qui passe à travers l'identité de l'élément, chercher quelque chose d'étrange.

Vous pouvez également essayer d'utiliser directdrawsink au lieu de autovideosink. Un autre test que je vais faire est de générer l'audio avec audiotestsrc. N'oubliez pas que si vous trouvez un bug, vous pouvez ouvrir un rapport de bug dans gnome bugzilla afin que les développeurs de GStreamer soient conscients qu'il y a un problème. Même vous pourriez le réparer vous-même et envoyer un patch.

0

Pour There may be a timestamping problem, or this computer is too slow.Erreur Essayez sync=false comme

`gst-launch filesrc location=file.mp3 ! decodebin ! audioconvert ! tee name=myT myT. ! queue ! autoaudiosink myT. ! queue ! goom ! colorspace ! autovideosink sync=false` 

ou vous pouvez avoir à essayer à la fois l'évier extrémités de la pièce en t comme

`gst-launch filesrc location=file.mp3 ! decodebin ! audioconvert ! tee name=myT myT. ! queue ! autoaudiosink sync=false myT. ! queue ! goom ! colorspace ! autovideosink sync=false` 

J'ai aussi observé que si vous remplacez autovideosink avec xvimagesink ou ximagesink le problème d'horodatage semble apparemment être résolu.