-
-
Save henrydatei/b85f2ffbe0390b2e8b069ab1e5765986 to your computer and use it in GitHub Desktop.
#file=$1 | |
#videoname=$(echo "$file" | cut -d "." -f1) | |
#echo "$videoname" | |
touch playlist.txt | |
touch urllist.txt | |
key=$1 | |
videoname=$2 | |
#keystring=$(cat $file | grep -o -E "key=[0-9,a-z]+") | |
#key=$(echo "$keystring" | cut -c 5-) | |
link="https://videocampus.sachsen.de/media/hlsMedium/key/$key/format/auto/ext/mp4/learning/0/path/m3u8" | |
playlist=$(curl -s "$link" | tail -n 1) | |
newLink="https://videocampus.sachsen.de/media/hlsMedium/key/$key/format/auto/ext/mp4/learning/0/path/$playlist" | |
wget -O playlist.m3u8 "$newLink" | |
for line in $(cat playlist.m3u8 | grep ".ts"); do | |
partLink="https://videocampus.sachsen.de/media/hlsMedium/key/$key/format/auto/ext/mp4/learning/0/path/$line" | |
echo "$partLink" >> urllist.txt | |
echo "file $line" >> playlist.txt | |
done | |
cat urllist.txt | parallel -j 50 'wget {}' | |
ffmpeg -f concat -i playlist.txt -c copy $videoname.mp4 | |
rm playlist.m3u8 | |
rm playlist.txt | |
rm urllist.txt | |
rm *.ts |
I get this return when running the script. What am I doing wrong?
zsh: command not found: #file=
zsh: command not found: #videoname=
zsh: command not found: #echo
I get this return when running the script. What am I doing wrong?
zsh: command not found: #file= zsh: command not found: #videoname= zsh: command not found: #echo
Seems like your shell doesn’t understand comments. Maybe this will help: https://apple.stackexchange.com/questions/405246/zsh-comment-character
First, thanks for this awesome script and your help- its working now.
Maybe you have a solution for this problem:
Some of the videos I wanted to get (~5%) stop in the middle of the download with this error:
[concat @ 0x11e7052a0] Impossible to open '113d39a418c4bb8ffeb44311077bcf99_1638267204_480p_mp4_187.ts' playlist.txt: No such file or directory
The video this error is from: key=113d39a418c4bb8ffeb44311077bcf99
Strangely, it still saves the video. When I retry the same script, the new downloaded video has a different length than the previous but still isn't complete and throws the error. Do you have any idea what the problem could be?
First, thanks for this awesome script and your help- its working now. Maybe you have a solution for this problem:
Some of the videos I wanted to get (~5%) stop in the middle of the download with this error:
[concat @ 0x11e7052a0] Impossible to open '113d39a418c4bb8ffeb44311077bcf99_1638267204_480p_mp4_187.ts' playlist.txt: No such file or directory
The video this error is from: key=113d39a418c4bb8ffeb44311077bcf99 Strangely, it still saves the video. When I retry the same script, the new downloaded video has a different length than the previous but still isn't complete and throws the error. Do you have any idea what the problem could be?
I can’t test this right now but have you removed all created files after the download failed? The script creates playlist.m3u8, playlist.txt, urllist.txt and a lot of .ts files. Maybe there are some problems when the files aren’t empty (the script appends lines to these files, so there are problems when leftovers are in this files)
I just retried it without deleting anything and it worked for all videos.
The only thing I changed, is that I worked from a different network. No clue, what the problem was :)
To download some videos today I wasn't succesful with the script but these steps worked:
- In Browser login to Videocampus
- Press Play on the video
- Open Developer Tools > Tab Network
- Use the XHR filter
- Right-Click on any of the files of type ocet-stream, copy as link (German "Wer kopieren" > "Als Link kopieren")
- Replace the string as follows:
# in
https://videocampus.sachsen.de/media/hlsMedium/key/[String A]/format/auto/ext/mp4/learning/0/path/[String A]_[String B]_480p_mp4_193.ts
# out
https://videocampus.sachsen.de/getMedium/[String A].mp4?[String B]&format=1080p
Example:
# in
https://videocampus.sachsen.de/media/hlsMedium/key/f5eo8eezg6n19eo53v74a3965ll5rs02r/format/auto/ext/mp4/learning/0/path/f5eo8eezg6n19eo53v74a3965ll5rs02r_1666077443_480p_mp4_193.ts
# out
https://videocampus.sachsen.de/getMedium/f5eo8eezg6n19eo53v74a3965ll5rs02r.mp4?1666077443&format=1080p
Despite being able to run the
parallel
command without an error return, it was not installed on my system.That is why at first the script failed.
So to make it work I still had to run:
sudo apt install parallel
Thank you for providing the script!