Bug #1885
closedНекорректная работа после единичных ошибок декодирования
100%
Description
Теряется обратная связь между фронтендом и бекэндом после ошибок в последнем.
STR:
0. Распаковать прилагаемые файлы альбома и добавить в плейлист через вкладку обзора фс.
1. Запустить проигрывание первого в очереди трека "Speed Disco Vol.1". Можно перемотать на -00:10
2. гстример должен вывалить что-то типа
[27.02.2015 15:17:58.832] [0x7fdb22ad6fe0] [023] void LeechCraft::LMP::SourceObject::HandleErrorMsg(GstMessage*) QUrl( "file:///tmp/DJ SHARPNEL – INVISIBLE TRIGGER/20 - Speed Disco Vol.1 .mpc" ) 2212 7 "Не удалось декодировать поток." "/var/tmp/portage/media-plugins/gst-plugins-musepack-0.10.23-r1/work/gst-plugins-bad-0.10.23/ext/musepack/gstmusepackdec.c(552): gst_musepackdec_loop (): /GstPlayBin2:play/GstURIDecodeBin:uridecodebin0/GstDecodeBin2:decodebin20/GstMusepackDec:musepackdec0"
И воспроизведение очереди останавливается
3. После этого любые попытки проиграть любой трек приводят к тому, что трек играется, но лмп считает, что проигрывает первый трек ("Speed Disco Vol.1")
В лог при этом ничего не пишется.
Diag info for LMP:
Built with GStreamer 0.10.36; running with GStreamer 0.10.36
Built WITH libguess
Built with Taglib 1.9.1
GStreamer plugins:
- a52dec (from /usr/lib64/gstreamer-0.10/libgsta52dec.so)
- adder (from /usr/lib64/gstreamer-0.10/libgstadder.so)
- adpcmdec (from /usr/lib64/gstreamer-0.10/libgstadpcmdec.so)
- adpcmenc (from /usr/lib64/gstreamer-0.10/libgstadpcmenc.so)
- aiff (from /usr/lib64/gstreamer-0.10/libgstaiff.so)
- alaw (from /usr/lib64/gstreamer-0.10/libgstalaw.so)
- alpha (from /usr/lib64/gstreamer-0.10/libgstalpha.so)
- alphacolor (from /usr/lib64/gstreamer-0.10/libgstalphacolor.so)
- alsa (from /usr/lib64/gstreamer-0.10/libgstalsa.so)
- apetag (from /usr/lib64/gstreamer-0.10/libgstapetag.so)
- app (from /usr/lib64/gstreamer-0.10/libgstapp.so)
- asf (from /usr/lib64/gstreamer-0.10/libgstasf.so)
- asfmux (from /usr/lib64/gstreamer-0.10/libgstasfmux.so)
- assrender (from /usr/lib64/gstreamer-0.10/libgstassrender.so)
- audioconvert (from /usr/lib64/gstreamer-0.10/libgstaudioconvert.so)
- audiofx (from /usr/lib64/gstreamer-0.10/libgstaudiofx.so)
- audioparsers (from /usr/lib64/gstreamer-0.10/libgstaudioparsers.so)
- audiorate (from /usr/lib64/gstreamer-0.10/libgstaudiorate.so)
- audioresample (from /usr/lib64/gstreamer-0.10/libgstaudioresample.so)
- audiotestsrc (from /usr/lib64/gstreamer-0.10/libgstaudiotestsrc.so)
- audiovisualizers (from /usr/lib64/gstreamer-0.10/libgstaudiovisualizers.so)
- auparse (from /usr/lib64/gstreamer-0.10/libgstauparse.so)
- autoconvert (from /usr/lib64/gstreamer-0.10/libgstautoconvert.so)
- autodetect (from /usr/lib64/gstreamer-0.10/libgstautodetect.so)
- avi (from /usr/lib64/gstreamer-0.10/libgstavi.so)
- bayer (from /usr/lib64/gstreamer-0.10/libgstbayer.so)
- camerabin (from /usr/lib64/gstreamer-0.10/libgstcamerabin.so)
- camerabin2 (from /usr/lib64/gstreamer-0.10/libgstcamerabin2.so)
- cdparanoia (from /usr/lib64/gstreamer-0.10/libgstcdparanoia.so)
- cdxaparse (from /usr/lib64/gstreamer-0.10/libgstcdxaparse.so)
- coloreffects (from /usr/lib64/gstreamer-0.10/libgstcoloreffects.so)
- colorspace (from /usr/lib64/gstreamer-0.10/libgstcolorspace.so)
- coreelements (from /usr/lib64/gstreamer-0.10/libgstcoreelements.so)
- coreindexers (from /usr/lib64/gstreamer-0.10/libgstcoreindexers.so)
- cutter (from /usr/lib64/gstreamer-0.10/libgstcutter.so)
- dataurisrc (from /usr/lib64/gstreamer-0.10/libgstdataurisrc.so)
- dccp (from /usr/lib64/gstreamer-0.10/libgstdccp.so)
- debug (from /usr/lib64/gstreamer-0.10/libgstdebug.so)
- debugutilsbad (from /usr/lib64/gstreamer-0.10/libgstdebugutilsbad.so)
- decodebin (from /usr/lib64/gstreamer-0.10/libgstdecodebin.so)
- deinterlace (from /usr/lib64/gstreamer-0.10/libgstdeinterlace.so)
- dtmf (from /usr/lib64/gstreamer-0.10/libgstdtmf.so)
- dtsdec (from /usr/lib64/gstreamer-0.10/libgstdtsdec.so)
- dv (from /usr/lib64/gstreamer-0.10/libgstdv.so)
- dvbsuboverlay (from /usr/lib64/gstreamer-0.10/libgstdvbsuboverlay.so)
- dvdlpcmdec (from /usr/lib64/gstreamer-0.10/libgstdvdlpcmdec.so)
- dvdread (from /usr/lib64/gstreamer-0.10/libgstdvdread.so)
- dvdspu (from /usr/lib64/gstreamer-0.10/libgstdvdspu.so)
- dvdsub (from /usr/lib64/gstreamer-0.10/libgstdvdsub.so)
- efence (from /usr/lib64/gstreamer-0.10/libgstefence.so)
- effectv (from /usr/lib64/gstreamer-0.10/libgsteffectv.so)
- encoding (from /usr/lib64/gstreamer-0.10/libgstencodebin.so)
- equalizer (from /usr/lib64/gstreamer-0.10/libgstequalizer.so)
- faad (from /usr/lib64/gstreamer-0.10/libgstfaad.so)
- faceoverlay (from /usr/lib64/gstreamer-0.10/libgstfaceoverlay.so)
- festival (from /usr/lib64/gstreamer-0.10/libgstfestival.so)
- ffmpeg (from /usr/lib64/gstreamer-0.10/libgstffmpeg.so)
- ffmpegcolorspace (from /usr/lib64/gstreamer-0.10/libgstffmpegcolorspace.so)
- ffvideoscale (from /usr/lib64/gstreamer-0.10/libgstffmpegscale.so)
- fieldanalysis (from /usr/lib64/gstreamer-0.10/libgstfieldanalysis.so)
- flac (from /usr/lib64/gstreamer-0.10/libgstflac.so)
- flv (from /usr/lib64/gstreamer-0.10/libgstflv.so)
- flxdec (from /usr/lib64/gstreamer-0.10/libgstflxdec.so)
- fragmented (from /usr/lib64/gstreamer-0.10/libgstfragmented.so)
- freeverb (from /usr/lib64/gstreamer-0.10/libgstfreeverb.so)
- freeze (from /usr/lib64/gstreamer-0.10/libgstfreeze.so)
- frei0r (from /usr/lib64/gstreamer-0.10/libgstfrei0r.so)
- gaudieffects (from /usr/lib64/gstreamer-0.10/libgstgaudieffects.so)
- gdp (from /usr/lib64/gstreamer-0.10/libgstgdp.so)
- geometrictransform (from /usr/lib64/gstreamer-0.10/libgstgeometrictransform.so)
- goom (from /usr/lib64/gstreamer-0.10/libgstgoom.so)
- goom2k1 (from /usr/lib64/gstreamer-0.10/libgstgoom2k1.so)
- gstrtpmanager (from /usr/lib64/gstreamer-0.10/libgstrtpmanager.so)
- gstsiren (from /usr/lib64/gstreamer-0.10/libgstsiren.so)
- h264parse (from /usr/lib64/gstreamer-0.10/libgsth264parse.so)
- hdvparse (from /usr/lib64/gstreamer-0.10/libgsthdvparse.so)
- icydemux (from /usr/lib64/gstreamer-0.10/libgsticydemux.so)
- id3demux (from /usr/lib64/gstreamer-0.10/libgstid3demux.so)
- id3tag (from /usr/lib64/gstreamer-0.10/libgstid3tag.so)
- iec958 (from /usr/lib64/gstreamer-0.10/libgstiec958.so)
- imagefreeze (from /usr/lib64/gstreamer-0.10/libgstimagefreeze.so)
- inter (from /usr/lib64/gstreamer-0.10/libgstinter.so)
- interlace (from /usr/lib64/gstreamer-0.10/libgstinterlace.so)
- interleave (from /usr/lib64/gstreamer-0.10/libgstinterleave.so)
- isomp4 (from /usr/lib64/gstreamer-0.10/libgstisomp4.so)
- ivfparse (from /usr/lib64/gstreamer-0.10/libgstivfparse.so)
- jack (from /usr/lib64/gstreamer-0.10/libgstjack.so)
- jp2kdecimator (from /usr/lib64/gstreamer-0.10/libgstjp2kdecimator.so)
- jpeg (from /usr/lib64/gstreamer-0.10/libgstjpeg.so)
- jpegformat (from /usr/lib64/gstreamer-0.10/libgstjpegformat.so)
- lame (from /usr/lib64/gstreamer-0.10/libgstlame.so)
- legacyresample (from /usr/lib64/gstreamer-0.10/libgstlegacyresample.so)
- level (from /usr/lib64/gstreamer-0.10/libgstlevel.so)
- libvisual (from /usr/lib64/gstreamer-0.10/libgstlibvisual.so)
- liveadder (from /usr/lib64/gstreamer-0.10/libgstliveadder.so)
- mad (from /usr/lib64/gstreamer-0.10/libgstmad.so)
- matroska (from /usr/lib64/gstreamer-0.10/libgstmatroska.so)
- mms (from /usr/lib64/gstreamer-0.10/libgstmms.so)
- moodbar (from /usr/lib64/gstreamer-0.10/libmoodbar.so)
- mpeg2dec (from /usr/lib64/gstreamer-0.10/libgstmpeg2dec.so)
- mpegaudioparse (from /usr/lib64/gstreamer-0.10/libgstmpegaudioparse.so)
- mpegdemux2 (from /usr/lib64/gstreamer-0.10/libgstmpegdemux.so)
- mpegpsmux (from /usr/lib64/gstreamer-0.10/libgstmpegpsmux.so)
- mpegstream (from /usr/lib64/gstreamer-0.10/libgstmpegstream.so)
- mpegtsdemux (from /usr/lib64/gstreamer-0.10/libgstmpegtsdemux.so)
- mpegtsmux (from /usr/lib64/gstreamer-0.10/libgstmpegtsmux.so)
- mpegvideoparse (from /usr/lib64/gstreamer-0.10/libgstmpegvideoparse.so)
- mplex (from /usr/lib64/gstreamer-0.10/libgstmplex.so)
- mulaw (from /usr/lib64/gstreamer-0.10/libgstmulaw.so)
- multifile (from /usr/lib64/gstreamer-0.10/libgstmultifile.so)
- multipart (from /usr/lib64/gstreamer-0.10/libgstmultipart.so)
- musepack (from /usr/lib64/gstreamer-0.10/libgstmusepack.so)
- mve (from /usr/lib64/gstreamer-0.10/libgstmve.so)
- mxf (from /usr/lib64/gstreamer-0.10/libgstmxf.so)
- navigationtest (from /usr/lib64/gstreamer-0.10/libgstnavigationtest.so)
- nsf (from /usr/lib64/gstreamer-0.10/libgstnsf.so)
- nuvdemux (from /usr/lib64/gstreamer-0.10/libgstnuvdemux.so)
- ogg (from /usr/lib64/gstreamer-0.10/libgstogg.so)
- opus (from /usr/lib64/gstreamer-0.10/libgstopus.so)
- patchdetect (from /usr/lib64/gstreamer-0.10/libgstpatchdetect.so)
- pcapparse (from /usr/lib64/gstreamer-0.10/libgstpcapparse.so)
- playback (from /usr/lib64/gstreamer-0.10/libgstplaybin.so)
- pnm (from /usr/lib64/gstreamer-0.10/libgstpnm.so)
- postproc (from /usr/lib64/gstreamer-0.10/libgstpostproc.so)
- pulseaudio (from /usr/lib64/gstreamer-0.10/libgstpulse.so)
- rawparse (from /usr/lib64/gstreamer-0.10/libgstrawparse.so)
- real (from /usr/lib64/gstreamer-0.10/libgstreal.so)
- realmedia (from /usr/lib64/gstreamer-0.10/libgstrmdemux.so)
- removesilence (from /usr/lib64/gstreamer-0.10/libgstremovesilence.so)
- replaygain (from /usr/lib64/gstreamer-0.10/libgstreplaygain.so)
- resindvd (from /usr/lib64/gstreamer-0.10/libresindvd.so)
- rfbsrc (from /usr/lib64/gstreamer-0.10/libgstrfbsrc.so)
- rtp (from /usr/lib64/gstreamer-0.10/libgstrtp.so)
- rtpmux (from /usr/lib64/gstreamer-0.10/libgstrtpmux.so)
- rtpvp8 (from /usr/lib64/gstreamer-0.10/libgstrtpvp8.so)
- rtsp (from /usr/lib64/gstreamer-0.10/libgstrtsp.so)
- scaletempo (from /usr/lib64/gstreamer-0.10/libgstscaletempoplugin.so)
- sdi (from /usr/lib64/gstreamer-0.10/libgstsdi.so)
- sdp (from /usr/lib64/gstreamer-0.10/libgstsdpelem.so)
- segmentclip (from /usr/lib64/gstreamer-0.10/libgstsegmentclip.so)
- shapewipe (from /usr/lib64/gstreamer-0.10/libgstshapewipe.so)
- smooth (from /usr/lib64/gstreamer-0.10/libgstsmooth.so)
- smpte (from /usr/lib64/gstreamer-0.10/libgstsmpte.so)
- soup (from /usr/lib64/gstreamer-0.10/libgstsouphttpsrc.so)
- spectrum (from /usr/lib64/gstreamer-0.10/libgstspectrum.so)
- speed (from /usr/lib64/gstreamer-0.10/libgstspeed.so)
- speex (from /usr/lib64/gstreamer-0.10/libgstspeex.so)
- staticelements (from )
- stereo (from /usr/lib64/gstreamer-0.10/libgststereo.so)
- subenc (from /usr/lib64/gstreamer-0.10/libgstsubenc.so)
- subparse (from /usr/lib64/gstreamer-0.10/libgstsubparse.so)
- taglib (from /usr/lib64/gstreamer-0.10/libgsttaglib.so)
- tcp (from /usr/lib64/gstreamer-0.10/libgsttcp.so)
- theora (from /usr/lib64/gstreamer-0.10/libgsttheora.so)
- tta (from /usr/lib64/gstreamer-0.10/libgsttta.so)
- typefindfunctions (from /usr/lib64/gstreamer-0.10/libgsttypefindfunctions.so)
- udp (from /usr/lib64/gstreamer-0.10/libgstudp.so)
- uridecodebin (from /usr/lib64/gstreamer-0.10/libgstdecodebin2.so)
- video4linux2 (from /usr/lib64/gstreamer-0.10/libgstvideo4linux2.so)
- videobox (from /usr/lib64/gstreamer-0.10/libgstvideobox.so)
- videocrop (from /usr/lib64/gstreamer-0.10/libgstvideocrop.so)
- videofilter (from /usr/lib64/gstreamer-0.10/libgstvideofilter.so)
- videofiltersbad (from /usr/lib64/gstreamer-0.10/libgstvideofiltersbad.so)
- videomaxrate (from /usr/lib64/gstreamer-0.10/libgstvideomaxrate.so)
- videomeasure (from /usr/lib64/gstreamer-0.10/libgstvideomeasure.so)
- videomixer (from /usr/lib64/gstreamer-0.10/libgstvideomixer.so)
- videoparsersbad (from /usr/lib64/gstreamer-0.10/libgstvideoparsersbad.so)
- videorate (from /usr/lib64/gstreamer-0.10/libgstvideorate.so)
- videoscale (from /usr/lib64/gstreamer-0.10/libgstvideoscale.so)
- videosignal (from /usr/lib64/gstreamer-0.10/libgstvideosignal.so)
- videotestsrc (from /usr/lib64/gstreamer-0.10/libgstvideotestsrc.so)
- vmnc (from /usr/lib64/gstreamer-0.10/libgstvmnc.so)
- volume (from /usr/lib64/gstreamer-0.10/libgstvolume.so)
- vorbis (from /usr/lib64/gstreamer-0.10/libgstvorbis.so)
- vp8 (from /usr/lib64/gstreamer-0.10/libgstvp8.so)
- wavenc (from /usr/lib64/gstreamer-0.10/libgstwavenc.so)
- wavpack (from /usr/lib64/gstreamer-0.10/libgstwavpack.so)
- wavparse (from /usr/lib64/gstreamer-0.10/libgstwavparse.so)
- x264 (from /usr/lib64/gstreamer-0.10/libgstx264.so)
- ximagesink (from /usr/lib64/gstreamer-0.10/libgstximagesink.so)
- xvid (from /usr/lib64/gstreamer-0.10/libgstxvid.so)
- xvimagesink (from /usr/lib64/gstreamer-0.10/libgstxvimagesink.so)
- y4mdec (from /usr/lib64/gstreamer-0.10/libgsty4mdec.so)
- y4menc (from /usr/lib64/gstreamer-0.10/libgsty4menc.so)
Expected result:
Actual result:
System information:
LeechCraft 0.6.70-2668-g3343a61
Built with Qt 4.8.6, running with Qt 4.8.6
Running on: Gentoo/Linux x86_64 3.19.0-gentoo #1 SMP PREEMPT Tue Feb 24 11:28:20 MSK 2015
Files
Updated by 0xd34df00d over 9 years ago
- Status changed from New to Assigned
- Target version set to 0.6.75
Updated by 0xd34df00d over 9 years ago
- Status changed from Assigned to Resolved
- % Done changed from 0 to 100
Applied in changeset main|4b094463e5b08c35139c2ef743d3282d39c374b2.
Updated by Mellon over 9 years ago
Теперь другие треки проигрываются норм. Но очередь по прежнему останавливается.
==> .leechcraft/warning.log <== [28.02.2015 17:02:09.169] [0x7fa645b69fe0] [1731] void LeechCraft::LMP::SourceObject::HandleErrorMsg(GstMessage*) QUrl( "file:///var/lib/mpd/music/c85.ar/dj sharpnel – invisible trigger/DJ SHARPNEL – INVISIBLE TRIGGER/20 - Speed Disco Vol.1 .mpc" ) 3141 7 "Не удалось декодировать поток." "/var/tmp/portage/media-plugins/gst-plugins-musepack-0.10.23-r1/work/gst-plugins-bad-0.10.23/ext/musepack/gstmusepackdec.c(552): gst_musepackdec_loop (): /GstPlayBin2:play/GstURIDecodeBin:uridecodebin0/GstDecodeBin2:decodebin20/GstMusepackDec:musepackdec6" ==> .leechcraft/debug.log <== [28.02.2015 17:02:09.170] [0x7fa645b69fe0] [1732] void LeechCraft::LMP::SourceObject::HandleErrorMsg(GstMessage*) draining bus [28.02.2015 17:02:09.170] [0x7fa649552770] [1733] bus drained, continuing
Можно это тоже поправить? Или так и должно быть?
Updated by 0xd34df00d over 9 years ago
- Status changed from Resolved to Assigned
- % Done changed from 100 to 60
- Estimated time changed from 3:00 h to 6:00 h
Вообще это by design, но да, ты прав, поправлю.
Updated by 0xd34df00d over 9 years ago
Олсо, по очевидным причинам для ряда ошибок (вроде ненайденного аудиодекодера, если вообще снести gst-plugins-musepack), продолжение воспроизведения будет работать только при последовательном режиме воспроизведения (чтобы оно в вечный цикл не вошло).
Updated by 0xd34df00d over 9 years ago
- Status changed from Assigned to Resolved
- % Done changed from 60 to 100
Applied in changeset main|380f3a038940ff7c84fc3e879f0faa0628be039e.