Start adaptive stream using the highest resolution - WinRT only
This will also allow you to select the option to begin streaming at the highest bit-rate available via the Platform Specific > Windows options. This will give better streaming performance and compatibility, especially for live streams. System.DateTime time = () ĭebug.Log("Valid time: " + time.toString()) įor best results with adaptive streams, select the WinRT video API (requires Windows 10) instead of the default Media Foundation. This can be queried in script: // Get the stream date and time
This is supported on macOS, iOS, tvOS, Android (using ExoPlayer) and Windows 10 (using WinRT API). Some HLS streams contain a program-time via the EXT-X-PROGRAM-DATE-TIME tag. TimeRanges seekable = () ĭebug.Log("Seekable time: " + seekable.MinTime + " " + seekable.MaxTime) The seekable range should be queried to determine this. Some live streams contain a seekable range so that the stream can be viewed from an offset from the live time. Detect a live streamĭouble duration = () īool isLive = double.IsInfinity(duration) Live HLS and MPEG-DASH streams are supported and will return a duration of +infinity. As shown in the above table AVPro Video doesn't have strong support for these formats as they are not the focus of this plugin and most operating systems do not have good native support for them.
Real-time Streamingįormats like RTSP/RTMP are designed for real-time streaming and are popular with live streaming cameras. On Apple platforms the player adheres to Apple's standard of starting with the first stream in the manifest file.ĪES-128 encrypted HLS streams, and custom HTTP headers are supported in the Ultra Edition. On certain platforms (Android and Windows 10) we allow setting a hint so that streaming will begin with the highest bit-rate.
To prepare an MP4 for streaming using FFMPEG you can use the following command: ffmpeg -i %1 -acodec copy -vcodec copy -movflags faststart %1-streaming.mp4Īdaptive streaming such as HLS and MPEG-DASH are flexibly formats that support adaptive bit-rate selection and multiple audio, video and subtitle tracks. You normally do this by selecting “Fast Start” in QuickTime encoder, or use the “-movflags faststart” option in FFMPEG, Other encoders will have a similar option. When encoding MP4 videos for streaming make sure they are encoded with the video header data at the beginning of the file. The HTTP server should support features such as byte range requests. It is very similar to playing a local MP4 file, except that it is streamed from a network source.
This form of streaming is probably the most widely supported. Known issues surrounding address resolution. Generally only support ASF, MP3 and PCM media types, but support seems improved from Windows 10 build 1803 onwards (as in added H.264 support), but it's not documented (parsing is handled by mfnetsrc.dll).ģ Only using DirectShow with suitable 3rd party filter (eg LAV Filters).ĥ Using ExoPlayer API, or MediaPlayer API (but not fully featured).Ħ Using ExoPlayer API only. AVPro Video supports several streaming protocol depending on the platform:ġ Requires Windows 10 for native support, or using DirectShow with suitable 3rd party filter (eg LAV Filters).Ģ Limited native support.