ClimateMatchAcademy / course-content

BSD 3-Clause "New" or "Revised" License
32 stars 49 forks source link

Add video ids to notebooks #5

Open WesleyTheGeolien opened 1 year ago

WesleyTheGeolien commented 1 year ago

We need to add video ids to notebooks, it looks like the into and outdo go in matrials.yml see here: https://github.com/NeuromatchAcademy/course-content/blob/main/tutorials/materials.yml

That would be a good start next there appears to be cells inside the notebook, example here: https://github.com/NeuromatchAcademy/course-compclimate/blob/main/tutorials/W1D1_ModelTypes/W1D1_Tutorial2.ipynb

I am not yet sure if this is autogenerated or not ...

you can edit material;;s directly here: https://github.dev/ClimateMatchAcademy/course-content/blob/5-add-video-ids-to-notebooks/tutorials/materials.yml

make sure to commit changes afterwards, let me know if you are unfamiliar with git/github

courtneydean33 commented 1 year ago

All the YouTube links and which day and tutorial each video is for are here: https://docs.google.com/document/d/1a_bXR9WSdck2HY_ft-q3q6HZl1On7eoMTNG5ilsh0BQ/edit#

courtneydean33 commented 1 year ago

All videos should be added right before the Tutorial Objectives statement.

WesleyTheGeolien commented 1 year ago

Above the setup part in each notebook we need to add this cell:

In the example below there are 2 places were id is called:

the id kwarg needs to be updated with the correct value for both of these.

As we have not uploaded to BiliVideo yet I think using the BiliVideoID as a replacement string would be good (the video won't work but we can search for it easily in the future)

# @title Video 1: "How" models
from ipywidgets import widgets

out2 = widgets.Output()
with out2:
  from IPython.display import IFrame
  class BiliVideo(IFrame):
      def __init__(self, id, page=1, width=400, height=300, **kwargs):
          self.id=id
          src = 'https://player.bilibili.com/player.html?bvid={0}&page={1}'.format(id, page)
          super(BiliVideo, self).__init__(src, width, height, **kwargs)

  video = BiliVideo(id="BV1yV41167Di", width=854, height=480, fs=1)
  print('Video available at https://www.bilibili.com/video/{0}'.format(video.id))
  display(video)

out1 = widgets.Output()
with out1:
  from IPython.display import YouTubeVideo
  video = YouTubeVideo(id="PpnagITsb3E", width=854, height=480, fs=1, rel=0)
  print('Video available at https://youtube.com/watch?v=' + video.id)
  display(video)

out = widgets.Tab([out1, out2])
out.set_title(0, 'Youtube')
out.set_title(1, 'Bilibili')

display(out)
WesleyTheGeolien commented 1 year ago

As for the materials.yml file for each day it needs to look something like this at the end

- day: W1D1
  category: Intro to Modeling
  intro: https://www.youtube.com/watch?v=KxldhMR5PxA
  intro_bilibili: https://www.bilibili.com/video/BV1HT4y1E7U4/
  name: Model Types
  outro: https://www.youtube.com/watch?v=KZQXfQL1SH4
  outro_bilibili: https://www.bilibili.com/video/BV1vv411i7SG/
  playlist: https://www.youtube.com/playlist?list=PLkBQOLLbi18ObAiSOZ42YBwOQIKNvspeI
  qa:
  - https://www.youtube.com/watch?v=FwsKmunwzUA
  - https://www.youtube.com/watch?v=h63bKG0-h_w
  - https://www.youtube.com/watch?v=8h0X9lxY8Bs
  slides:
  - link: https://mfr.ca-1.osf.io/render?url=https://osf.io/rbx2a/?direct%26mode=render%26action=download%26mode=render
    title: Intro
  - link: https://mfr.ca-1.osf.io/render?url=https://osf.io/6dxwe/?direct%26mode=render%26action=download%26mode=render
    title: Tutorials
  - link: https://mfr.ca-1.osf.io/render?url=https://osf.io/9hkg2/?direct%26mode=render%26action=download%26mode=render
    title: Outro
  - link: https://mfr.ca-1.osf.io/render?url=https://osf.io/2esh5/?direct%26mode=render%26action=download%26mode=render
    title: Reading
  - link: https://mfr.ca-1.osf.io/render?url=https://osf.io/5vj73/?direct%26mode=render%26action=download%26mode=render
    title: TA
  - link: https://mfr.ca-1.osf.io/render?url=https://osf.io/jdumz/?direct%26mode=render%26action=download%26mode=render
    title: DaySummary
  tutorials: 4

please add / update the following tags:

for intro_bilibili and outro_bilibili please use https://BilibiliVideoWillGoHere.com

We can circle back around to slides after the videos are working.