展示HN: FFmpeg WebCLI - 在浏览器中的完整FFmpeg,无需上传(WASM)
一个基于浏览器的视频编辑器,由ffmpeg.wasm提供支持。无需上传,无需服务器 - 所有处理在您的浏览器中使用WebAssembly本地进行。🚀 现场应用程序: https://tejaswigowda.com/ffmpeg-webCLI/ 主要特性 ✅ 无服务器上传 - 所有视频处理完全在您的设备上进行 ✅ 30多种视频操作 - GIF创建、格式转换、压缩、裁剪、特效、滤镜等 ✅ 离线优先的PWA - 在第一次使用后完全离线工作; 可安装为原生应用 ✅ 屏幕保持唤醒 - 在任何设备上视频处理期间屏幕保持活跃 ✅ 实时预览 - 查看输出大小估计和实时设置调整 ✅ 多格式支持 - MP4、WebM、MKV、MOV、AVI、GIF、MP3、AAC、WAV、OGG、FLAC、JPG、PNG ✅ 高级功能 - 原始ffmpeg命令访问、字幕嵌入、连接、画中画、音频混合 ✅ 快速且响应灵敏 - 使用Web Workers进行后台处理 ✅ 隐私优先 - 零数据收集; 本地处理您的文件 使用案例 🎞 GIF制作器 将任何视频剪辑转换为动画GIF。设置帧速率和输出宽度; 高度自动缩放以保持纵横比。使用二次调色板生成以获得最佳的颜色质量。 🔄 视频格式转换 重新编码视频为不同的容器和编解码器: MP4 - H.264 + AAC,兼容性最广 WebM - VP9 + Opus,针对网络优化的开放格式(在相似质量下比MP4小约45%) MKV / MOV - H.264 + AAC的替代容器 AVI - 传统兼容性 🗜 视频压缩 减小文件大小而不改变分辨率。通过CRF滑块调整质量(18 = 接近无损 → 51 = 最大压缩),并选择编码预设(超级快速 → 非常慢)以在编码速度和压缩效率之间进行权衡。调整设置时,实时大小估计会更新。 ✂️ 视频裁剪 在运行任何操作之前,通过时间轴滑块设置开始点和结束点。裁剪应用于所有其他操作之上,因此您可以例如提取一个短剪辑、压缩它,并一次性转换为GIF。 📐 调整大小与压缩 一次性更改输出尺寸并压缩。宽度和高度自动从源视频填充; 编辑任一值或保留为空以让ffmpeg保持纵横比。结合了缩放滤镜与基于CRF的H.264编码。 🎵 音频提取 从任何视频中提取音轨到独立的音频文件: MP3 - 通用播放 AAC - 高效有损,适合移动设备 WAV - 无压缩PCM OGG Vorbis - 开放有损格式 FLAC - 无损压缩 🔇 静音视频 完全去除音频流。输出为没有音轨的原始视频 - 适用于静音循环、社交媒体剪辑或在其他地方替换音频之前。 ⚡ 改变速度 加速或减慢播放速度(0.25× - 4×)。同时调整视频PTS和atempo音频滤镜链,以保持音频音调和同步。当乘数超出单个滤镜接受的0.5-2.0范围时,自动链多个atempo阶段。 🔄 旋转/翻转 修正方向或创建镜像效果,无需重新上传。选项:顺时针90°,逆时针90°,180°,水平翻转,垂直翻转,或两轴翻转。 ✂️ 裁剪 缩小特定区域的帧。X/Y偏移和宽度/高度自动从源视频尺寸填充,因此您可以立即拖动值,而不是从头开始。 🖼 缩略图提取器 从视频的任何点提取一帧并将其保存为JPEG或PNG图像。时间戳字段预填充为加载剪辑的中点。 ⏪ 倒放 使用ffmpeg的逆向+逆向滤镜将视频(和音频)倒放。 🌅 渐入/渐出 添加平滑的渐入、渐出或两者。为每个方向设置持续时间(以秒为单位);滤镜在任何裁剪后应用。 🎨 调整(亮度/对比度/饱和度) 使用eq滤镜微调剪辑的外观。三个滑块控制亮度(−1 → 1)、对比度(0 → 2)和饱和度(0 → 3)。灰度复选框将饱和度锁定为零,实现即时黑白输出。 🚫 去除元数据 在共享文件之前,移除所有嵌入的元数据 - GPS坐标、相机品牌/型号、创建时间戳和任何其他标签。重新编码时使用-map_metadata -1。 📝 嵌入字幕 将一个.srt、.vtt或.ass字幕文件合并到视频中作为软字幕轨道 - 在任何媒体播放器(如VLC、浏览器等)中可切换开/关,而无需重新编码图像。输出格式选择: MP4 - 字幕流编码为mov_text MKV - 字幕流以本地方式复制(保留ASS/SSA样式) 视频和音频以流复制(零质量损失,几乎瞬时)。将字幕硬性嵌入图像中需要一个libass支持的ffmpeg构建,并不在标准WebAssembly核心中提供。 🔊 音量 提高或降低任何视频的音频水平。单个滑块设置音量乘数(0 = 静音,1.0 = 未改变,最高可达4×)。
本站免费、广告极少。如果觉得有帮助,可以请我们喝杯咖啡 —— 任何金额都对持续运营有实际帮助。
☕请我喝杯咖啡