diff --git a/src/JT1078.DotNetty.TestHosting/Configs/nlog.unix.config b/src/JT1078.DotNetty.TestHosting/Configs/nlog.unix.config
index 5031aff..0a5efae 100644
--- a/src/JT1078.DotNetty.TestHosting/Configs/nlog.unix.config
+++ b/src/JT1078.DotNetty.TestHosting/Configs/nlog.unix.config
@@ -20,6 +20,9 @@
+
@@ -41,6 +44,7 @@
+
diff --git a/src/JT1078.DotNetty.TestHosting/JT1078WSFlv/JT1078WSFlvHostedService.cs b/src/JT1078.DotNetty.TestHosting/JT1078WSFlv/JT1078WSFlvHostedService.cs
index 86a8a5a..c90dcc4 100644
--- a/src/JT1078.DotNetty.TestHosting/JT1078WSFlv/JT1078WSFlvHostedService.cs
+++ b/src/JT1078.DotNetty.TestHosting/JT1078WSFlv/JT1078WSFlvHostedService.cs
@@ -35,12 +35,14 @@ namespace JT1078.DotNetty.TestHosting
private readonly JT1078WSFlvDataService jT1078WSFlvDataService;
private readonly FlvEncoder FlvEncoder = new FlvEncoder();
private readonly ILogger logger;
+ private readonly ILogger flvEncodingLogger;
public JT1078WSFlvHostedService(
ILoggerFactory loggerFactory,
JT1078WSFlvDataService jT1078WSFlvDataServic,
JT1078HttpSessionManager jT1078HttpSessionManager)
{
logger = loggerFactory.CreateLogger("JT1078WSFlvHostedService");
+ flvEncodingLogger = loggerFactory.CreateLogger("FlvEncoding");
this.jT1078WSFlvDataService = jT1078WSFlvDataServic;
this.jT1078HttpSessionManager = jT1078HttpSessionManager;
}
@@ -51,9 +53,18 @@ namespace JT1078.DotNetty.TestHosting
{
try
{
+ Stopwatch stopwatch = new Stopwatch();
foreach (var item in jT1078WSFlvDataService.JT1078Packages.GetConsumingEnumerable())
{
+ stopwatch.Start();
var flv3 = FlvEncoder.CreateFlvFrame(item);
+ stopwatch.Stop();
+ if(flvEncodingLogger.IsEnabled(LogLevel.Debug))
+ {
+ long times = stopwatch.ElapsedMilliseconds;
+ flvEncodingLogger.LogDebug($"flv encoding {times.ToString()}ms");
+ }
+ stopwatch.Reset();
if (flv3 == null) continue;
if (jT1078HttpSessionManager.GetAll().Count() > 0)
{
@@ -63,9 +74,16 @@ namespace JT1078.DotNetty.TestHosting
{
exists.TryAdd(session.Channel.Id.AsShortText(), 0);
string key = item.GetKey();
- session.SendBinaryWebSocketAsync(FlvEncoder.GetFirstFlvFrame(key, flv3));
+ //ws-flv
+ //session.SendBinaryWebSocketAsync(FlvEncoder.GetFirstFlvFrame(key, flv3));
+ //http-flv
+ session.SendHttpFirstChunkAsync(FlvEncoder.GetFirstFlvFrame(key, flv3));
+ continue;
}
- session.SendBinaryWebSocketAsync(flv3);
+ //ws-flv
+ //session.SendBinaryWebSocketAsync(flv3);
+ //http-flv
+ session.SendHttpOtherChunkAsync(flv3);
}
}
}
diff --git a/src/JT1078.DotNetty.TestHosting/dll/JT1078.Flv.dll b/src/JT1078.DotNetty.TestHosting/dll/JT1078.Flv.dll
index dc79ec3..438350e 100644
Binary files a/src/JT1078.DotNetty.TestHosting/dll/JT1078.Flv.dll and b/src/JT1078.DotNetty.TestHosting/dll/JT1078.Flv.dll differ