Meeting recording auto-expiration feature is no joy.
The Problem
As part of the devolution of the new Stream built on SharePoint, new recordings automatically expire 60 days after they are recorded.
This means that team meeting recordings shared by other people will be deleted in 60 days (they are view-only and cannot be downloaded).
The Solution
Download the file from the service URL.
Open Firefox (or the browser of your choice) and load the SharePoint page with the video that you want to download, then open the page inspector (Ctrl + Shift + C). Click on the Network tab. Type videomanifest where it says “Filter URLs“. Press F5 to refresh the page. When the page reloads, copy the file URL. See below.
Use ffmpeg
to download the video by pasting the URL from above:
$ ffmpeg -i "https://copied_videomanifest_url" -codec copy video.mp4
Works, I had to first delete the &manifestMetadata=… part of the URL, up to just before the next ‘&’.
Thanks for the tip Georgie, it works !
Hi can you explain us what you have done to solve this problem? Thank you
How can I download the automatically generated subtitles that accompany the video
Sorry, can you please elaborate on the ffmpeg part? I got to the URL but not sure what the last step is….
Thanks,
I use
ffmpeg
software to download the video. You can get it from here: ffmpeg.org/download.htmlHi, first of all thanks for your tutorial, but i have a problem maybe you can help me : I’m using chrome, when i copy the link address, I get a huge URL and when i’m trying to paste the ffmpeg command you wrote i receive -> “parse error near `&”, how can i solve this problem?
I get the error “Invalid data found when processing input” from ffmpeg. There is no “manifestMetadata” query param in my link, there is “altManifestMetadata” – if I omit that, it doesn’t work either.
Same exact issue and param. Would appreciate a solution if anyone has one! Thx!
Worked in Windows 11, opened it up in notepad to sanitize the URL.
As per Georgie above:
Deleted where it started with: &altManifestMetadata=
and right before the following:
&pretranscode=0
then copied the URL inside quotes for the following to be used in ffmpeg
“https://copied_videomanifest_url”
ffmpeg -i “https://copied_videomanifest_url” -codec copy video.mp4
Thanks Trevor.
Could you guide me on how to download, I try and I get an error, what is deleted?
This works! Thanks alot!
For clarification since I struggled with this a bit – you need to delete the text from and with
&altManifestMetadata=
up to where
&petranscode=0
starts, but leave &petranscode=0 and the rest after it in the link.
Again, thanks a lot, works like a charm.
i need help.. i still dont get it. let say, i had already remove (&altManifestMetadata=……) and ii copy the link….let say again the link i just copy as X. so is it gonna be like this ?
ffmpeg -i “https://X_videomanifest_url” -codec copy video.mp4
???
Thanks so much for this. Was able to save extremely important knowledge transfer videos from someone who left the company.
how can i download a pdf
worked so well. Thanks a lot!!!!
Works like a charm.
Many thanks.
No worries, you are welcome!
If anybody cannot get it working, please try ffmpeg version 4.4 or more… below worked for me…
$ /usr/bin/ffmpeg –version
ffmpeg version 4.4.2-0ubuntu0.22.04.1 Copyright (c) 2000-2021 the FFmpeg developers
built with gcc 11 (Ubuntu 11.2.0-19ubuntu1)
The procedure is generally correct, but the browser network request does not always contain the string “videomanifest”.
You may have to look for the first occurrence of a Method: “GET”, Initiator: “Media” request and use that as the URL
Also, you can alternatively use youtube-dl or yt-dlp with the above fetched URL Using yt-dlp the command would be:
yt-dlp “fetched_URL_here” -o desired_filename.mp4
This is method far faster than streaming/piping through ffmpeg
I got “This video is DRM protected” using yt-dlp, sadly
The ffmpeg method worked though.
I am getting the following error:
“Error opening output: Permission denied”
Even though i had already logged in the sharepoint with my company login.
Someone the same?
Connection to tcp://japaneast1-mediap.svc.ms:443 failed: Error number -138 occurred
[dash @ 0000024839e29440] Failed to open fragment of playlist
I had the same issue.
I resolved it by defining the proxy server before calling ffmpeg:
set HTTP_PROXY=http://userid:password@proxy_ip:proxy_port
ffmpeg -i “videomanifest.mpd -codec copy video.mp4
I cannot see or find “where it says “Filter URLs” (so an non-starter)? Thanks R
Im in the process of downloading a video, had to install the ffmpeg on windows, declare it as an enviroment variable to be able to use it in power shell. The one thing i’m not sure is, where is the video beign downloaded to?
Check your default directory
Like C:\Users\YOUR_NAME
Install https://chocolatey.org/install in Windows
then
choco install ffmpeg
then
ffmpeg -i “https://sharepointURLnormally_super_long” -codec copy video.mp4
on mac?
on my mac I used brew.sh:
brew install ffmpeg
Hi All,
Thank you so much for your valuable input and replies… i have downloaded the latest ffmpeg v6 and u jus need to copy the whole url and paste it like here…
ffmpeg -i “https://southeastasia1-mediap.svc.ms/transform/videomanifest?……. ” -codec copy video.mp4
Thats it.. make sure your not under any proxy or what, then there is a reply above where u need to put in username and password. Thanks alot guys…
does it still works ? I using Firefox on my mac but, not able to find videomanifest as per mentioned.
Thank you!