|
1 | 1 | # H264Sharp
|
2 |
| -Cisco's OpenH264 Native wrapper for .Net with optimised image format conversion support. It is very suitable for realtime streaming over network. |
3 |
| -This is the only open source C# library with full feature wrapper. |
4 |
| -Image format converters are faster than OpenCV implementation. |
| 2 | +Cisco's OpenH264 Native wrapper for .Net with optimised color format conversion support. It is very suitable for realtime streaming over network. |
| 3 | +This is the only open source .Net library with full feature wrapper, supported for windows and linux. |
| 4 | +Arm platforms are work in progress. |
| 5 | + |
| 6 | +SIMD color format converters are faster than OpenCV implementation. |
| 7 | +- Cross Platform |
5 | 8 | - Plug&Play
|
6 |
| -- Tested on .NetFramework and Net(up to 8). |
| 9 | +- Tested on .NetFramework and Net(up to 8), Windows & Linux. |
7 | 10 | - Compatible with OpenCV.(i.e. OpenCVsharp)
|
8 | 11 | - Tested on WPF application with camera and screen capture.
|
9 | 12 | - No memory leaks or GC pressure.
|
10 | 13 | - Simple console application example and WPF application is provided as an example.
|
11 | 14 |
|
12 |
| -Library consist of native dll which acts as OpenH264 wrapper and image format converter (YUV420p <-> RGB,BGR,RGBA,BGRA) |
| 15 | +Library consist of native dll which acts as OpenH264 wrapper and color format converter (YUV420p <-> RGB,BGR,RGBA,BGRA) |
13 | 16 | <br/>Converters are vectorised(AVX2 and SSE) and can be configured for parallelisation for high performance.
|
14 | 17 |
|
15 | 18 | C# library is .Net standard wrapper library for this dll and performs PInvoke to handle transcoding.
|
16 | 19 | ## Nuget
|
17 | 20 | Install the nuget package and its ready to go. All native dependencies are automatically installed and will apepear on your executable directory.
|
| 21 | +linux binaries are provided on releases, Nuget release coming soon. |
18 | 22 |
|
19 | 23 | [](https://www.nuget.org/packages/H264Sharp/1.2.0)
|
20 | 24 |
|
@@ -192,7 +196,7 @@ Similarly for decoder
|
192 | 196 | decoder.Initialize(decParam);
|
193 | 197 | ```
|
194 | 198 |
|
195 |
| -Image format conversion (RGB <-> YUV420) has optional configuration where you can provide number of threads on parallelisation. |
| 199 | +Color format conversion (RGB <-> YUV420) has optional configuration where you can provide number of threads on parallelisation. |
196 | 200 | <br/>Using 1 thread gives consumes least cpu cycles and most efficient but it takes more time.
|
197 | 201 | Beyond 4 threads you start to get diminishing returns.
|
198 | 202 | <br/>Fastest performance is achieved when threadcount is same as your phyical threads on your machine.
|
|
0 commit comments