xpra icon
Bug tracker and wiki

Opened 4 years ago

Closed 4 years ago

#1052 closed defect (fixed)

0.16.0 fedora 21 builds not supporting vorbis

Reported by: alas Owned by: alas
Priority: major Milestone: 0.16
Component: sound Version: trunk
Keywords: Cc:

Description

Checking back a number of versions, I don't see any fedora 21 that support vorbis (neither in the xpra/beta repos nor any of our own builds).

Tested the r10508, r11099, and r11304 0.16.0 fedora 21 builds... none had any support for vorbis.

Builds did have both gstreamer 0.10 and 1.0 (smo double checked), and

GStreamer version: 1.4.5.0
PyGStreamer version: 3.14.0

but...

encoders supported: mp3, wav, wavpack, speex
decoders supported: mp3, wav, wavpack, speex

Attaching some bug report tool goodies.

Attachments (4)

ticket1052_Server_Info.txt (142.7 KB) - added by alas 4 years ago.
bug tool server info
ticket1052_Sound.txt (1.4 KB) - added by alas 4 years ago.
bug tool sound info
ticket1052_System.txt (14.7 KB) - added by alas 4 years ago.
bug tool system info
ticket1052_xpra-info.txt (117.4 KB) - added by alas 4 years ago.
xpra info

Download all attachments as: .zip

Change History (10)

Changed 4 years ago by alas

Attachment: ticket1052_Server_Info.txt added

bug tool server info

Changed 4 years ago by alas

Attachment: ticket1052_Sound.txt added

bug tool sound info

Changed 4 years ago by alas

Attachment: ticket1052_System.txt added

bug tool system info

Changed 4 years ago by alas

Attachment: ticket1052_xpra-info.txt added

xpra info

comment:1 Changed 4 years ago by Antoine Martin

Owner: changed from Antoine Martin to alas

Fedora 21 is no longer supported and there will be no new builds for this release.

That said, to diagnose issues like this one, run (edited output to make it readable):

$ ./xpra/sound/gstreamer_util.py -v
GStreamer 1.0 environment: {'PATH': '/usr/lib64/qt-3.3/bin:/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/home/antoine/.local/bin:/home/antoine/bin'}
GStreamer 1.0 sys.path=/home/antoine/projects/Xpra/trunk/src/xpra/sound, \
    /usr/lib64/python27.zip, /usr/lib64/python2.7, /usr/lib64/python2.7/plat-linux2, /usr/lib64/python2.7/lib-tk, \
    /usr/lib64/python2.7/lib-old, /usr/lib64/python2.7/lib-dynload, /usr/lib64/python2.7/site-packages, \
    /usr/lib64/python2.7/site-packages/gst-0.10, /usr/lib64/python2.7/site-packages/gtk-2.0, /usr/lib/python2.7/site-packages
trying to import GStreamer 1.0 using <function import_gst1 at 0x7fbfbec6cc08>
import_gst1()
import_gst1() gi=<module 'gi' from '/usr/lib64/python2.7/site-packages/gi/__init__.pyc'>
import_gst1() Gst=<IntrospectionModule 'Gst' from '/usr/lib64/girepository-1.0/Gst-1.0.typelib'>
Python GStreamer version 1.6.1 for Python 2.7
Loaded Python GStreamer version 1.6.1 for Python 2.7
found the following plugins: ['3gppmux', 'aacparse', 'ac3parse', 'accurip', 'adder', ...
GStreamer plugins found: 3gppmux, aacparse, ac3parse, accurip, adder, ...

GStreamer version: 1.6.1.0
PyGStreamer version: 3.18.2

skipping flac with GStreamer 1.x to avoid obscure 'not-neogtiated' errors I do not have time for
missing ['lamemp3enc', 'mad', 'mp3parse'] from ('lamemp3enc', None, 'mad', 'mp3parse')
missing ['lamemp3enc', 'mad'] from ('lamemp3enc', None, 'mad', 'mpegaudioparse')
initialized sound codecs:
* vorbis     : vorbisenc   , gdppay      , vorbisdec   , gdpdepay    
* opus       : opusenc     , oggmux      , opusdec     , oggdemux    
* wav        : wavenc      , None        , None        , wavparse    
* wavpack    : wavpackenc  , None        , wavpackdec  , wavpackparse
* speex      : speexenc    , oggmux      , speexdec    , oggdemux    
encoders supported: vorbis, opus, wav, wavpack, speex
decoders supported: vorbis, opus, wav, wavpack, speex

If vorbis is not in that list, there should be a message explaining why.

comment:2 Changed 4 years ago by alas

Interesting... running that same command I'm not seeing any reference to the following lines:

GStreamer 1.0 environment: {'PATH': '/usr/lib64/qt-3.3/bin:/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/home/antoine/.local/bin:/home/antoine/bin'}
GStreamer 1.0 sys.path=/home/antoine/projects/Xpra/trunk/src/xpra/sound, \
    /usr/lib64/python27.zip, /usr/lib64/python2.7, /usr/lib64/python2.7/plat-linux2, /usr/lib64/python2.7/lib-tk, \
    /usr/lib64/python2.7/lib-old, /usr/lib64/python2.7/lib-dynload, /usr/lib64/python2.7/site-packages, \
    /usr/lib64/python2.7/site-packages/gst-0.10, /usr/lib64/python2.7/site-packages/gtk-2.0, /usr/lib/python2.7/site-packages
trying to import GStreamer 1.0 using <function import_gst1 at 0x7fbfbec6cc08>
import_gst1()
import_gst1() gi=<module 'gi' from '/usr/lib64/python2.7/site-packages/gi/__init__.pyc'>
import_gst1() Gst=<IntrospectionModule 'Gst' from '/usr/lib64/girepository-1.0/Gst-1.0.typelib'>
Python GStreamer version 1.6.1 for Python 2.7

All I'm seeing is the following. I would make a novice guess and figure that there's some path failing to be set for the vorbis?

[tlaloc@jimador sound]$ python gstreamer_util.py
Loaded Python GStreamer version 1.4.5 for Python 2.7
GStreamer plugins found: 3gppmux, a52dec, aacparse, ac3parse, adder, agingtv, alawdec, alawenc, alpha, alphacolor, a                                lsasink, alsasrc, amrnbdec, amrnbenc, amrparse, amrwbdec, apedemux, apev2mux, appsink, appsrc, asfdemux, aspectratio                                crop, asteriskh263, audioamplify, audiochebband, audiocheblimit, audioconvert, audiodynamic, audioecho, audiofirfilt                                er, audioiirfilter, audioinvert, audiokaraoke, audiopanorama, audiorate, audioresample, audiotestsrc, audiowsincband                                , audiowsinclimit, auparse, autoaudiosink, autoaudiosrc, autovideosink, autovideosrc, avidemux, avimux, avisubtitle,                                 bin, breakmydata, capsfilter, capssetter, cdiocddasrc, cdparanoiasrc, clockoverlay, cpureport, cutter, dcaparse, de                                codebin, deinterlace, deinterleave, dicetv, downloadbuffer, dtmfsrc, dv1394src, dvdec, dvdemux, dvdlpcmdec, dvdreads                                rc, dvdsubdec, dvdsubparse, dynudpsink, edgetv, encodebin, equalizer-10bands, equalizer-3bands, equalizer-nbands, fa                                kesink, fakesrc, fdsink, fdsrc, filesink, filesrc, flacdec, flacenc, flacparse, flactag, flvdemux, flvmux, flxdec, f                                unnel, gamma, gdkpixbufdec, gdkpixbufoverlay, gdkpixbufsink, giosink, giosrc, giostreamsink, giostreamsrc, goom, goo                                m2k1, hdv1394src, icydemux, id3demux, id3v2mux, identity, imagefreeze, input-selector, interleave, ismlmux, jpegdec,                                 jpegenc, lamemp3enc, level, mad, matroskademux, matroskamux, matroskaparse, mj2mux, mp4mux, mpeg2dec, mpegaudiopars                                e, mulawdec, mulawenc, multifdsink, multifilesink, multifilesrc, multipartdemux, multipartmux, multiqueue, multisock                                etsink, multiudpsink, navigationtest, navseek, oggaviparse, oggdemux, oggmux, oggparse, ogmaudioparse, ogmtextparse,                                 ogmvideoparse, optv, oss4sink, oss4src, osssink, osssrc, output-selector, pipeline, playbin, playsink, pngdec, pnge                                nc, pnmsrc, progressreport, pulsesink, pulsesrc, pushfilesrc, qtdemux, qtmoovrecover, qtmux, quarktv, queue, queue2,                                 rademux, radioactv, rdtdepay, rdtmanager, revtv, rganalysis, rglimiter, rgvolume, rippletv, rmdemux, rndbuffersize,                                 rtpL16depay, rtpL16pay, rtpL24depay, rtpL24pay, rtpac3depay, rtpac3pay, rtpamrdepay, rtpamrpay, rtpasfdepay, rtpbin                                , rtpbvdepay, rtpbvpay, rtpceltdepay, rtpceltpay, rtpdec, rtpdtmfdepay, rtpdtmfmux, rtpdtmfsrc, rtpdvdepay, rtpdvpay                                , rtpg722depay, rtpg722pay, rtpg723depay, rtpg723pay, rtpg726depay, rtpg726pay, rtpg729depay, rtpg729pay, rtpgsmdepa                                y, rtpgsmpay, rtpgstdepay, rtpgstpay, rtph263depay, rtph263pay, rtph263pdepay, rtph263ppay, rtph264depay, rtph264pay                                , rtpilbcdepay, rtpilbcpay, rtpj2kdepay, rtpj2kpay, rtpjitterbuffer, rtpjpegdepay, rtpjpegpay, rtpmp1sdepay, rtpmp2t                                depay, rtpmp2tpay, rtpmp4adepay, rtpmp4apay, rtpmp4gdepay, rtpmp4gpay, rtpmp4vdepay, rtpmp4vpay, rtpmpadepay, rtpmpa                                pay, rtpmparobustdepay, rtpmpvdepay, rtpmpvpay, rtpmux, rtppcmadepay, rtppcmapay, rtppcmudepay, rtppcmupay, rtpptdem                                ux, rtpqcelpdepay, rtpqdm2depay, rtprtxqueue, rtprtxreceive, rtprtxsend, rtpsbcdepay, rtpsbcpay, rtpsession, rtpsire                                ndepay, rtpsirenpay, rtpspeexdepay, rtpspeexpay, rtpssrcdemux, rtpstreamdepay, rtpstreampay, rtpsv3vdepay, rtptheora                                depay, rtptheorapay, rtpvorbisdepay, rtpvorbispay, rtpvp8depay, rtpvp8pay, rtpvrawdepay, rtpvrawpay, rtpxqtdepay, rt                                spreal, rtspsrc, rtspwms, sbcparse, scaletempo, shagadelictv, shapewipe, shout2send, smpte, smptealpha, souphttpclie                                ntsink, souphttpsrc, spectrum, speexdec, speexenc, splitfilesrc, ssaparse, streaktv, streamsynchronizer, subparse, s                                ubtitleoverlay, taginject, tcpclientsink, tcpclientsrc, tcpserversink, tcpserversrc, tee, testsink, textoverlay, tex                                trender, theoradec, theoraenc, theoraparse, timeoverlay, twolamemp2enc, typefind, udpsink, udpsrc, uridecodebin, v4l                                2radio, v4l2sink, v4l2src, valve, vertigotv, videobalance, videobox, videoconvert, videocrop, videoflip, videomedian                                , videomixer, videorate, videoscale, videotestsrc, volume, vorbisdec, vorbisenc, vorbisparse, vorbistag, vp8dec, vp8                                enc, vp9dec, vp9enc, warptv, wavenc, wavpackdec, wavpackenc, wavpackparse, wavparse, webmmux, x264enc, ximagesink, x                                imagesrc, xingmux, xvimagesink, y4menc

GStreamer version: 1.4.5.0
PyGStreamer version: 3.14.0

encoders supported: mp3, wav, wavpack, speex
decoders supported: mp3, wav, wavpack, speex

If you have a quick hint, that would be useful - otherwise I suppose you can close this ticket and I can open a new one if I find the issue after updating to a newer, sleeker fedora.

comment:3 Changed 4 years ago by Antoine Martin

@afarr: you're missing the "-v" verbose flag, see comment:1.

comment:4 Changed 4 years ago by alas

... So close.

Let's try again.

[jimador@Fedora21-Server-288 sound]$ python gstreamer_util.py -v
GStreamer 1.0 environment: {'PATH': '/usr/lib64/qt-3.3/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/jimador/.local/bin:/home/jimador/bin'}
GStreamer 1.0 sys.path=/usr/lib64/python2.7/site-packages/xpra/sound, /usr/lib64/python27.zip, /usr/lib64/python2.7, /usr/lib64/python2.7/plat-linux2, /usr/lib64/python2.7/lib-tk, /usr/lib64/python2.7/lib-old, /usr/lib64/python2.7/lib-dynload, /usr/lib64/python2.7/site-packages, /usr/lib64/python2.7/site-packages/Numeric, /usr/lib64/python2.7/site-packages/gst-0.10, /usr/lib64/python2.7/site-packages/gtk-2.0, /usr/lib/python2.7/site-packages
trying to import GStreamer 1.0 using <function import_gst1 at 0x7f3ff015ced8>
import_gst1()
import_gst1() gi=<module 'gi' from '/usr/lib64/python2.7/site-packages/gi/__init__.pyc'>
import_gst1() Gst=<gi.module.DynamicModule 'Gst' from '/usr/lib64/girepository-1.0/Gst-1.0.typelib'>
Python GStreamer version 1.4.5 for Python 2.7
Loaded Python GStreamer version 1.4.5 for Python 2.7
found the following plugins: ['3gppmux', 'a52dec', ...

GStreamer plugins found: 3gppmux, a52dec, ...

GStreamer version: 1.4.5.0
PyGStreamer version: 3.14.0

missing ['gdppay', 'gdpdepay'] from ('vorbisenc', 'gdppay', 'vorbisdec', 'gdpdepay')
skipping flac with GStreamer 1.x to avoid obscure 'not-neogtiated' errors I do not have time for
missing ['mp3parse'] from ('lamemp3enc', None, 'mad', 'mp3parse')
missing ['opusenc', 'opusdec'] from ('opusenc', 'oggmux', 'opusdec', 'oggdemux')
initialized sound codecs:
* mp3        : lamemp3enc  , None        , mad         , mpegaudioparse
* wav        : wavenc      , None        , None        , wavparse    
* wavpack    : wavpackenc  , None        , wavpackdec  , wavpackparse
* speex      : speexenc    , oggmux      , speexdec    , oggdemux    
encoders supported: mp3, wav, wavpack, speex
decoders supported: mp3, wav, wavpack, speex

comment:5 Changed 4 years ago by Antoine Martin

The output shows:

missing ['gdppay', 'gdpdepay'] from ('vorbisenc', 'gdppay', 'vorbisdec', 'gdpdepay')

And then I find that:

$ rpm -qf  /usr/lib64/gstreamer-1.0/libgstgdp.so
gstreamer1-plugins-bad-free-1.6.1-2.fc23.x86_64

So r11411 adds gstreamer1-plugins-bad-free to the dependency list for Fedora, try a newer build or just yum install gstreamer1-plugins-bad-free.

comment:6 Changed 4 years ago by alas

Resolution: fixed
Status: newclosed

Sure enough, after a yum install gstreamer1-plugins-bad-free vorbis is working as hoped on a fedora 21 server, even r11366.

I've moved over to fedora 23 at this point anyway, but there may be other stubborn users that this will help. In any case, closing.

Note: See TracTickets for help on using tickets.