summaryrefslogtreecommitdiff
path: root/src/lib/encode_server.cc
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2023-09-24 00:34:15 +0200
committerCarl Hetherington <cth@carlh.net>2024-01-28 02:01:57 +0100
commitf8d0dac871883c7cbfa6f31c182ca3e6d213aed1 (patch)
tree6bc2c82776d66380382cbfb76940463c950f4b6e /src/lib/encode_server.cc
parent25dd85d10a05b363f5f6a94d6dafbf4aed47c4ac (diff)
Rearrange encoder threading.
Soon we'll add a new encoder type, and the existing structure was already creaking a bit at the seams while handling local and remote encodes. Here we split out an encoder thread and introduce the concept of a "sync" thread (which blocks while the encoding is happening). Later we'll have another type which submits the encode request to a GPU and receives the reply back later.
Diffstat (limited to 'src/lib/encode_server.cc')
-rw-r--r--src/lib/encode_server.cc3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/lib/encode_server.cc b/src/lib/encode_server.cc
index 036ea58a5..7eae4375f 100644
--- a/src/lib/encode_server.cc
+++ b/src/lib/encode_server.cc
@@ -81,6 +81,7 @@ EncodeServer::EncodeServer (bool verbose, int num_threads)
#endif
, _verbose (verbose)
, _num_threads (num_threads)
+ , _frames_encoded(0)
{
}
@@ -169,6 +170,8 @@ EncodeServer::process (shared_ptr<Socket> socket, struct timeval& after_read, st
throw;
}
+ ++_frames_encoded;
+
return dcp_video_frame.index ();
}