Hi GStreamer team,
I experienced issues while decoding DVB subtitles contained in mpegTS files: Here is a sample of the rendering I used the 'dvbsuboverlay' element in following pipeline like // gst-launch -v filesrc location=video.mpg ! mpegtsdemux name=d ! // queue ! mp3parse ! mad ! audioconvert ! autoaudiosink d. ! // queue ! ffdec_h264 ! ffmpegcolorspace ! r. d. ! // queue ! "subpicture/x-dvb" ! dvbsuboverlay name=r ! ffmpegcolorspace ! autovideosink It may be related or not, but I got this logs from the parser: WARNING **: Parsing 2bit color DVB sub-picture. This is not tested at all. If you see this message, please provide the developers with sample media with these subtitles, if possible. If you are interested, I'll be able to provide a sample media with these subtitles. Furthermore, I notice that ffmpeg provide also a plugin 'ffdec_dvbsub' but I didn't succeed to decode the same file with this decoder. Because this ffmpeg dvbsub decoder correctly decode these subtitles in VLC, I'll probably compare/merge the 2 plugins dvbsuboverlay/ffdec_dvbsub to make it work. Here is the expected behavior: Regards, |
Hello,
On N, 2011-12-08 at 05:49 -0800, TruBzzz wrote: > Hi GStreamer team, > > I experienced issues while decoding DVB subtitles contained in mpegTS files: > Here is a sample of the rendering > http://gstreamer-devel.966125.n4.nabble.com/file/n4172790/dvbsub1.png > I used the 'dvbsuboverlay' element in following pipeline like > /// gst-launch -v filesrc location=video.mpg ! mpegtsdemux name=d ! > // queue ! mp3parse ! mad ! audioconvert ! autoaudiosink d. ! > // queue ! ffdec_h264 ! ffmpegcolorspace ! r. d. ! > // queue ! "subpicture/x-dvb" ! dvbsuboverlay name=r ! > ffmpegcolorspace ! autovideosink > / > > It may be related or not, but I got this logs from the parser: > */WARNING **: Parsing 2bit color DVB sub-picture. This is not tested at all. > If you see this message, please provide the developers with sample media > with these subtitles, if possible./* > If you are interested, I'll be able to provide a sample media with these > subtitles. Yes, that must be it. I never found any 2bit or 8bit samples to actually test the code with. All channels in Estonia and Finland used 4bit; I believe also some samples from UK/Spain were 4bit. So some sample media would be most appreciated. Not sure how to get it, but I believe if it can be public, there are some place on freedesktop server we can store it once someone with access has it. Maybe they are small enough as a bugzilla attachment, especially if just the subtitle elementary stream? > Furthermore, I notice that ffmpeg provide also a plugin 'ffdec_dvbsub' but I > didn't succeed to decode the same file with this decoder. The dvb-sub.c code from dvbsuboverlay plugin originates from libdvbsub I wrote for a DVB box back in the day, this code is at https://github.com/leio/libdvbsub From there you can see it in turn is based on that ffmpeg LGPL decoder, as a port to glib/gstreamer utilities (the gstreamer bitreader, etc), with other changes in there - commit log available on github. During that porting work I noticed various problems in the decoder that I fixed in the libdvbsub code. Though later some of those turned out to be my porting errors instead. There are a few FIXME-FFMPEG comments iirc, that show some potential problems in ffmpeg original code to look at by those that care. Eventually I did see ffmpeg itself render some samples fine though with its own unmodified code, iirc. > Because this ffmpeg dvbsub decoder correctly decode these subtitles in VLC, > I'll probably compare/merge the 2 plugins dvbsuboverlay/ffdec_dvbsub to make > it work. VLC has its own DVB subtitle decoding code, it doesn't use the one from ffmpeg. It's GPL, so I didn't care for that for my needs then. On hindsight I think I should have written it from scratch, to fit the spec with objects better and avoid various porting errors and inherited bugs - the spec is simple and straightforward enough. Maybe on a rainy day when we can convert it from an overlay to something that just provides subpicture regions for the videosink - then it may be more useful to hang on to the dvbsub spec objects in a different way, etc. > Here is the expected behavior: > http://gstreamer-devel.966125.n4.nabble.com/file/n4172790/dvbsub2.png It's probably just some porting error in the bitreader code, or also a bug in the original ffmpeg code. Shouldn't be too hard to fix with a sample. I suggest to record the problem on gstreamer bugzilla for tracking, and somehow provide a sample. The dvbsub spec is available publicly and free of charge if you want to take a stab at it yourself. With a sample I can take a quick look too. Regards, Mart Raudsepp _______________________________________________ gstreamer-devel mailing list [hidden email] http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel |
Hi Mart,
Sorry for answering late, I had to request agreement from my company to provide a sample, because the corresponding medias are copyright. I'll track the bug tomorrow in bugzilla and for your convenience attach a sample from a trailer with 2 subtitles PID encapsulated in mpeg-ts (chinese and arabic If I remember well) While testing other movies, I also noticed some subtitles are not displayed enough time, It must be a separate issue but this movie contain also 2-bit color dvbsub. I didn't not yet observed 8bit subtitles, I'll keep you updated if it's the case in the future. Regards, J-F |
Hi,
FYI bug is now tracked with ID 666352 Two samples are available here http://dl.free.fr/kPrIJ2roZ (chinese characters not correctly displayed) http://dl.free.fr/cWzQqDilv (russian and others language characters to quickly displayed) Regards, J-F |
Free forum by Nabble | Edit this page |