forked from pk3011/flow
-
Notifications
You must be signed in to change notification settings - Fork 0
/
convert.sh
29 lines (21 loc) · 1.11 KB
/
convert.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
# Change input and output details
output_path="Dubki" # Output Path (Same will be pushed in main also)
input_url="https://cdn.plyr.io/static/demo/View_From_A_Blue_Moon_Trailer-576p.mp4" # Input direct file url
input_extension="mp4" # Extension of file url
# Change ffmpeg configurations according to yur need (If you don't know, don't touch)
wget --quiet -O video.$input_extension $input_url
mkdir $output_path
ffmpeg -hide_banner -y -i video.$input_extension \
-vf scale=w=1920:h=1080:force_original_aspect_ratio=decrease -c:a aac -ar 48000 -c:v h264 -profile:v main -crf 20 -sc_threshold 0 -g 48 -keyint_min 48 -hls_time 4 -hls_playlist_type vod -b:v 5000k -maxrate 5350k -bufsize 7500k -b:a 192k -hls_segment_filename $output_path/1080p_%03d.ts $output_path/1080p.m3u8
rm video.$input_extension
cd $output_path
echo '#EXTM3U
#EXT-X-VERSION:3
#EXT-X-STREAM-INF:BANDWIDTH=800000,RESOLUTION=640x360
360p.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=1400000,RESOLUTION=842x480
480p.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=2800000,RESOLUTION=1280x720
720p.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=5000000,RESOLUTION=1920x1080
1080p.m3u8' > master.m3u8