|
- using JT1078.Flv.MessagePack;
- using System;
- using System.Collections.Generic;
- using System.Text;
-
- namespace JT1078.Flv
- {
- public class FlvMuxer
- {
- private static readonly FlvHeader VideoFlvHeader = new FlvHeader(true, false);
- public byte[] FlvFirstFrame()
- {
- byte[] buffer = FlvArrayPool.Rent(10240);
- try
- {
- FlvMessagePackWriter flvMessagePackWriter = new FlvMessagePackWriter(buffer);
- //flv header
- flvMessagePackWriter.WriteArray(VideoFlvHeader.ToArray());
- //flv body
- //flv body PreviousTagSize awalys 0
- flvMessagePackWriter.WriteUInt32(0);
- //flv body tag
-
- //flv body tag header
-
- //flv body tag body
-
- return flvMessagePackWriter.FlushAndGetArray();
- }
- finally
- {
- FlvArrayPool.Return(buffer);
- }
- }
- public byte[] FlvOtherFrame()
- {
- byte[] buffer = FlvArrayPool.Rent(10240);
- try
- {
- FlvMessagePackWriter flvMessagePackWriter = new FlvMessagePackWriter(buffer);
-
- //flv body
- //flv body PreviousTagSize
-
- //flv body tag
-
- //flv body tag header
-
- //flv body tag body
-
- return flvMessagePackWriter.FlushAndGetArray();
- }
- finally
- {
- FlvArrayPool.Return(buffer);
- }
- }
- }
- }
|