Skip to content

Script to assist in downloading Microsoft event contents or return session information.

License

Notifications You must be signed in to change notification settings

michelderooij/Get-EventSession

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Get-EventSession

Getting Started

Script to assist in downloading Microsoft Ignite, Inspire, Build or MEC contents or return session information for easier digesting.

Video downloads will leverage a utility which can be downloaded from https://yt-dl.org/latest/youtube-dl.exe, and needs to reside in the same folder as the script. The script itself will try to download the utility when the utility is not present.

To prevent retrieving session information for every run, the script will cache session information.

Prerequisites

  • PowerShell 3.0
  • YouTube-dl.exe (automatic download from here)
  • ffmpeg, (automatic download from here)

Usage

Download all available contents of sessions containing the word 'Exchange' in the title to D:\Ignite:

.\Get-EventSession.ps1 -DownloadFolder D:\Ignite -Format 18 -Keyword 'Exchange'

Get information of all sessions, and output only location and time information for sessions (co-)presented by Tony Redmond:

.\Get-EventSession.ps1 -InfoOnly | Where {$_.Speakers -contains 'Tony Redmond'} | Select Title, location, startDateTime

Download all available contents of sessions BRK3248 and BRK3186 to D:\Ignite

.\Get-EventSession.ps1 -DownloadFolder D:\Ignite -ScheduleCode BRK3248,BRK3186

FAQ

Why do downloads happen twice?

Depending on the source, the video and audio streams are seperate. First the video stream is fetched, then the audio stream. After fetching, the two are merged.

How to specify format?

Depending on availability and source, the default format is worstvideo+bestaudio/best. This means the worst quality video and best audio stream are fetched and merged. 'Best' is attempted if no selection could be made. You can also specify bestvideo+bestaudio to get the best quality video, but these files can be substantially larger. You can also perform more complex filter, e.g. bestvideo[height=540][filesize<384MB]+bestaudio,bestvideo[height=720][filesize<512MB]+bestaudio,bestvideo[height=360]+bestaudio,bestvideo+bestaudio

  1. This would first attempt to download the video of 540p if it is less than 384MB, and best audio.
  2. When not present, then attempt to downlod video of 720p less than 512MB.
  3. Thirdly, attempt to download video of 360p with best audio.
  4. If none of the previous filters found matches, just pick the best video and best audio streams

Credits

Special thanks to Mattias Fors, Scott Ladewig, Tim Pringle, and Andy Race.

License

This project is licensed under the MIT License - see the LICENSE.md for details.

About

Script to assist in downloading Microsoft event contents or return session information.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •