-
-
Notifications
You must be signed in to change notification settings - Fork 7.9k
Matplotlib Animation.save() hangs from stalled pipe #2568
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
The same issue occurs when using Mencoder as the backend because it also outputs to stdout/stderr... |
@snaphat Could you possibly put together a PR to do this? |
Option 2 seems unnecessarily complicated for our purposes; option 3 is simplest. Would it do any harm in real use cases? |
As this only happens on 3.2 (which I think we should drop support for altogether...IPython has) punting to 1.4.x |
According to my last comment, this is only an issue for 3.2 that we no longer 'officially' support, closing. |
This is to report that an early fix for a bug doesn't actually work:
b836275
FFmpeg pushes status information about frames/fps/time/bitrate/etc to stderr regardless of the log level so the buffer is going to eventually fill and stall the pipe when enough information is pushed.
There are three possible solutions I see:
Redirecting stderr to a file and read that if an exception is raised.
Disabling blocking on the non-redirected file descriptor and reading/buffering the stderr into memory manually similar to the following:
http://chase-seibert.github.io/blog/2012/11/16/python-subprocess-asynchronous-read-stdout.html
Don't redirect stderr for printing on error.
The text was updated successfully, but these errors were encountered: