开源视频转码器HandBrake

2024-03-03 07:04
文章标签 视频 开源 码器 handbrake

本文主要是介绍开源视频转码器HandBrake,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在这里插入图片描述

什么是 HandBrake ?

HandBrake 是一款适用于 LinuxMacWindows的开源视频转码器。HandBrake 可以处理大多数常见的视频文件和格式,包括消费者和专业摄像机创建的文件、手机和平板电脑等移动设备的文件、游戏和计算机屏幕录制的文件,以及DVD 和蓝光光盘的文件。HandBrake 利用 FFmpegx264x265等工具从这些源文件创建新的 MP4MKV 视频文件。

什么是 docker-handbrake ?

docker-handbrake 实现了一个用于 HandBrakeDocker 容器。应用程序的图形用户界面可以通过现代的 Web 浏览器访问(客户端无需安装或配置),也可以通过任何 VNC 客户端进行访问。还提供了完全自动化模式:将文件放入监视文件夹中,让 HandBrake 在没有任何用户交互的情况下处理它们。

安装

在群晖上以 Docker 方式安装。

在注册表中搜索 handbrake ,选择第一个 jlesage/handbrake,版本选择 latest

本文写作时, latest 版本对应为 v24.01.2

在这里插入图片描述

docker 文件夹中,创建一个新文件夹 handbrake,并在其中建四个子文件夹 configoutputstoragewatch

文件夹装载路径说明
docker/handbrake/config/config存储其配置、状态、日志和任何需要持久性的文件
docker/handbrake/output/output存储转换后的视频文件
docker/handbrake/watch/watch存储需要转换的视频文件
docker/handbrake/storage/storage包含需要应用程序访问的主机文件

在这里插入图片描述

端口

本地端口不冲突就行,不确定的话可以用命令查一下

# 查看端口占用
netstat -tunlp | grep 端口号
本地端口容器端口
58035800

默认暴露了 2 个端口,其中 5900VNC 连接端口

在这里插入图片描述

如果没有 VNC 客户端的话,可以删掉

在这里插入图片描述

环境

可变
LANG默认值为 en_US.UTF-8,改设为 zh_CN.UTF-8
TZ默认值为 Etc/UTC,改设为 Asia/Shanghai

在这里插入图片描述

更多的变量参数及功能介绍,请参考官方文档:https://github.com/jlesage/docker-handbrake#environment-variables

命令行安装

如果你熟悉命令行,可能用 docker cli 更快捷

如果你的设备支持 Intel Quicksync (QSV),可以增加一行 --device /dev/dri 开启硬件加速编码

# 新建文件夹 handbrake 和 子目录
mkdir -p /volume1/docker/handbrake/{config,output,storage,watch}# 进入 handbrake 目录
cd /volume1/docker/handbrake# 运行容器
docker run -d \--restart unless-stopped \--name handbrake \-p 5803:5800 \-v $(pwd)/config:/config:rw \-v $(pwd)/output:/output:rw \-v $(pwd)/storage:/storage:ro \-v $(pwd)/watch:/watch:rw \jlesage/handbrake

也可以用 docker-compose 安装,将下面的内容保存为 docker-compose.yml 文件

version: '3'services:handbrake:image: jlesage/handbrakecontainer_name: handbrakerestart: unless-stoppedports:- 5803:5800volumes:- ./config:/config:rw- ./output:/output:rw \- ./storage:/storage:ro \- ./watch:/watch:rw \

然后执行下面的命令

# 新建文件夹 handbrake 和 子目录
mkdir -p /volume1/docker/handbrake/{config,output,storage,watch}# 进入 handbrake 目录
cd /volume1/docker/handbrake# 将 docker-compose.yml 放入当前目录# 一键启动
docker-compose up -d

运行

在浏览器中输入 http://群晖IP:5803 就能看到主界面

在这里插入图片描述

中文界面

如果你配置了环境变量 LANGzh_CN.UTF-8,看到册主界面是👇这样的

在这里插入图片描述

这应该是容器里没有中文字体导致的,在网上搜索 Songti.ttc,将下载的字体文件放到 handbrake 目录

Songti.ttc 下载地址:Songti.ttc(https://portrait.gitee.com/ishelo/QQZoneMood/blob/master/Songti.ttc)

在这里插入图片描述

将字体放到容器内即可

# 从群晖拷贝到容器内
docker cp ./Songti.ttc handbrake:/usr/share/fonts/## --- 以下几步为验证,可以不需要执行 --- ##
# 进入容器内
docker exec -it --user root handbrake /bin/bash# 扫描字体目录并生成字体信息的缓存
fc-cache -vf# 查看系统内所有中文字体及字体文件的路径
fc-list :lang=zh

在这里插入图片描述

必须要重启一次容器

在这里插入图片描述

原来的小方框已经可以正常显示了

在这里插入图片描述

转码本身是比较耗性能的,如果能使用硬件编解码会有效的降低 CPU 的占用,从官方说明看,HandBrake 支持 Intel Quick Sync Video,只需要将设备/dev/dri暴露在容器中即可。在大多数情况下,HandBrake 是可以成功访问/dev/dri设备的

软件的使用,说简单也简单,说复杂也复杂,不过好在是中文界面,而且网上能找到使用教程,所以这里就不赘述了。

参考文档

HandBrake/HandBrake: HandBrake’s main development repository
地址:https://github.com/HandBrake/HandBrake

HandBrake: Open Source Video Transcoder
地址:https://handbrake.fr/

jlesage/docker-handbrake: Docker container for HandBrake
地址:https://github.com/jlesage/docker-handbrake

这篇关于开源视频转码器HandBrake的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/768850

相关文章

流媒体平台/视频监控/安防视频汇聚EasyCVR播放暂停后视频画面黑屏是什么原因?

视频智能分析/视频监控/安防监控综合管理系统EasyCVR视频汇聚融合平台,是TSINGSEE青犀视频垂直深耕音视频流媒体技术、AI智能技术领域的杰出成果。该平台以其强大的视频处理、汇聚与融合能力,在构建全栈视频监控系统中展现出了独特的优势。视频监控管理系统EasyCVR平台内置了强大的视频解码、转码、压缩等技术,能够处理多种视频流格式,并以多种格式(RTMP、RTSP、HTTP-FLV、WebS

综合安防管理平台LntonAIServer视频监控汇聚抖动检测算法优势

LntonAIServer视频质量诊断功能中的抖动检测是一个专门针对视频稳定性进行分析的功能。抖动通常是指视频帧之间的不必要运动,这种运动可能是由于摄像机的移动、传输中的错误或编解码问题导致的。抖动检测对于确保视频内容的平滑性和观看体验至关重要。 优势 1. 提高图像质量 - 清晰度提升:减少抖动,提高图像的清晰度和细节表现力,使得监控画面更加真实可信。 - 细节增强:在低光条件下,抖

阿里开源语音识别SenseVoiceWindows环境部署

SenseVoice介绍 SenseVoice 专注于高精度多语言语音识别、情感辨识和音频事件检测多语言识别: 采用超过 40 万小时数据训练,支持超过 50 种语言,识别效果上优于 Whisper 模型。富文本识别:具备优秀的情感识别,能够在测试数据上达到和超过目前最佳情感识别模型的效果。支持声音事件检测能力,支持音乐、掌声、笑声、哭声、咳嗽、喷嚏等多种常见人机交互事件进行检测。高效推

金融业开源技术 术语

金融业开源技术  术语 1  范围 本文件界定了金融业开源技术的常用术语。 本文件适用于金融业中涉及开源技术的相关标准及规范性文件制定和信息沟通等活动。

安全管理体系化的智慧油站开源了。

AI视频监控平台简介 AI视频监控平台是一款功能强大且简单易用的实时算法视频监控系统。它的愿景是最底层打通各大芯片厂商相互间的壁垒,省去繁琐重复的适配流程,实现芯片、算法、应用的全流程组合,从而大大减少企业级应用约95%的开发成本。用户只需在界面上进行简单的操作,就可以实现全视频的接入及布控。摄像头管理模块用于多种终端设备、智能设备的接入及管理。平台支持包括摄像头等终端感知设备接入,为整个平台提

K8S(Kubernetes)开源的容器编排平台安装步骤详解

K8S(Kubernetes)是一个开源的容器编排平台,用于自动化部署、扩展和管理容器化应用程序。以下是K8S容器编排平台的安装步骤、使用方式及特点的概述: 安装步骤: 安装Docker:K8S需要基于Docker来运行容器化应用程序。首先要在所有节点上安装Docker引擎。 安装Kubernetes Master:在集群中选择一台主机作为Master节点,安装K8S的控制平面组件,如AP

MiniGPT-3D, 首个高效的3D点云大语言模型,仅需一张RTX3090显卡,训练一天时间,已开源

项目主页:https://tangyuan96.github.io/minigpt_3d_project_page/ 代码:https://github.com/TangYuan96/MiniGPT-3D 论文:https://arxiv.org/pdf/2405.01413 MiniGPT-3D在多个任务上取得了SoTA,被ACM MM2024接收,只拥有47.8M的可训练参数,在一张RTX

HomeBank:开源免费的个人财务管理软件

在个人财务管理领域,找到一个既免费又开源的解决方案并非易事。HomeBank 正是这样一个项目,它不仅提供了强大的功能,还拥有一个活跃的社区,不断推动其发展和完善。 开源免费:HomeBank 是一个完全开源的项目,用户可以自由地使用、修改和分发。用户友好的界面:提供直观的图形用户界面,使得非技术用户也能轻松上手。数据导入支持:支持从 Quicken、Microsoft Money

《x86汇编语言:从实模式到保护模式》视频来了

《x86汇编语言:从实模式到保护模式》视频来了 很多朋友留言,说我的专栏《x86汇编语言:从实模式到保护模式》写得很详细,还有的朋友希望我能写得更细,最好是覆盖全书的所有章节。 毕竟我不是作者,只有作者的解读才是最权威的。 当初我学习这本书的时候,只能靠自己摸索,网上搜不到什么好资源。 如果你正在学这本书或者汇编语言,那你有福气了。 本书作者李忠老师,以此书为蓝本,录制了全套视频。 试

开源分布式数据库中间件

转自:https://www.csdn.net/article/2015-07-16/2825228 MyCat:开源分布式数据库中间件 为什么需要MyCat? 虽然云计算时代,传统数据库存在着先天性的弊端,但是NoSQL数据库又无法将其替代。如果传统数据易于扩展,可切分,就可以避免单机(单库)的性能缺陷。 MyCat的目标就是:低成本地将现有的单机数据库和应用平滑迁移到“云”端