Replies: 3 comments
-
+1 million for this! There are certain features I advise users to disable in my app based on whether they're likely to overwhelm this single thread with an image encoder. |
Beta Was this translation helpful? Give feedback.
-
@basisbit Thanks for reporting Basically, when decoding one video stream, the number of threads is automatically created according to the number of CPU cores. I need to analyze the reason why load balancing between threads is not possible. I have one question. Is this issue only happening with HEVC? Does H264 have evenly distributed thread usage? |
Beta Was this translation helpful? Give feedback.
-
The name and number of decoder threads are not accurate. This is because it follows the name of the thread that opens the codec. At top, the name InboundWorker is the actual decoder thread. Anyway, when I tested the HEVC decoding, it was created and decoded in a single thread. I would like to automatically specify the number of threads if possible, but as the number of threads increases, a delay equal to the number of threads occurs. I will have to think about whether there is a good way and patch it. |
Beta Was this translation helpful? Give feedback.
-
Does OME support configuring it to use multiple CPU threads when decoding an incoming video stream which it can't handle with a single CPU thread? For example I am currently struggling with making OME support transcoding an incoming h265 1440p video stream on a 8 or 16 or 32 cores CPU, and it is mostly idle except for a single thread being at 100% for the decoding.
As an example, assume I want either the full original stream to be delivered over HLS or alternatively a 360p 1Mb/s x264 video stream as fallback.
Currently I see something like this in htop with the named threads view of ome enabled:
![image](https://private-user-images.githubusercontent.com/10870269/311079570-7fcd4f05-d258-4a61-9f17-2ce1466e778f.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjAyNjcwNjMsIm5iZiI6MTcyMDI2Njc2MywicGF0aCI6Ii8xMDg3MDI2OS8zMTEwNzk1NzAtN2ZjZDRmMDUtZDI1OC00YTYxLTlmMTctMmNlMTQ2NmU3NzhmLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA3MDYlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNzA2VDExNTI0M1omWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWYzZjQ2ZDg3ZWQwYmYxMjUxZDkxMzAzMjFmYzVmMGQ3MjU4ZTgxYWY5YjMwMmZjZTBkMzVlMTYxZGM2ZDVhY2QmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.LRLE0_awKlFdGuUvYCRmE1vI318hzmRFbvTuq-PGM3Q)
Beta Was this translation helpful? Give feedback.
All reactions