@@ -30,30 +30,43 @@ jobs:
3030 # sudo python3 -m pip install timeout_decorator numpy onnxruntime pytest opencv-python librosa
3131
3232 git clone https://github.com/JackLau1222/bmf.git
33- (cd bmf && git checkout fork_by_oc && sudo scripts/build_ffmpeg.sh nasm yasm x264 x265 opus && ./build.sh )
34- # setup bmf root path
35- # echo "BMF_ROOT_PATH=${BMF_ROOT_PATH}:$(pwd)/bmf/output/bmf" >> $GITHUB_ENV
36- # export BMF_ROOT_PATH=${BMF_ROOT_PATH}:$(pwd)/bmf/output/bmf
33+
34+ - name : Cache FFmpeg build
35+ uses : actions/cache@v3
36+ with :
37+ path : |
38+ /usr/local/bin/ffmpeg
39+ /usr/local/lib/
40+ /usr/local/include/
41+ key : ${{ runner.os }}-ffmpeg-${{ hashFiles('bmf/scripts/build_ffmpeg.sh') }}
42+ restore-keys : |
43+ ${{ runner.os }}-ffmpeg-
44+
45+ - name : Cache BMF build
46+ uses : actions/cache@v3
47+ with :
48+ path : bmf/output/
49+ key : ${{ runner.os }}-bmf-${{ hashFiles('bmf/build.sh') }}
50+ restore-keys : |
51+ ${{ runner.os }}-bmf-
52+
53+ - name : Compile FFmpeg and BMF if not cached
54+ run : |
55+ if [ ! -f "/usr/local/bin/ffmpeg" ]; then
56+ echo "FFmpeg not found, starting build..."
57+ (cd bmf && git checkout fork_by_oc && sudo scripts/build_ffmpeg.sh nasm yasm x264 x265 opus && ./build.sh )
58+ else
59+ echo "FFmpeg is already installed, skipping build."
60+ fi
61+
62+ - name : Set up BMF
63+ run : |
3764 cd bmf
3865 echo "C_INCLUDE_PATH=${C_INCLUDE_PATH}:$(pwd)/output/bmf/include" >> $GITHUB_ENV
3966 echo "CPLUS_INCLUDE_PATH=${CPLUS_INCLUDE_PATH}:$(pwd)/output/bmf/include" >> $GITHUB_ENV
4067 echo "LIBRARY_PATH=${LIBRARY_PATH}:$(pwd)/output/bmf/lib" >> $GITHUB_ENV
4168 echo "LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:$(pwd)/output/bmf/lib" >> $GITHUB_ENV
4269
43- # - name: set envs
44- # run: |
45- # echo "C_INCLUDE_PATH=${C_INCLUDE_PATH}:$(pwd)/output/bmf/include" >> $GITHUB_ENV
46- # echo "CPLUS_INCLUDE_PATH=${CPLUS_INCLUDE_PATH}:$(pwd)/output/bmf/include" >> $GITHUB_ENV
47- # echo "LIBRARY_PATH=${LIBRARY_PATH}:$(pwd)/output/bmf/lib" >> $GITHUB_ENV
48- # echo "LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:$(pwd)/output/bmf/lib:/usr/local/lib" >> $GITHUB_ENV
49- # echo "PYTHONPATH=$(pwd)/output/bmf/lib:$(pwd)/output" >> $GITHUB_ENV
50- # echo "PATH=${PATH}:$(pwd)/output/bmf/bin" >> $GITHUB_ENV
51- # echo "HMP_TEST_DATA_ROOT=$(pwd)/bmf/hml/tests/data" >> $GITHUB_ENV
52-
53- # env:
54- # BMF_REPO: ${{ vars.BMF_REPOSITORY_URL }}
55- # BMF_BRANCH: ${{ vars.BMF_BRANCH }}
56- # BMF_ROOT_PATH: ${{ github.workspace }}/bmf/output/bmf
5770
5871 - name : Set up Qt
5972 run : |
0 commit comments