[bugs:#100] pix_film with DS eats up cpu in W32

Status: open
Group: 0.93
Labels: Pixes (pix_ objects) pix_film DirectShow w32
Created: Sat Mar 27, 2010 04:26 PM UTC by Matteo Sisti Sette
Last Updated: Sat Mar 27, 2010 04:26 PM UTC
Owner: nobody

When I send an [open( message to a pix_film object, if it uses DirectShow (as opposed to QuickTime) to decode the file, it starts consuming an enormous amount of cpu: around 30% of a 2.5GHz Intel Core Duo machine. Furthermore, it never stops eating that much cpu, even if you stop repdorucing the file (by setting auto to 0 and not changing the frame through the right inlet) and even if you disconnect it from the gemhead.

This happens with file encoded with various codecs: DV-PAL, H.264, Animation+, and I suspect everything else.

Note that if I open the files with QuickTime instead of DS (by appending the proper number to the open message), then this does not happen: the impact of opening the file on the CPU is minimal, almost impossible to note, and it only consumes cpu during few seconds after opening the file, and when _actually_ playing it (i.e. a gemhead connected to it and changing frame). That is, with quicktime pix_film only consumes CPU when it is supposed to, and it is much much less CPU: you can easily read 6 full-size DV-PAL files actually rendering some portion of them on the screen, and you can have a dozen of pix_film with [open(ed files without impact on CPU (or even many more, then the impact won't be on CPU but on performance in general due to the memory trashing).

This can't be normal: DirectShow is supposed to be much faster than QuickTime on Windows; also, any given media player will open a video file using DirectSHow and without eating up nearly as much cpu, especially when not playing.
There must be something wrong in GEM.


Sent from sourceforge.net because gem-dev@lists.iem.at is subscribed to https://sourceforge.net/p/pd-gem/bugs/

To unsubscribe from further messages, a project admin can change settings at https://sourceforge.net/p/pd-gem/admin/bugs/options. Or, if this is a mailing list, you can unsubscribe from the mailing list.