diff --git a/publish_video.c b/publish_video.c
index a6bd8535b4d38c28d93e967410e7857c60277ed7..887ff9f74f4a9c1f2803e75b7eb192d2a306ea99 100644
--- a/publish_video.c
+++ b/publish_video.c
@@ -10,6 +10,7 @@ int main(int argc, char *argv[])
 	if (argc != 5)
 		return 1;
 	av_register_all();
+	umask(S_IWOTH);
 	init_env();
 	init_avlogbuf();
 	jobid = atoi(argv[1]);
diff --git a/transcode.c b/transcode.c
index 8a03022a19680b867a0cf9b0add128768ccf4499..2f0c028a62720423654c9e917e1dc3c3c930bc0c 100644
--- a/transcode.c
+++ b/transcode.c
@@ -264,6 +264,7 @@ int main(int argc, char *argv[])
 	av_register_all();
 	avfilter_register_all();
 	init_env();
+	umask(S_IWOTH);
 	init_avlogbuf();
 	pkt.data = 0;
 	pkt.size = 0;