2014-09-29 107 views
4

我想創建一個小型的MP3播放器作爲一個玩具項目,所以從Qt開始用於GUI。當我嘗試播放mp3文件時,出現此錯誤。如何解決Qt5中的gstreamer錯誤?

Warning: "No decoder available for type 'audio/mpeg, mpegversion=(int)1, 
mpegaudioversion=(int)1, layer=(int)3, rate=(int)44100, channels=(int)2, 
parsed=(boolean)true'." 
Error: "Your GStreamer installation is missing a plug-in." 

我安裝的GStreamer和它的插件周圍的Googling

sudo apt-get install gstreamer1.0-plugins-good gstreamer1.0-plugins-bad gstreamer1.0-plugins-ugly gstreamer1.0-libav 

後,但我仍然得到錯誤。我如何解決它?

+0

嘗試先使用gst-launch -v playbin啓動相同的文件。這將給出使用的確切解碼器。有一個名爲「瘋狂」的插件,我猜可能會丟失。嘗試使用gst-inspect來查找它 – user2618142 2014-09-29 12:21:40

+0

我跑了gst-launch -v playbin song.mp3 並得到了'將管道設置爲PAUSED ... 錯誤:管道不想暫停。 錯誤:來自元素/ GstPlayBin:playbin0:沒有指定要播放的URI。 額外調試信息: gstplaybasebin.c(1655):gen_source_element():/ GstPlayBin:playbin0 管道設置爲NULL ...... 解放出來管道... ' ,我跑'GST-檢查mad'並得到了'沒有這樣的元素或插件'瘋狂' – user3542154 2014-09-29 13:11:02

+0

現在有一個GStreamer特定的Qt庫,命名爲'QtGStreamer':奇怪的是:https://gstreamer.freedesktop.org/data/doc/gstreamer/head/qt-gstreamer /html/index.html。它可以在Ubuntu和Debian Jessie存儲庫中以「qtgstreamer」名稱提供。 – Carlton 2017-02-15 19:24:31

回答

6

我有同樣的問題。 使用下面的代碼後,它修復。

sudo add-apt-repository ppa:mc3man/gstffmpeg-keep 
sudo apt-get update 
sudo apt-get install gstreamer0.10-ffmpeg 
sudo apt-get install gstreamer0.10-plugins-ugly 

Qt Creator的3.4.2的Ubuntu 14.04

+0

似乎[PPA](https://launchpad.net/~mc3man/+archive/ubuntu/gstffmpeg-keep)沒有'gstreamer0 .10插件,ugly'。 – 2016-12-17 05:58:21

+0

看來他們已經刪除'gstreamer0.10-plugins-醜陋'後14.04 http://packages.ubuntu.com/search?keywords=gstreamer0.10-plugins-ugly,但你可以嘗試它的新版本http:// www.linuxfromscratch.org/blfs/view/cvs/multimedia/gst10-plugins-ugly.html – 2016-12-19 02:59:21

+0

@ HiI'mFrogatto MayBe,它的=>'gstreamer1.0-plugins-bad'給你 – Abhi 2017-03-29 16:22:38

1

我試着挖了一點到這一點,並根據Qt的論壇,這個問題似乎是在QtMultimedia模塊依然採用的GStreamer 0.10作爲後端this話題 - 和它需要的gstreamer-0.10-ffmpeg插件,它是不可用在一些發行版中,由於轉移到libav。

如果你正在使用Ubuntu的味道,你可以嘗試從道格·麥克馬洪的PPA安裝gstreamer-0.10-ffmpeg

sudo add-apt-repository ppa:mc3man/gstffmpeg-keep 
sudo apt-get update 
sudo apt-get install gstreamer0.10-ffmpeg 
0

Debian8, QT5.7,我在執行這個:

sudo apt-get install gstreamer1.0* 
sudo apt-get install gstreamer0.10* 

這是不是最好的方式,但它的工作原理。

問候。

相關問題