https://youtu.be/O3ltwjDJaMk

https://youtu.be/ZaW-xPmjutA

      https://youtu.be/ZaW-xPmjutA?t=13m34s   transform 

      https://youtu.be/ZaW-xPmjutA?t=3m53s   urlsession 작업 ( file 다운로드 )

      https://youtu.be/ZaW-xPmjutA?t=9m   url session 작업하면서 작업진행 확인

https://youtu.be/lYVazkkjOb8

       https://youtu.be/lYVazkkjOb8?t=3m42s     pulsing animation 

       https://youtu.be/lYVazkkjOb8?t=10m55s     status bar 바꾸는 작업  ( preferredStatusBarStyle )

https://youtu.be/O3ltwjDJaMk

https://youtu.be/ZaW-xPmjutA

      https://youtu.be/ZaW-xPmjutA?t=13m34s   transform 

      https://youtu.be/ZaW-xPmjutA?t=3m53s   urlsession 작업 ( file 다운로드 )

      https://youtu.be/ZaW-xPmjutA?t=9m   url session 작업하면서 작업진행 확인

https://youtu.be/lYVazkkjOb8

       https://youtu.be/lYVazkkjOb8?t=3m42s     pulsing animation 

       https://youtu.be/lYVazkkjOb8?t=10m55s     status bar 바꾸는 작업  ( preferredStatusBarStyle )

Swift: Firebase 3 – How to Play Videos with AVPlayer (Ep 21)

my review point is 10/10

https://youtu.be/4ISMTG-E3Po?t=2m28s   image view에 플레이 버튼 만들기 

https://youtu.be/4ISMTG-E3Po?t=5m54s   button에 image 넣기 ( 버튼obj.setImage() , 이미지obj.tintColor()  )

https://youtu.be/4ISMTG-E3Po?t=11m54s   play button 클릭시 플레이 구현하기

https://youtu.be/4ISMTG-E3Po?t=15m6s   연달아서 optional unwrap 하기 

https://youtu.be/4ISMTG-E3Po?t=14m10s   avplayer 를 이용 동영상 플레이하기 ( AVPlayerLayer , 유아임뷰obj.layer.addSublayer()  )

https://youtu.be/4ISMTG-E3Po?t=19m33s   스크롤시 avplayer의 플레이 내용이 다른 cell에 디스플레이 되는 것을 해결하는 방법 ( prepareForReuse )

https://youtu.be/4ISMTG-E3Po?t=22m10s   avplayer pause 

https://youtu.be/4ISMTG-E3Po?t=23m56s   when play button is clicked, progress spinner is spinning. make spinner ( UIActivityIndicatorView , 액티버티인디케이터obj.startAnimating )

Swift: Firebase 3 – How to Play Videos with AVPlayer (Ep 21)

my review point is 10/10

https://youtu.be/4ISMTG-E3Po?t=2m28s   image view에 플레이 버튼 만들기 

https://youtu.be/4ISMTG-E3Po?t=5m54s   button에 image 넣기 ( 버튼obj.setImage() , 이미지obj.tintColor()  )

https://youtu.be/4ISMTG-E3Po?t=11m54s   play button 클릭시 플레이 구현하기

https://youtu.be/4ISMTG-E3Po?t=15m6s   연달아서 optional unwrap 하기 

https://youtu.be/4ISMTG-E3Po?t=14m10s   avplayer 를 이용 동영상 플레이하기 ( AVPlayerLayer , 유아임뷰obj.layer.addSublayer()  )

https://youtu.be/4ISMTG-E3Po?t=19m33s   스크롤시 avplayer의 플레이 내용이 다른 cell에 디스플레이 되는 것을 해결하는 방법 ( prepareForReuse )

https://youtu.be/4ISMTG-E3Po?t=22m10s   avplayer pause 

https://youtu.be/4ISMTG-E3Po?t=23m56s   when play button is clicked, progress spinner is spinning. make spinner ( UIActivityIndicatorView , 액티버티인디케이터obj.startAnimating )

Swift: Firebase 3 – How to Send Videos (Ep 20)

my review point is 9/10

https://youtu.be/eRkpdRDYGeM?t=3m20s   image picker controller에서 video도 선택 가능하게 하는 과정 ( mediaTypes )

https://youtu.be/eRkpdRDYGeM?t=6m9s   getting media file url ( UIImagePickerControllerMediaURL ) 

https://youtu.be/eRkpdRDYGeM?t=7m18s   firebase에 file upload , media file upload 

https://youtu.be/eRkpdRDYGeM?t=9m   firebase에서 file 다운로드 경로 구하기 ( donwloadURL()?.absoluteString )

https://youtu.be/eRkpdRDYGeM?t=13m40s   checking progress , observing task ( observeStatus , progress?.completedUnitCount)

https://youtu.be/eRkpdRDYGeM?t=20m15s   getting image from video file ( AVAssetImageGenerator ,  AVAsset , copyCGImageAtTime)

Swift: Firebase 3 – How to Send Videos (Ep 20)

my review point is 9/10

https://youtu.be/eRkpdRDYGeM?t=3m20s   image picker controller에서 video도 선택 가능하게 하는 과정 ( mediaTypes )

https://youtu.be/eRkpdRDYGeM?t=6m9s   getting media file url ( UIImagePickerControllerMediaURL ) 

https://youtu.be/eRkpdRDYGeM?t=7m18s   firebase에 file upload , media file upload 

https://youtu.be/eRkpdRDYGeM?t=9m   firebase에서 file 다운로드 경로 구하기 ( donwloadURL()?.absoluteString )

https://youtu.be/eRkpdRDYGeM?t=13m40s   checking progress , observing task ( observeStatus , progress?.completedUnitCount)

https://youtu.be/eRkpdRDYGeM?t=20m15s   getting image from video file ( AVAssetImageGenerator ,  AVAsset , copyCGImageAtTime)

make background transparent for progressbar