After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 570009 - Request: PVN demuxer
Request: PVN demuxer
Status: RESOLVED INCOMPLETE
Product: GStreamer
Classification: Platform
Component: gst-plugins-bad
0.10.x
Other Linux
: Normal enhancement
: git master
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2009-01-31 19:08 UTC by søren hauberg
Modified: 2013-07-23 13:13 UTC
See Also:
GNOME target: ---
GNOME version: 2.23/2.24


Attachments
Adds a PVN demux to pnm plugin. (15.26 KB, patch)
2009-10-26 12:49 UTC, Thiago Sousa Santos
needs-work Details | Review

Description søren hauberg 2009-01-31 19:08:58 UTC
It seems like GStreamer doesn't support the PVN format. It would be wonderful if it did. This is essentially just a file with many PNM's, so the format is really simple. It is documented at http://www.cse.yorku.ca/~jgryn/research/pvnspecs.html -- this site also contains source code for working with PVN files. The format is popular in research areas such as Video Processing since it is easy to dump your data in to a PVN file. Coriander (a nice Free program for working with Firewire cameras) also dumps movies in this format, which is another reason why it would be nice if GStreamer supported this format.

Thanks for your great effort :-)
Comment 1 Thiago Sousa Santos 2009-10-19 23:43:06 UTC
It is indeed a simple format, although I couldn't find any samples on the internet. Can you upload some? Possibly of the various image formats?
Comment 2 søren hauberg 2009-10-21 07:27:12 UTC
I recorded a small movie for you using 'Coriander'. Due to the lack of compression these files quickly becomes quite large, so I've compressed it and uploaded it to

http://image.diku.dk/hauberg/test-0000000000.pvn.bz2

Thanks
Comment 3 Thiago Sousa Santos 2009-10-26 12:49:02 UTC
Created attachment 146260 [details] [review]
Adds a PVN demux to pnm plugin.

Quickly wrote one for testing, I know there are some things to improve in it.

The spec says that little endian machines should reorder its pixels, but I don't know if this is to be in pvndemux or in pnmdec. What do you think? Do pnm files have endianness restrictions? Are they all big endian as in pvn?
Comment 4 Thiago Sousa Santos 2009-10-27 17:59:36 UTC
Nevermind, I understood the spec, the endianness change is only needed when each pixel uses more than a byte, which is not the case. Still, the output is with its colors mixed and I don't know why. Could you help me out here?
Comment 5 Stefan Sauer (gstreamer, gtkdoc dev) 2010-04-13 13:24:52 UTC
Soren, could you help and answer the question?
Comment 6 søren hauberg 2010-04-13 16:00:52 UTC
Sadly, I don't know the answer. I've stumbled upon the format as I use Coriander for recording purposes. One solution would be to look at the Coriander code and see how it writes data to disk.
Comment 7 Stefan Sauer (gstreamer, gtkdoc dev) 2010-04-13 17:53:43 UTC
If you have a link for Coriander please add it here for reference.
Comment 8 søren hauberg 2010-04-13 18:30:31 UTC
Ohh, sorry about that. You can find Coriander at

  http://damien.douxchamps.net/ieee1394/coriander/
Comment 9 Stefan Sauer (gstreamer, gtkdoc dev) 2011-02-28 14:45:22 UTC
Thiagos, what about adding this to git?
Comment 10 Sebastian Dröge (slomo) 2011-05-09 09:24:12 UTC
ping?
Comment 11 Stefan Sauer (gstreamer, gtkdoc dev) 2011-12-01 13:35:26 UTC
søren, could you please regenerate the patch.

> git am 0001-pnm-adds-pvndemux.patch
Applying: pnm: adds pvndemux
/home/ensonic/projects/gstreamer/0.10/gst-plugins-bad/.git/rebase-apply/patch:455: trailing whitespace.
#define GST_PVNDEMUX_HEADER_MAGIC        0 
/home/ensonic/projects/gstreamer/0.10/gst-plugins-bad/.git/rebase-apply/patch:456: trailing whitespace.
#define GST_PVNDEMUX_HEADER_WIDTH        1 
/home/ensonic/projects/gstreamer/0.10/gst-plugins-bad/.git/rebase-apply/patch:457: trailing whitespace.
#define GST_PVNDEMUX_HEADER_HEIGHT       2 
/home/ensonic/projects/gstreamer/0.10/gst-plugins-bad/.git/rebase-apply/patch:458: trailing whitespace.
#define GST_PVNDEMUX_HEADER_DEPTH        3 
/home/ensonic/projects/gstreamer/0.10/gst-plugins-bad/.git/rebase-apply/patch:459: trailing whitespace.
#define GST_PVNDEMUX_HEADER_MAXCOLOUR    4 
error: patch failed: gst/pnm/Makefile.am:1
error: gst/pnm/Makefile.am: patch does not apply
error: patch failed: gst/pnm/gstpnm.c:22
error: gst/pnm/gstpnm.c: patch does not apply
Patch failed at 0001 pnm: adds pvndemux
Comment 12 Thiago Sousa Santos 2011-12-01 13:41:17 UTC
IIRC there was an issue with colorspaces with this code. Everything looked blue-ish. Didn't have time to check coriander and fix this properly.
Comment 13 Sebastian Dröge (slomo) 2013-07-23 13:13:27 UTC
Let's close this for now, nobody seems to be interested enough to port the patch to 1.0 and try to get it included.