Calling ffmpeg doesn't work on apache server

257 views
Skip to first unread message

Chad Vernon

unread,
Jun 19, 2013, 7:01:30 PM6/19/13
to django...@googlegroups.com
I'm trying to use ffmpeg to generate a thumbnail for a video.  It works just fine when I call it from a python shell and when I test it in "python manage.py shell".  However when I try to run from the apache server running locally, I get an error:

# normally I call subprocess.call, but for debug here I'm calling check_call
response = subprocess.check_call(['ffmpeg', '-i', self.file.path], stderr=fh)

# actual path taken out for brevity
Command '['ffmpeg', '-i', u'...']' returned non-zero exit status -6

I've verified that the video path is correct.

Any suggestions?

Thanks!
Chad

Chad Vernon

unread,
Jun 19, 2013, 7:12:02 PM6/19/13
to django...@googlegroups.com
Looks like it has something to do with calling subprocess from the server because this gives the same error:

response = subprocess.check_output(['which', 'ls'])

Anyone have any suggestions?

Chad Vernon

unread,
Jun 19, 2013, 7:48:49 PM6/19/13
to django...@googlegroups.com
One last observation:

I think it has something to do with the apache user permissions.  I'm running the mod_wsgi daemon process with myself as the user and I need to specify the full path to ffmpeg (/usr/local/bin/ffmpeg).  Even when I do that the function runs every other time.  So I'm totally confused now.  I'm an apache/django beginner so bear with me please!

John

unread,
Jun 19, 2013, 7:57:00 PM6/19/13
to django...@googlegroups.com
Chad,

Are you restarting apache after each change? It sounds like you have the default 2 workers and you are getting two different 'versions' alternately. Apache needs to be restarted if you change something (or there's some magic touch you can do with wsgi that I forget).

Otherwise it does look like permissions, or running in the wrong directory, or such like.

John
--
You received this message because you are subscribed to the Google Groups "Django users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to django-users...@googlegroups.com.
To post to this group, send email to django...@googlegroups.com.
Visit this group at http://groups.google.com/group/django-users.
For more options, visit https://groups.google.com/groups/opt_out.
 
 

Chad Vernon

unread,
Jun 20, 2013, 7:11:33 PM6/20/13
to django...@googlegroups.com, john-...@martinhome.org.uk
Hi John,

Yes I am restarting apache after all changes I do.  How do I check what workers I have running?

Thanks,
Chad

Ovnicraft

unread,
Jun 20, 2013, 7:51:10 PM6/20/13
to django...@googlegroups.com
On Wed, Jun 19, 2013 at 6:01 PM, Chad Vernon <chadv...@gmail.com> wrote:
I'm trying to use ffmpeg to generate a thumbnail for a video.  It works just fine when I call it from a python shell and when I test it in "python manage.py shell".  However when I try to run from the apache server running locally, I get an error:

# normally I call subprocess.call, but for debug here I'm calling check_call
response = subprocess.check_call(['ffmpeg', '-i', self.file.path], stderr=fh)

# actual path taken out for brevity
Command '['ffmpeg', '-i', u'...']' returned non-zero exit status -6


Can you pastebin de output, when use ffmpeg as subprocess (i did it) you can get in output what happens, check_output can help you if you want output in response var.

Regards,
 
I've verified that the video path is correct.

Any suggestions?

Thanks!
Chad

--
You received this message because you are subscribed to the Google Groups "Django users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to django-users...@googlegroups.com.
To post to this group, send email to django...@googlegroups.com.
Visit this group at http://groups.google.com/group/django-users.
For more options, visit https://groups.google.com/groups/opt_out.
 
 



--
Cristian Salamea
@ovnicraft

Chad Vernon

unread,
Jul 15, 2013, 2:33:42 PM7/15/13
to django...@googlegroups.com
The issue turns on to be a bug in Python regarding sub-interpreters:

http://stackoverflow.com/questions/8309465/popen-does-not-work-anymore-with-apache-wsgi-and-python-2-7-2

Adding this to my http conf fixed it:
WSGIApplicationGroup %{GLOBAL}
Reply all
Reply to author
Forward
0 new messages