VLC and VLS are open source video streaming software that can stream live or recorded video over networks. VLC supports streaming a wide variety of video formats and output protocols, but can only stream one video at a time. VLS can stream multiple videos simultaneously but has more limited format support and output options than VLC. Windows Streaming Media server only supports Microsoft formats while Helix and Darwin servers only support proprietary formats. Apache with a plugin can provide video on demand over HTTP but has issues. SAP/SDP announcements can help clients easily find multicast streams.
Kernel Recipes 2017 - Developing an embedded video application on dual Linux ...Anne Nicolas
Embedded video tends to be an increasing subject in embedded Linux developments. Even if ARM SOCs provide great resources for video treatment with dedicated IPU, GPU …, a dual approach based on FPGA + general purpose processor is an interesting alternative.
In this presentation Christian Charreyre will provide a return of experience of a video acquisition and treatment application developed on a Zynq board, with focus on interactions between the FPGA part and Linux. The presentation will also describe the embedded Linux development choices, based on standard meta-xilinx Yocto layer instead of current solutions using PetaLinux or WindRiver Pulsar.
The typical audience is people interested in embedded Linux solutions using a mixed architecture between a general purpose processor and a specialized co-processor. Attendees will receive informations on the relationships between the Linux environment and the FPGA about hardware description, boot mechanism, necessary customizations of Yocto recipes, and much more.
Christian Charreyre, CIO Systèmes Embarqués
BKK16-409 VOSY Switch Port to ARMv8 Platforms and ODP IntegrationLinaro
Virtual Open Systems has developed VOSYSwitch, a high-performance user space networking virtual switch solution enabling NFV, based on the open source packet processing framework SnabbSwitch. In this talk, the experience of porting VOSYSwitch from x86 to ARMv8 will be shared, along with the integration of ODP as a driver layer for the available hardware resources. In addition to this presentation, a live demonstration will showcase chained VNFs connected through VOSYSwitch, where an OpenFastPath web server is implemented behind an ODP enabled packet filtering firewall. The targeted platforms are Freescale (NXP) LS2085A and Cavium's ThunderX.
Linux firmware for iRMC controller on Fujitsu Primergy serversVladimir Shakhov
Integrated Remote Management Controller aka iRMC (http://manuals.ts.fujitsu.com/file/11470/irmc-s4-ug-en.pdf) is a special-purpose ARM board, included in every Fujitsu Primergy server and actually running on GNU/Linux. Digging into the process of creation of iRMC firmware, significantly based on FOSS components, including Linux kernel, busybox, glibc, net-snmp and many others. Lecture covering technical details how its working, how to use OpenSource components together with propiertary code.
RDKB is Open Source Broadband Gateway platform stack, built on top of an OpenEmbedded build framework. It’s currently deployed on all Comcast broadband home gateways. This talk will introduce the internals of RDKB and features forming the basis of the IoT framework for the Comcast Network.
Kernel Recipes 2017 - Developing an embedded video application on dual Linux ...Anne Nicolas
Embedded video tends to be an increasing subject in embedded Linux developments. Even if ARM SOCs provide great resources for video treatment with dedicated IPU, GPU …, a dual approach based on FPGA + general purpose processor is an interesting alternative.
In this presentation Christian Charreyre will provide a return of experience of a video acquisition and treatment application developed on a Zynq board, with focus on interactions between the FPGA part and Linux. The presentation will also describe the embedded Linux development choices, based on standard meta-xilinx Yocto layer instead of current solutions using PetaLinux or WindRiver Pulsar.
The typical audience is people interested in embedded Linux solutions using a mixed architecture between a general purpose processor and a specialized co-processor. Attendees will receive informations on the relationships between the Linux environment and the FPGA about hardware description, boot mechanism, necessary customizations of Yocto recipes, and much more.
Christian Charreyre, CIO Systèmes Embarqués
BKK16-409 VOSY Switch Port to ARMv8 Platforms and ODP IntegrationLinaro
Virtual Open Systems has developed VOSYSwitch, a high-performance user space networking virtual switch solution enabling NFV, based on the open source packet processing framework SnabbSwitch. In this talk, the experience of porting VOSYSwitch from x86 to ARMv8 will be shared, along with the integration of ODP as a driver layer for the available hardware resources. In addition to this presentation, a live demonstration will showcase chained VNFs connected through VOSYSwitch, where an OpenFastPath web server is implemented behind an ODP enabled packet filtering firewall. The targeted platforms are Freescale (NXP) LS2085A and Cavium's ThunderX.
Linux firmware for iRMC controller on Fujitsu Primergy serversVladimir Shakhov
Integrated Remote Management Controller aka iRMC (http://manuals.ts.fujitsu.com/file/11470/irmc-s4-ug-en.pdf) is a special-purpose ARM board, included in every Fujitsu Primergy server and actually running on GNU/Linux. Digging into the process of creation of iRMC firmware, significantly based on FOSS components, including Linux kernel, busybox, glibc, net-snmp and many others. Lecture covering technical details how its working, how to use OpenSource components together with propiertary code.
RDKB is Open Source Broadband Gateway platform stack, built on top of an OpenEmbedded build framework. It’s currently deployed on all Comcast broadband home gateways. This talk will introduce the internals of RDKB and features forming the basis of the IoT framework for the Comcast Network.
Linaro has multiple labs and board farms with varying purposes. This session will start with an overview of each of these, their locations, their focus, etc. It will then provide examples and direction on how a Member can add their hardware to a board farm. It will also provide an overview of how a Member or employee can navigate/leverage/check out a board for experimentation and usage (this varies based upon which lab/board farm is being considered, so all will be reviewed) in each of the farm locations. Finally, the session will provide pointers to any respective documentation, user guides, etc. for each of the locations.
Rob Herring is going to talk to us about the future ideas for his HAL work and how it could relate to our IoT group. Please bring your ideas, problem statements and be ready to discuss!
LAS16-400K2: TianoCore – Open Source UEFI Community UpdateLinaro
LAS16-400K2: TianoCore – Open Source UEFI Community Update
Speakers: Brian Richardson
Date: September 29, 2016
★ Session Description ★
Title: TianoCore – Open Source UEFI Community Update
The TianoCore project hosts EDK II, an open source implementation of the Unified Extensible Firmware Interface (UEFI). EDK II has become the defacto UEFI implementation for ARM and Intel platforms, expanding standards based firmware across multiple architectures. This keynote will provide an update on the current status of the TianoCore project, plans for future improvements, and a discussion of why firmware is critical in today’s digital ecosystem.
Bio
Brian Richardson is an Intel technical evangelist who has spent most of his career as a “BIOS guy” working on the firmware that quietly boots billions of computers. Brian has focused on the industry transition to the Unified Extensible Firmware Interface (UEFI), demystifying how firmware works and simplifying firmware development tools. Brian has presented at LinuxCon, UEFI Plugfests, and Intel Developer Forum. He is a blogger for the Intel Software Evangelists project, former writer forlinux.com, and (apropos of nothing) executive producer for DragonConTV.
★ Resources ★
Watch the video: https://www.youtube.com/watch?v=kQ5X8vqdSu0
Etherpad: pad.linaro.org/p/las16-400k2
Presentations & Videos: http://connect.linaro.org/resource/las16/las16-400k2/
★ Event Details ★
Linaro Connect Las Vegas 2016 – #LAS16
September 26-30, 2016
http://www.linaro.org
http://connect.linaro.org
HKG18-217 - OpenCDM/CDMi (Multi DRM) work with WPE & ChromiumLinaro
Session ID: HKG18-217
Session Name: HKG18-217 - OpenCDM/CDMi (Multi DRM) work with WPE & Chromium
Speaker: Sivasubramanian Patchaiperumal
Track: Digital Home
★ Session Summary ★
This session will provide an overview of Linaro OpenCDM/CDMi work with WPE, Chromium browsers and multiDRM solution with OPTEE decryption on HiKey OpenEmbedded build. The main focus will be about the addition of WPE browser support to existing Linaro CDM/CDMi and it's validation with different DRMs like ClearKey, PlayReady and Widevine on RDK Client image (Morty OE build) with Westeros Wayland Compositor.
---------------------------------------------------
★ Resources ★
Event Page: http://connect.linaro.org/resource/hkg18/hkg18-217/
Presentation: http://connect.linaro.org.s3.amazonaws.com/hkg18/presentations/hkg18-217.pdf
Video: http://connect.linaro.org.s3.amazonaws.com/hkg18/videos/hkg18-217.mp4
---------------------------------------------------
★ Event Details ★
Linaro Connect Hong Kong 2018 (HKG18)
19-23 March 2018
Regal Airport Hotel Hong Kong
---------------------------------------------------
Keyword: Digital Home
'http://www.linaro.org'
'http://connect.linaro.org'
---------------------------------------------------
Follow us on Social Media
https://www.facebook.com/LinaroOrg
https://www.youtube.com/user/linaroorg?sub_confirmation=1
https://www.linkedin.com/company/1026961
oVirt Extension API: The first step for fully modular oVirtMartin Peřina
Prior to version 3.5 oVirt didn't provide standard API for creating custom modules/extension. There were some parts of oVirt that allowed limited extensibility like UI plugins or VDSM hooks, but no standard solution.
In this session we will take a look at new extension API introduced in oVirt 3.5. We will take a look at features this API offers and we will demonstrate how to create new extension. We will also take a look at different functionality in oVirt that already leverage this API, like AAA and logging, and will present our future plans around it.
The New oVirt Extension API: Taking AAA (Authentication Authorization Account...Martin Peřina
Prior to oVirt 3.5, authentication and authorization was implemented as monolithic module, logic and schema was hard-coded, Kerberos was used for authentication to LDAP server. It was very hard to support and it didn't contain requested features like SSO or proper multi-domain setup.
In this session we will take a look at new extension API introduced in oVirt 3.5.
This API is designed to be stable (easy to extend without breaking backward compatibility), simple (it's invoke based) and yet flexible (it allows extension to extension communication and allows to write extensions in other languages than Java like Javascript or JPython).
We will also take a look at the AAA (authentication, authorization, accounting) extensions which uses this API. Those extensions included in oVirt 3.5 allow to use generic LDAP or database for authentication and authorization or allow SSO for UI and API part of oVirt.
Wherein I install OpenWRT on to an inexpensive TP-Link pocket router, install perl and attempt to smoke CPAN.
I also introduce OpenWRT in possibly too much detail, and dont really explain what smoking CPAN is.
Here is my first speech for BeeCon 2016 about the integration of Alfresco with Caffe (Machine Learning). This presentation include s a video demo. Enjoy & have fun!! ^_^
PS: If you cannot see the video embebed, please go here: https://www.youtube.com/watch?v=cGxCa4eQRJM
Linaro has multiple labs and board farms with varying purposes. This session will start with an overview of each of these, their locations, their focus, etc. It will then provide examples and direction on how a Member can add their hardware to a board farm. It will also provide an overview of how a Member or employee can navigate/leverage/check out a board for experimentation and usage (this varies based upon which lab/board farm is being considered, so all will be reviewed) in each of the farm locations. Finally, the session will provide pointers to any respective documentation, user guides, etc. for each of the locations.
Rob Herring is going to talk to us about the future ideas for his HAL work and how it could relate to our IoT group. Please bring your ideas, problem statements and be ready to discuss!
LAS16-400K2: TianoCore – Open Source UEFI Community UpdateLinaro
LAS16-400K2: TianoCore – Open Source UEFI Community Update
Speakers: Brian Richardson
Date: September 29, 2016
★ Session Description ★
Title: TianoCore – Open Source UEFI Community Update
The TianoCore project hosts EDK II, an open source implementation of the Unified Extensible Firmware Interface (UEFI). EDK II has become the defacto UEFI implementation for ARM and Intel platforms, expanding standards based firmware across multiple architectures. This keynote will provide an update on the current status of the TianoCore project, plans for future improvements, and a discussion of why firmware is critical in today’s digital ecosystem.
Bio
Brian Richardson is an Intel technical evangelist who has spent most of his career as a “BIOS guy” working on the firmware that quietly boots billions of computers. Brian has focused on the industry transition to the Unified Extensible Firmware Interface (UEFI), demystifying how firmware works and simplifying firmware development tools. Brian has presented at LinuxCon, UEFI Plugfests, and Intel Developer Forum. He is a blogger for the Intel Software Evangelists project, former writer forlinux.com, and (apropos of nothing) executive producer for DragonConTV.
★ Resources ★
Watch the video: https://www.youtube.com/watch?v=kQ5X8vqdSu0
Etherpad: pad.linaro.org/p/las16-400k2
Presentations & Videos: http://connect.linaro.org/resource/las16/las16-400k2/
★ Event Details ★
Linaro Connect Las Vegas 2016 – #LAS16
September 26-30, 2016
http://www.linaro.org
http://connect.linaro.org
HKG18-217 - OpenCDM/CDMi (Multi DRM) work with WPE & ChromiumLinaro
Session ID: HKG18-217
Session Name: HKG18-217 - OpenCDM/CDMi (Multi DRM) work with WPE & Chromium
Speaker: Sivasubramanian Patchaiperumal
Track: Digital Home
★ Session Summary ★
This session will provide an overview of Linaro OpenCDM/CDMi work with WPE, Chromium browsers and multiDRM solution with OPTEE decryption on HiKey OpenEmbedded build. The main focus will be about the addition of WPE browser support to existing Linaro CDM/CDMi and it's validation with different DRMs like ClearKey, PlayReady and Widevine on RDK Client image (Morty OE build) with Westeros Wayland Compositor.
---------------------------------------------------
★ Resources ★
Event Page: http://connect.linaro.org/resource/hkg18/hkg18-217/
Presentation: http://connect.linaro.org.s3.amazonaws.com/hkg18/presentations/hkg18-217.pdf
Video: http://connect.linaro.org.s3.amazonaws.com/hkg18/videos/hkg18-217.mp4
---------------------------------------------------
★ Event Details ★
Linaro Connect Hong Kong 2018 (HKG18)
19-23 March 2018
Regal Airport Hotel Hong Kong
---------------------------------------------------
Keyword: Digital Home
'http://www.linaro.org'
'http://connect.linaro.org'
---------------------------------------------------
Follow us on Social Media
https://www.facebook.com/LinaroOrg
https://www.youtube.com/user/linaroorg?sub_confirmation=1
https://www.linkedin.com/company/1026961
oVirt Extension API: The first step for fully modular oVirtMartin Peřina
Prior to version 3.5 oVirt didn't provide standard API for creating custom modules/extension. There were some parts of oVirt that allowed limited extensibility like UI plugins or VDSM hooks, but no standard solution.
In this session we will take a look at new extension API introduced in oVirt 3.5. We will take a look at features this API offers and we will demonstrate how to create new extension. We will also take a look at different functionality in oVirt that already leverage this API, like AAA and logging, and will present our future plans around it.
The New oVirt Extension API: Taking AAA (Authentication Authorization Account...Martin Peřina
Prior to oVirt 3.5, authentication and authorization was implemented as monolithic module, logic and schema was hard-coded, Kerberos was used for authentication to LDAP server. It was very hard to support and it didn't contain requested features like SSO or proper multi-domain setup.
In this session we will take a look at new extension API introduced in oVirt 3.5.
This API is designed to be stable (easy to extend without breaking backward compatibility), simple (it's invoke based) and yet flexible (it allows extension to extension communication and allows to write extensions in other languages than Java like Javascript or JPython).
We will also take a look at the AAA (authentication, authorization, accounting) extensions which uses this API. Those extensions included in oVirt 3.5 allow to use generic LDAP or database for authentication and authorization or allow SSO for UI and API part of oVirt.
Wherein I install OpenWRT on to an inexpensive TP-Link pocket router, install perl and attempt to smoke CPAN.
I also introduce OpenWRT in possibly too much detail, and dont really explain what smoking CPAN is.
Here is my first speech for BeeCon 2016 about the integration of Alfresco with Caffe (Machine Learning). This presentation include s a video demo. Enjoy & have fun!! ^_^
PS: If you cannot see the video embebed, please go here: https://www.youtube.com/watch?v=cGxCa4eQRJM
Using Erlang in an Embedded and Cross-Compiled WorldFrank Hunleth
This presentation gives an overview of turning Erlang/OTP releases into Flash images that are ready to copy to an SDCard and run on a BeagleBone Black. It was presented at the ErlangDC conference on 12/7/2013.
Building a Network IP Camera using ErlangFrank Hunleth
This is my Erlang Factory SF 2014 talk on using the Nerves project to make a streaming IP camera with the Beaglebone Black and a custom image sensor cape. The presentation provides throughput, latency, and memory usage measurements to motivate using Erlang in embedded Linux-based devices.
Describe how to setup Darwin/VideoLAN/LIVE555/FFmpeg streaming media server.
The test target is MID(Mobile Internet Device) with Android Donut 1.6.
Also, it provide a method to add hints used in SDP for MP4 and 3GP media files.
Presentation to show how the video is transferred using ffmpeg, ffserver that can be played in mobile and desktop browsers.
HTTP : Protocol to transfer data in web
Streaming : Method of transferring continuous data
Speaking of experiences web, the one of video in web is one of most popular at the moment. In this session they will see the possibilities of support of those experiences of video with Flash Media Server 3.5.
Building A Streaming Apple TV App (CocoaConf DC, Sept 2016)Chris Adamson
Apple TV offers a friendly SDK, full of familiar view controllers and Foundation classes, with everything an iOS developer needs to develop their own streaming channel. Except for… you know… the streaming part. In this session, we'll look at how Apple's HTTP Live Streaming video works -- from flat files or live sources -- and how to get it from your computer to a streaming server and then to an Apple TV. We'll also look at common challenges for building streaming channel apps, like serving metadata, protecting content, and supporting single sign-on.
All the content of this website is informative and non-commercial, does not imply a commitment to develop, launch or schedule delivery of any feature or functionality, should not rely on it in making decisions, incorporate or take it as a reference in a contract or academic matters. Likewise, the use, distribution and reproduction by any means, in whole or in part, without the authorization of the author and / or third-party copyright holders, as applicable, is prohibited.
Video Streaming: Broadcast quality on a shoe string budget. netc2012
Kansas State University has been video streaming for over 10 years. Through changes in formats and technology, they have provided online video on-campus and across the state. This session covers our newer tools including video equipment to digital encoders and software.
Building A Streaming Apple TV App (CocoaConf San Jose, Nov 2016)Chris Adamson
Apple TV offers a friendly SDK, full of familiar view controllers and Foundation classes, with everything an iOS developer needs to develop their own streaming channel. Except for… you know… the streaming part. In this session, we'll look at how Apple's HTTP Live Streaming video works -- from flat files or live sources -- and how to get it from your computer to a streaming server and then to an Apple TV. We'll also look at common challenges for building streaming channel apps, like serving metadata, protecting content, and supporting single sign-on
1. Video Streaming Software
VLC http://www.videolan.org/vlc/
VideoLAN Client is a cross-platform media player and streaming server.
“VLC (initially VideoLAN Client) is a highly portable multimedia player for
various audio and video formats (MPEG-1, MPEG-2, MPEG-4, DivX, mp3,
ogg, ...) as well as DVDs, VCDs, and various streaming protocols. It can also
be used as a server to stream in unicast or multicast in IPv4 or IPv6 on a high-
bandwidth network.”
VLC works like a media player, but has had the ability to stream output bolted on. To
stream output you define the command line as a huge ‘chain’ telling the program what
to do at each step.
Eg: to stream a file from disk, convert the video to MPEG-4 (1024kb/s), the audio to
MPEG audio (not MP3 however, at 192kb/s) and send it via udp to the the all-hosts
multicast address, you’d do something like:
vlc Y:002-That-guy-stole-my-shoes.mpg
--sout=”#transcode{vcodec=mp4v,vb=1024,scale=1,acodec=mpga,ab=192,cha
nnels=2}” --duplicate
“{dst=std{access=udp,mux=ts,url=[ff02::1]:1234}}”
VLC shows its media player roots by only allowing one processing one video at a
time. So if you wanted to stream several (different) video sequences at the same time,
you’d need to run VLC several times. This doesn’t apply to outputs so much – VLC
can stream to multiple hosts using IPv4/v6 multicast and do this using several
protocols at one: you could be streaming to a one multicast group using raw udp,
another using mms, another using rtp etc. But still the original video is the same.
VLC does support a large amount of input types (V4L, PVR, file, UDP etc), formats
(AVI, MPEG, QT) and codecs (MPEG-1/2/-4, DivX, Cinepak etc), the ability to
transcode from one format to another, and many different output protocols (udp, mms,
http, rtp, file etc). Supporting all these formats does have a cost though – there are a
huge number of dependencies required to compile/install VLC. This makes compiling
with the features you want very difficult.
VLS http://www.videolan.org/streaming/
VideoLAN Server was the original streaming solution from VideoLAN. It is no
longer in active development, as focus has changed to further developing VLC.
VLS has does not have as good support for codecs, containers and outputs as VLC
does. VLS mainly supports MPEG-based formats such as -2 PS and TS and -4. The
outputs are also limited – only MPEG-2 TS can be streamed via udp.
VLS is configured via a config file rather than by the command line. You define input
‘programs’ and output ‘channels’. Assuming you did not set some input/output
combinations to autoplay, you use the telnet interface to start programs by joining
2. them with an output channel. This config file allows VLS to stream multiple
files/inputs at the same time, rather than requiring multiple program instances like
VLC.
VLS does not support transcoding input formats. Only the V4L interface allows video
to be encoded. This only supports MPEG-2/4 and MP3.
When running VLS, the latest SVN branch should be used as this includes V4L
support – this was removed from VLS around v0.5 but is required to stream from
Video4Linux inputs.
Automake 1.4 does not work with the bootstrap program that comes with the SVN
version of VLS. When the final vls executable comes to being linked there are errors.
Upgrading to automake 1.6 (and autoconf too) allows the configure script to work
properly.
Windows Streaming Media Server
The Server
http://www.microsoft.com/windowsserver2003/technologies/winme
dia/default.mspx
This is the media server that is supplied with all versions (except 64-bit) of Windows
2003 server. It has an easy-to-use interface for administering the system, supports
video-on-demand and broadcasting (via multicast) of streams. It also supports IPv6.
The problem with it is that the system will on accept inputs that are in proprietary
Microsoft Windows Media formats. There is no support for MPEG whatsoever. This
is a problem if it is used with the Hauppauge PVR as the only thing it will produce is
a MPEG-2 TS. The system will also not transmit video directly from a DirectShow
input. However, the system supports an external video encoder – as long as the
encoder can export video in a Windows Media format via a HTTP-like interface the
server will accept it. However whenever tried with an encoder other than Windows
Media Encoder 9 it would refuse to connect using HTTP. The server can view streams
using the MMS protocol (which VLC can output), but will refuse to stream from an
MMS input.
Windows Media Encoder 9
http://www.microsoft.com/windows/windowsmedia/9series/encode
r/default.aspx
This encoder will support most video formats and transcode them to a Windows
Media format. The encoder can read from a file, another video stream, or from a
DirectShow device (eg a TV card). The encoder will then ‘push’ the output to a client
or to the Windows Streaming Media Server using either the MMS or HTTP protocol.
The encoder also supports MPEG inputs, although refused every file saved from the
PVR 350. It also refused to read from the device using the DirectShow interface.
3. Helix Universal Server http://www.realnetworks.com/products/
discreteserver/
This is the media server that is developed by RealNetworks, Inc. It is the most
professional-looking server tested and includes a huge amount of options, including
the broadcasting of adverts! The output formats are limited to proprietary Real
formats and protocols. As a result, the output ought to be viewable (only?) on their
RealPlayer software.
It does not support input from a capture device, nor does it support IPv6.
Darwin Streaming Server
http://developer.apple.com/darwin/projects/streaming/
This is the open source version of Apple’s QuickTime Streaming Server that allows
the transmission of streaming media to clients via the RTP and RTSP protocols.
There are few configuration options for DSS, and in fact I never got it to stream video
once… It also does not support capture from external devices (only file input) nor
does it support IPv6 or multicasting.
Apache http://httpd.apache.org/
Although primarily used as a web server, Apache can be easily used as a video-on-
demand (VOD) server for unicast clients with the help of the Mozilla VLC plugin.
HTTP provides the ability to seek within a file – this is normally used for resuming
broken downloads, but here can be used to seek within a video stream stored on the
web server. When the VLC plugin is embedded within a web page the user can view
the stream and use the controls to seek within it.
Both Mozilla (tested with v1.6) and Apache support IPv6. Apache needs to be
specially configured to support files >2GB as files made by the PVR 350 can easily
reach this size.
The plugin is very buggy and frequently crashes Mozilla. The plugin does not work
with Internet Explorer or other browsers. Also the seeking feature is lost when using
Windows Media Player using the HTTP interface.
SAP/SDP
The normal way for clients to subscribe to multicast services is by ‘connecting’ to that
address using VLC. As IP addresses (and especially v6 addresses) can be difficult to
remember, you can add a channel information service which makes connecting to
broadcasts easy. VideoLAN has implemented a channel information service based on
the SAP/SDP standard – the SAP announces are send via the network (multicasted)
saying which program is running on what address/port. On the client side, VLCs
receive these announces and automatically add the announced programs to their
playlists. The user then double-clicks on the program and can start watching
immediately.
4. VLC can send the SAP announces associated with the programs it is streaming. VLS
can’t do that but an independent program, the mini-SAP-server can send the
announcements for the programs sent by VLS.