OSDN Git Service

マージの競合解決
[kosys/kosys-ep02.git] / Makefile
1 \r
2 #############################################################################\r
3 # マクロ定義\r
4 #############################################################################\r
5 \r
6 # 共通マクロ\r
7 include Makefile.inc\r
8 sinclude Makefile.user.inc\r
9 \r
10 \r
11 # サブディレクトリ \r
12 SUBDIRS:=doga sound\r
13 \r
14 # エンコード関連\r
15 AVS2WAV:=$(ENC_UTIL_DIR)/avs2wav.exe\r
16 NEROAACENC:=$(ENC_UTIL_DIR)/neroAacEnc_SSE.exe\r
17 X264:=$(ENC_UTIL_DIR)/x264_x64.exe\r
18 MUXER:=$(ENC_UTIL_DIR)/muxer.exe\r
19 REMUXER:=$(ENC_UTIL_DIR)/remuxer.exe\r
20 \r
21 AOPTION=-cbr 256000 -lc\r
22 AOPTION_ECO=-cbr 64000 -lc\r
23 VOPTION=--opencl --bitrate 1500 --vbv-maxrate 3500 --vbv-bufsize 3400 --profile high --preset slower --partitions all --me "umh" --subme 10 --merange 24 --ref 6 --bframes 5 --b-pyramid normal --no-dct-decimate --no-fast-pskip --qcomp 0.70 --qpstep 20 \r
24 VOPTION_ECO=--opencl --bitrate 230 --profile main --preset slower --8x8dct --partitions "p8x8,b8x8,i8x8,i4x4" --me "umh" --subme 10 --merange 24 --ref 6 --bframes 5 --b-pyramid normal --no-dct-decimate --no-fast-pskip --qcomp 0.70 --qpstep 20 \r
25 VOPT_FAST=--analyse none --subme 1 --me dia\r
26 VOPT_SLOW=\r
27 FPS=24\r
28 \r
29 IN_AVS=main.avs\r
30 VER_AVS=version.avs\r
31 OUT_MP4=_release/kosys.mp4\r
32 TMPA1=_release/kosys.tmp.m4a\r
33 TMPV1=_release/kosys.tmp.264\r
34 TMPV2=_release/kosys.tmp.mp4\r
35 OUT_MP4_PRE=_release/kosys_pre.mp4\r
36 TMPV1_PRE=_release/kosys_pre.tmp.264\r
37 TMPV2_PRE=_release/kosys_pre.tmp.mp4\r
38 OUT_MP4_ECO=_release/kosys_eco.mp4\r
39 TMPA1_ECO=_release/kosys_eco.tmp.m4a\r
40 TMPV1_ECO=_release/kosys_eco.tmp.264\r
41 TMPV2_ECO=_release/kosys_eco.tmp.mp4\r
42 \r
43 #############################################################################\r
44 # Makeルール\r
45 #############################################################################\r
46 \r
47 .PHONY: all $(SUBDIRS)\r
48 all: $(SUBDIRS)\r
49 $(SUBDIRS):\r
50         $(MAKE) -C $@\r
51 \r
52 \r
53 .PHONY: release\r
54 release: $(OUT_MP4)\r
55 $(OUT_MP4): $(TMPA1) $(TMPV1) $(TMPV2)\r
56         $(REMUXER) -i $(TMPV2) -i $(TMPA1) -o $(OUT_MP4)\r
57 \r
58 $(TMPV2): $(TMPV1)\r
59         $(MUXER) -i $(TMPV1)?fps=$(FPS) -o $(TMPV2)\r
60 \r
61 \r
62 $(TMPV1): $(wildcard *.avs) $(wildcard doga/_output/*.avi) version\r
63         $(X264) $(VOPTION) --pass 1 $(VOPT_FAST) -o $(TMPV1) $(IN_AVS)\r
64         $(X264) $(VOPTION) --pass 2 $(VOPT_SLOW) -o $(TMPV1) $(IN_AVS)\r
65         \r
66         \r
67 $(TMPA1): $(wildcard *.avs) $(wildcard doga/_output/*.avi) $(wildcard sound/*.wav)  $(wildcard sound/*.mp3)\r
68         $(AVS2WAV) $(IN_AVS)  - |$(NEROAACENC) $(AOPTION) -if - -of $(TMPA1)\r
69         \r
70 \r
71 .PHONY: preview\r
72 preview: $(OUT_MP4_PRE)\r
73 $(OUT_MP4_PRE): $(TMPA1) $(TMPV1_PRE) $(TMPV2_PRE)\r
74         $(REMUXER) -i $(TMPV2_PRE) -i $(TMPA1) -o $(OUT_MP4_PRE)\r
75 \r
76 $(TMPV2_PRE): $(TMPV1_PRE)\r
77         $(MUXER) -i $(TMPV1_PRE)?fps=$(FPS) -o $(TMPV2_PRE)\r
78 \r
79 $(TMPV1_PRE): $(TMPA1) $(wildcard *.avs) $(wildcard doga/_output/*.avi) version\r
80         $(X264) $(VOPTION) $(VOPT_FAST) -o $(TMPV1_PRE) $(IN_AVS)\r
81         \r
82 \r
83 eco: $(OUT_MP4_ECO)\r
84 $(OUT_MP4_ECO): $(OUT_MP4) $(TMPA1_ECO)\r
85         $(X264) $(VOPTION_ECO) --pass 1 $(VOPT_FAST) --video-filter resize:352,200,1:1:lanczos -o $(TMPV1_ECO) $(OUT_MP4)\r
86         $(X264) $(VOPTION_ECO) --pass 2 $(VOPT_SLOW) --video-filter resize:352,200,1:1:lanczos -o $(TMPV1_ECO) $(OUT_MP4)\r
87         $(MUXER) -i $(TMPV1_ECO)?fps=$(FPS) -o $(TMPV2_ECO)\r
88         $(REMUXER) -i $(TMPV2_ECO) -i $(TMPA1_ECO) -o $(OUT_MP4_ECO)\r
89         \r
90 $(TMPA1_ECO): $(OUT_MP4)  $(wildcard *.avs) $(wildcard doga/_output/*.avi) $(wildcard doga/_output/*.wav)  $(wildcard doga/_output/*.mp3)\r
91         $(AVS2WAV) $(IN_AVS)  - |$(NEROAACENC) $(AOPTION_ECO) -if - -of $(TMPA1_ECO)\r
92 \r
93 .PHONY: version\r
94 version: \r
95 # gitのリビジョン番号を取得する\r
96         echo 'global VERSION="$(shell git describe --abbrev=7 --dirty --always --tags)"' >  $(VER_AVS).tmp\r
97 # リビジョン番号が変化していたときのみ上書きする\r
98         test -e $(VER_AVS) || cp -f $(VER_AVS).tmp $(VER_AVS)\r
99         test "$$(md5sum $(VER_AVS).tmp | awk '{ print $$1 }')" != "$$(md5sum $(VER_AVS) | awk '{ print $$1 }')" && cp -f $(VER_AVS).tmp $(VER_AVS) || true\r
100         rm -f $(VER_AVS).tmp\r
101 \r