Merge branch 'linux_webcam_fix'

This commit is contained in:
CeeBeeEh 2022-03-17 11:14:54 -04:00
commit 839f08a602
4 changed files with 38 additions and 2 deletions

View file

@ -55,12 +55,15 @@ class _DriverType(IntEnum):
DSHOW = 0 DSHOW = 0
MSMF = 1 MSMF = 1
GSTREAMER = 2 GSTREAMER = 2
OPENCV = 3
_DriverType_names = { _DriverType.DSHOW : 'DirectShow', _DriverType_names = { _DriverType.DSHOW : 'DirectShow',
_DriverType.MSMF : 'Microsoft Media Foundation', _DriverType.MSMF : 'Microsoft Media Foundation',
_DriverType.GSTREAMER : 'GStreamer', _DriverType.GSTREAMER : 'GStreamer',
_DriverType.OPENCV : 'OpenCV',
} }
class _RotationType(IntEnum): class _RotationType(IntEnum):
ROTATION_0 = 0 ROTATION_0 = 0
ROTATION_90 = 1 ROTATION_90 = 1

View file

@ -6,7 +6,8 @@ RUN apt -y install libgl1-mesa-glx libegl1-mesa libxrandr2 libxrandr2 libxss1 li
RUN apt install -y python3 python3-pip RUN apt install -y python3 python3-pip
RUN ln -s /usr/bin/python3 /usr/bin/python RUN ln -s /usr/bin/python3 /usr/bin/python
RUN git clone https://github.com/iperov/DeepFaceLive.git #RUN git clone https://github.com/iperov/DeepFaceLive.git
RUN git clone https://github.com/CeeBeeEh/DeepFaceLive.git
RUN python -m pip install --upgrade pip RUN python -m pip install --upgrade pip
RUN python -m pip install onnxruntime-gpu==1.10.0 numpy==1.21.5 h5py numexpr opencv-python==4.5.5.62 opencv-contrib-python==4.5.5.62 pyqt6==6.2.3 onnx==1.11.0 torch==1.8.1 torchvision==0.9.1 RUN python -m pip install onnxruntime-gpu==1.10.0 numpy==1.21.5 h5py numexpr opencv-python==4.5.5.62 opencv-contrib-python==4.5.5.62 pyqt6==6.2.3 onnx==1.11.0 torch==1.8.1 torchvision==0.9.1

View file

@ -12,4 +12,9 @@ git clone DeepFaceLive
cd DeepFaceLive/build/linux/ cd DeepFaceLive/build/linux/
# start.sh builds and runs container with proper options, then example.sh will start DeepFaceLive with example options # start.sh builds and runs container with proper options, then example.sh will start DeepFaceLive with example options
./start.sh ./start.sh
Usage of ./start.sh
# -d specify a folder for DeepFaceLive data (videos, models, etc)
-d /home/user/DeepFaceLive_data
# -c will pass through existing video devices such as /dev/video0 and /dev/video1, etc
``` ```

View file

@ -1,5 +1,32 @@
#!/bin/bash #!/bin/bash
DATA_FOLDER=$(pwd)/data/
declare CAM0 CAM1 CAM2 CAM3
printf "\n"
while getopts 'cd:h' opt; do
case "$opt" in
c)
printf "Starting with camera devices\n"
test -f /dev/video0 && CAM0=--device=/dev/video0:/dev/video0
test -f /dev/video1 && CAM1=--device=/dev/video1:/dev/video1
test -f /dev/video2 && CAM2=--device=/dev/video2:/dev/video2
test -f /dev/video3 && CAM3=--device=/dev/video3:/dev/video3
;;
d)
DATA_FOLDER="$OPTARG"
printf "Starting with data folder: %s\n" "$DATA_FOLDER"
;;
?|h)
printf "Usage:\n$(basename $0) [-d] /path/to/your/data/folder\n"
exit 1
;;
esac
done
shift "$(($OPTIND -1))"
printf "\n"
# Warning xhost + is overly permissive and will reduce system security. Edit as desired # Warning xhost + is overly permissive and will reduce system security. Edit as desired
docker build . -t deepfacelive docker build . -t deepfacelive
xhost + xhost +
docker run --ipc host --gpus all -e DISPLAY=$DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix -v $(pwd)/data/:/data/ --rm -it deepfacelive docker run --ipc host --gpus all -e DISPLAY=$DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix -v $DATA_FOLDER:/data/ $CAM0 $CAM1 $CAM2 $CAM3 --rm -it deepfacelive