Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

运行demo报:[swscaler @ 0x7f5cbb7f1200] No accelerated colorspace conversion found from yuv420p to rgb24. #110

Open
QQiangren opened this issue Apr 24, 2024 · 10 comments

Comments

@QQiangren
Copy link

QQiangren commented Apr 24, 2024

运行官方镜像,
docker pull babitmf/bmf_runtime:latest
docker run --gpus all -e NVIDIA_DRIVER_CAPABILITIES=all -it babitmf/bmf_runtime:latest bash
export CMAKE_ARGS="-DBMF_ENABLE_CUDA=ON"
./build.sh
编译后运行demo:
python3 ~/bmf/output/demo/video_enhance/enhance_demo.py
代码未报错,能够生成视频,但运行过程中一直报:No accelerated colorspace conversion found from yuv420p to rgb24.
问题:
生成的output.mp4视频,播放时完全看不到视频内容,显示花屏。

@HuHeng
Copy link
Collaborator

HuHeng commented Apr 24, 2024

应该是我们babitmf/bmf_runtime:latest镜像内的ffmpeg有问题,我试了一下里面的ffmpeg,使用ffmpeg -i bbb.mp4 -vf "scale=1280x720" xx.mp4, 生成的视频是有问题的。我们后面会进一步检查一下问题在哪里。
临时办法:
可以先删除/usr/local/lib下的ffmpeg相关库libswscale.so, libav*系列库。然后使用apt-get update && apt-get install ffmpeg使用发行版源包安装ffmpeg。

@QQiangren
Copy link
Author

感谢你的回答,通过你的方法,我做了如下操作:
rm -rf /usr/local/lib/libswscale.so
rm -rf /usr/local/lib/libav

apt-get update && apt-get install ffmpeg
*
操作完后继续运行该demo:
python3 enhance_demo.py
仍然报:No accelerated colorspace conversion found from yuv420p to rgb24.,
生成的视频比之前清晰了一些,但是画面仍然花屏,画面内是一条条红色的横杠条纹。
我安装的ffmpeg版本是 ffmpeg (7:4.2.7-0ubuntu0.1) 。
请问对ffmpeg版本有什么要求吗?谢谢

@HuHeng
Copy link
Collaborator

HuHeng commented Apr 25, 2024

需要删除干净。
rm -rf /usr/local/lib/libswscale.so*
rm -rf /usr/local/lib/libav*
rm -rf /usr/local/lib/libswresample.so*

@QQiangren
Copy link
Author

根据指导,已跑通demo。
感谢
后期是否维护更新该镜像?

@QQiangren
Copy link
Author

QQiangren commented Jul 22, 2024 via email

@KkemChen
Copy link

KkemChen commented Jul 22, 2024

应该是我们babitmf/bmf_runtime:latest镜像内的ffmpeg有问题,我试了一下里面的ffmpeg,使用ffmpeg -i bbb.mp4 -vf "scale=1280x720" xx.mp4, 生成的视频是有问题的。我们后面会进一步检查一下问题在哪里。 临时办法: 可以先删除/usr/local/lib下的ffmpeg相关库libswscale.so, libav*系列库。然后使用apt-get update && apt-get install ffmpeg使用发行版源包安装ffmpeg。

为什么 我手动build的 ffmpeg来给bmf使用,也会发生该问题呢?

而在使用发行版源包 安装ffmpeg之后,再切换到手动编译的ffmpeg版本(使用bmf/scripte下提供的 ffmpeg构建脚本),最终画面也是正常的 (环境为 ubuntu22.04,并未使用babitmf/bmf_runtime:latest镜像)

@JackLau1222
Copy link
Contributor

JackLau1222 commented Jul 22, 2024

  1. 检查下编译的ffmpeg是否是4-5的版本
  2. 检查编译的是否为动态库 以及编译后存储的路径是否在环境中

@KkemChen
Copy link

  1. 检查下编译的ffmpeg是否是4-5的版本
  2. 检查编译的是否为动态库 以及编译后存储的路径是否在环境中

版本试过4.4, 4.4.4 以及 5.1.2
编译好后都通过ffmpeg --version确认过当前环境使用的ffmpeg,(也尝试过,apt remove ffmpeg*后 仅保留手动编译的ffmpeg版本)进行测试,结论跟上面描述的一样

@HuHeng
Copy link
Collaborator

HuHeng commented Jul 22, 2024

应该是我们babitmf/bmf_runtime:latest镜像内的ffmpeg有问题,我试了一下里面的ffmpeg,使用ffmpeg -i bbb.mp4 -vf "scale=1280x720" xx.mp4, 生成的视频是有问题的。我们后面会进一步检查一下问题在哪里。 临时办法: 可以先删除/usr/local/lib下的ffmpeg相关库libswscale.so, libav*系列库。然后使用apt-get update && apt-get install ffmpeg使用发行版源包安装ffmpeg。

为什么 我手动build的 ffmpeg来给bmf使用,也会发生该问题呢?

而在使用发行版源包 安装ffmpeg之后,再切换到手动编译的ffmpeg版本(使用bmf/scripte下提供的 ffmpeg构建脚本),最终画面也是正常的 (环境为 ubuntu22.04,并未使用babitmf/bmf_runtime:latest镜像)

ffmpeg4.4后使用--disable-x86asm编译再使用libswscale库是有问题的,这是ffmpeg本身的bug。不过一般是不使用这个参数去编译ffmpeg的,建议安装yasm/nasm再去除--disable-x86asm参数后进行编译。

@KkemChen
Copy link

应该是我们babitmf/bmf_runtime:latest镜像内的ffmpeg有问题,我试了一下里面的ffmpeg,使用ffmpeg -i bbb.mp4 -vf "scale=1280x720" xx.mp4, 生成的视频是有问题的。我们后面会进一步检查一下问题在哪里。 临时办法: 可以先删除/usr/local/lib下的ffmpeg相关库libswscale.so, libav*系列库。然后使用apt-get update && apt-get install ffmpeg使用发行版源包安装ffmpeg。

为什么 我手动build的 ffmpeg来给bmf使用,也会发生该问题呢?
而在使用发行版源包 安装ffmpeg之后,再切换到手动编译的ffmpeg版本(使用bmf/scripte下提供的 ffmpeg构建脚本),最终画面也是正常的 (环境为 ubuntu22.04,并未使用babitmf/bmf_runtime:latest镜像)

ffmpeg4.4后使用--disable-x86asm编译再使用libswscale库是有问题的,这是ffmpeg本身的bug。不过一般是不使用这个参数去编译ffmpeg的,建议安装yasm/nasm再去除--disable-x86asm参数后进行编译。

嗷,这样啊,好的,明白了,晚点我尝试一下。 🙏感谢答复

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants