SOLVED

Embed SharePoint Video on External Sites

Brass Contributor

Is it possible to embed a Stream on SharePoint video on an external/public site?

 

The technique described in this article, of updating the embed code with a link you set to public, did not work for me:

https://answers.microsoft.com/en-us/msoffice/forum/all/onedrive-embed-links-dont-allow-public-viewin...

 

The embed code I got was very different from the one in the article. 

19 Replies
The article is a couple years old so doesn't reflect the recent new feature for Embed for videos stored in SharePoint/OneDrive.

For an external site use case, for sure the "anyone with the link" would need to be set on the video - or otherwise it won't work. Assuming "anyone with the link" is available. I know that gets disabled at the tenant level in many orgs.
Hi Kevin,

The "Anyone with the link" option is available. I've tried updating the embed code with it, but to no avail.
best response confirmed by Stuart McGarrity (Brass Contributor)
Solution
We don't support anyone public anonymous embed codes for videos. (Not sure if that old workaround works for other file types?) We only support direct anyone links.
o.k. Thanks for clarifying. (I was looking for a very quick video sharing option for our support staff and word press blogs)
Hi Marc. Will support for embed codes for videos to public or external users be possible in the future?
Is it because of security that it is not possible to use embed codes public?

@Martin_Richter_Olsen - We may add this in the future, but I don't have a timeline or roadmap item.

 

Supporting public anonymous embed codes has various cost and security implications we'd need to work through if we were to add this feature. 

We were hoping to use Stream on SharePoint as a source for videos on Intranet & LMS (Not MS based) but we need to be able to embed videos to only people accessing trough the LMS for example. Can be users without a M365 license.

Is there a MS solution for that scenario today?
The only M365 solution is to use an anyone link but no solution for embed.

Or you'd have to build your own solution on something like Azure Media Services.
Ah I see! Thank you!
This is exactly what we're trying to do at our institution. So much of our video guides are embedded on our help site, which is externally facing. Having videos hidden behind links just looks old and uninviting and means that users are continuously being taken away from our help materials to another tab with the video. The user experience is very poor. I think this feature (share to anyone via embed code) should be added. MS embed videos on their help sites and I want to keep everything central rather than making copies to YouTube etc. Expecially when the help sites I'm building atm are about how we need them to use Stream for all of their teaching materials.
Yeah I just spent the day trying to figure this out as well. Just so annoying I can create anonymous links. I can create embed links. But I can't put the two together. Like one of the other comments, I was hoping to host some of our LMS videos in SharePoint since some of the content is externally facing. Now we'll have to stand up and pay for a separate streaming platform (Vimeo or something) which is just frustrating. This really needs to be a feature.

Is there a MS Feedback (aka Uservoice) on this or something we can go make this request official? This really needs to be a feature. I looked and didn't find, but before I post one I wanted to check if you were aware.

Oh this must be a core feature for Stream!


I mean public embedding is a must have feature that literally every other video platform has. As it is, MS Stream is near useless in many scenarios because the video content cannot be embedded into for example support, training, educational... -content within learning management systems, support sites, training materials, interactive learning content (for example H5P-packages) and countless other situations.

The embedding as it is, has problems even when embedding into Microsoft's other products because the authentication often fails even with SSO. For example embedding a video into companys own intranet page (SharePoint modern) is a hit and miss user experience.

Now every Microsoft customer paying for M365 will have to also pay big bucks for a separate video platform and reserve completely unnecessary resources for downloading copies of videos from Stream, uploading videos into separate platform and adding metadata, subtitles... etc.

It is really frustrating because many organisations are heavily invested into Microsoft ecosystem and videocontent is really important in this day an age. Stream is really good video platform with many clever and helpful tools, but this missing feature is just crippling in so many situations.

Please can you make this message heard in some development forum? It would mean a lot for many many customer organizations. Thank you!

@T-Eskola 

I may not be able to address all of your issues, but you mentioned embedding a video on a SharePoint modern site page. You should never need to use the Embed web part in SharePoint at all! Your video should be stored in SharePoint and you should use one of the following web parts to share that video:

  1. New Stream web part that will select the video from your document library
  2. File and Media web part that will display a single video inline
  3. Highlighted Content web part if you are aggregating a group of videos to display on a page
  4. Hero web part if you like the display options for inline video display where in the past we have only had images
  5. List web part if you have created a playlist of videos to display

I'm not sure what other Microsoft applications you may be trying to use "embed" code in other than adding a video to a PowerPoint presentation. That has most recently been resolved and if it isn't working in your tenant - it should be very soon. Same with being able to add a video to a Microsoft Form. Someone just showed me that you can now add video to Microsoft Forms again. 

When you are embedding a video into another system it needs to be on your network being presented to people in your tenant who have an M365 licensed account. Storing videos for your organization in SharePoint and making them available via the modern Stream app is not intended to be shared with the general public. You cannot share any other SharePoint content with the general public and you never could share videos on Stream Classic with the general public. The embed code works with other systems if you have the permissions set correctly on your video that you are sharing in your environment. There are some challenges for sure if you do not understand SharePoint permissions and if your video was migrated from Stream Classic that you are sharing - where the permissions will have been migrated and there may be conflicting permissions on the video file because of this. 

If you want to share more details on where you are storing your video that you wish to embed in another system your users have access to, I'm sure I and others would be more than happy to assist you in getting the permissions resolved so that it works. Where is your video stored? Is it on a team site or a communications site? Are the permissions set on the individual file or have you cleaned up the permissions also for the folder, the library and the site to support who you want to share the file with?

@karen_dredske 

Thank you for your reply!

 

Just as background information - I work for a vocational college with roughly 400+ staff and 10000 students ranging from 16-60 years of age and 20 different vocational branches. We also have many different ways of studying (classroom, online, hybrid, apprenticeship...). We have M365 package for everyone. Intranet is based on Sharepoint, public website on Wordpress, LMS on Moodle. In addition we use many different formats / platforms (for example H5P, ThingLink...) with our study materials, marketing, communication and so on.

 

Couple of principles we are trying to go by.

* No OneDrive for materials (Video or otherwise) because of the risk of all the links and embeddings dying when the person leaves the organization.

* instead we use Teams / SharePoint sites for storeing materials and then (with proper rights - usually "everyone with a link") share links and/or embed materials from there into other platforms.

 

The problem is that links work but embedding does not. So there is no logical reason for embedding not working. There is no information security / data protection reason because that would cause also the linking to not work. There seems to be some silly technical limitation in the embedding feature that prevents embedding with "everyone with a link" kind of user right.

 

Every video platform (and other cloud material platform) has this feature and I'm in disbelief that Stream (and SharePoint in general) seems to be missing this core functionality. I would argue that most M365 customers would welcome this because they do not want to be paying and using several video platforms for different use cases.

@T-Eskola Thank you for the great background information. I believe I may know what the issue is. You mention that you utilize the "Share" links for when you try to embed a video. I am pretty sure that is the issue. You need to use "Copy link" on the file in the document library instead and be sure the file has the correct permissions there instead. When you use the "Share" button to share a file, it generates a special link that includes the permission property in it. That means that each individual it is shared with has to authenticate separately and SharePoint has to figure out if they have permissions via a different route than if you just set the permissions on the site, library, or file and link to it with a normal link.

Let's begin with the easiest one - your intranet on SharePoint. Usually, the intranet will have permissions set with the site visitors group including Everyone except external users in it.

karen_dredske_0-1696073415829.png

 

This means that I can just navigate anywhere on the intranet and view what is there. For videos that you wish to display on your intranet, just use one of the web parts I have listed and direct it to the document library the video is in and select the video - or filter for it. This should bring it up and everyone should have access to it. No embed code/web part required.

 

If you have a video that is stored on your intranet in a document library that you want to share in Moogle, then go to the document library where the video is stored, and select "Copy link" - NOT "Share" to get your link to the video that you will use in your embed code. 

 

karen_dredske_1-1696073562624.png

You should see a modal window open showing you that it has copied the link to your computer. (I'm in a targeted release tenant here so it may look slightly different for you as I noticed a change this morning as I am taking screenshots.)

karen_dredske_2-1696073768846.png

You will notice that it is saying the link is copied and anyone in my tenant can edit. I may not want that. I may only want them to view. I either need to click on Settings (like in my image above) or there will be text below the link telling you they can edit and you will click on that to bring up additional options. 

The dialog box that opens will look familiar to you. It will be defaulted to Anyone. You can leave that, but I would recommend that you select People in "your tenant". Then you can adjust the settings to "Can view" and even block download of the video file. 

karen_dredske_3-1696073950952.png

You should then receive a notification that the link has been copied with the updated permissions. 

karen_dredske_4-1696074017003.png

Now paste this link into your embed code and see if that works. 

If that doesn't work, then give this a try:
Copy the portion of the document library URL through "/Shared%20Documents/" (or whatever your document library name is) and add the name of the video file. 
In my example it would be 

  https://41fq8w.sharepoint.com/sites/ContosoTV/Shared%20Documents/Clippy.mp4

karen_dredske_5-1696074467700.png

Using this straight link, SharePoint will look at the site permissions. Then it will look to see if there are any special permissions on the library. Then it will look at the file and see if there are any custom permissions on the file. If there are none, then it should just follow whatever is set at the site level. 

 

Let me know if one of these works for you. 

 

 

Thank you!
I really appreciate the time and effort you have put into this answer.

I will try the tricks and tips and let you know if they work.

So far I have tried every possible magic trick I have bumped into to no avail.
Neither trick has worked. We have videos in SharePoint that need to be embedded in externally facing web pages so that anyone can view them. I tried copying the link, modifying the settings to have the Anyone with the link option, pasted that link into the embed code as the src, and when the page is viewed people see a message stating that SharePoint refused to connect. It's the same deal with the direct path to the file in the Library (and I'm not sure how to manage that access on the video so it is available to anyone but others in the Library are not)

@jbreitenbucher There is no way to have an anyone public anonymous embed code at this time. You can only use Anyone links via the share dialogue for public access which must open the video in a new tab. 

you can add your comments and votes on this item that describes the feature idea:

https://feedbackportal.microsoft.com/feedback/idea/4e2dd23b-eec7-ed11-a81b-002248519701

 

 

 

1 best response

Accepted Solutions
best response confirmed by Stuart McGarrity (Brass Contributor)
Solution
We don't support anyone public anonymous embed codes for videos. (Not sure if that old workaround works for other file types?) We only support direct anyone links.

View solution in original post