| | 134 | == Multithreading for the ffmpeg commandline tool == |
| | 135 | |
| | 136 | '''Description:''' The ffmpeg commandline tool contains many components and uses a single thread to dispatch work to them. Separating those components into separate threads may improve latency and overall throughput. It should also reduce coupling between components, improving maintainability. The student is not expected to complete the separation fully for the whole tool, but make significant progress towards it. |
| | 137 | |
| | 138 | '''Expected results:''' Improved modularization of the tool, allowing to split off individual components into threads. Threading implemented for at least one class of components. |
| | 139 | |
| | 140 | '''Prerequisites:''' C skills, some knowledge of pthreads-based multithreading. |
| | 141 | |
| | 142 | '''Qualification Task:''' Identify the major components of the tool and the data flow between them. Select the component which will be easiest to split off. |
| | 143 | |
| | 144 | '''Mentor:''' Anton Khirnov (''elenril'' on Freenode IRC or anton@khirnov.net) |
| | 145 | |
| | 146 | |