如何ffmpeg通过降低质量来减小视频的大小(自然而然地尽可能减少,因为我需要它在没有太多可用空间的移动设备上运行)?
我忘了说当视频可以使用字幕(*.srt 或*.sub)时,我也想转换它们以适应转换后的视频文件的参数。
我将使用什么命令将 mp4 或 mv4 视频文件转换为动画 gif,反之亦然。也就是说,将动画 gif 转换为 mp4 或 mv4。
我正在寻找一种在终端中观看 YouTube 视频的方法(不是在浏览器或其他窗口中,而是在任何 bash 会话中)。
有没有一种简单的方法可以做到这一点?
我想象这样的事情:
$ youtube <video-url>
Run Code Online (Sandbox Code Playgroud)
我已经知道如何使用mplayer以下方法播放视频:
$ mplayer -vo caca local-file.avi
Run Code Online (Sandbox Code Playgroud)
但是,这会打开一个新窗口。在终端中播放它会很酷。
此外,它应该与tmux会话兼容。
我问了另一个关于如何防止打开新窗口的问题。
对于那些想知道我在哪里需要这样的功能的人,我开始了一个名为TmuxOStmux的实验项目—— 其概念是一切都应该在session内运行 。
所以,确实我需要一个本地和远程视频的视频播放器。:-)
我有两个视频剪辑。两者都是 640x480,持续 10 分钟。一个包含背景音频,另一个包含歌唱演员。我想创建一个大小为 1280x480 的 10 分钟视频剪辑(换句话说,我想将视频并排放置并同时播放,混合来自两个剪辑的音频)。我试图弄清楚如何使用 ffmpeg/avidemux 来做到这一点,但到目前为止我还是空的。当我搜索合并时,它们都指连接。
有什么建议吗?
要拍摄静态截图我的屏幕的选择的部分,我经常使用scrot同-s shot.png。这非常适合在 StackExchange 帖子中添加插图。我什至发现这个脚本可以自动将这样的屏幕截图上传到Imgur.com并在我的 X 剪贴板中放置一个链接!
让我们把它变成十二个:我如何类似地创建一个 GIF 截屏视频?
有有这样的程序recordmydesktop,byzanz&CO上问的Ubuntu所讨论的,旨在为“用户友好”,但我的经验是越野车,效率低下,大多unscriptable和不适合小一次性这样的事情。
我只想选择一个区域并使用我能理解的控制台命令录制一个 GIF,而不是一些神秘的无法编写脚本的 GUI 怪物。
我怎样才能做到这一点?
我正在尝试将我的视频库转换为 HEVC 格式以获得空间。我对库中的所有视频文件运行了以下命令:
#!/bin/bash
for i in *.mp4;
do
#Output new files by prepending "X265" to the names
avconv -i "$i" -c:v libx265 -c:a copy X265_"$i"
done
Run Code Online (Sandbox Code Playgroud)
现在,大多数视频转换良好,质量与以前相同。但是,一些质量非常高的视频(例如,一部 5GB 的电影印刷品)会降低质量——视频都是像素化的。
我不知道在这种情况下该怎么做。我需要修改crf命令行中的参数吗?或者是其他东西?
问题是,我正在进行批量转换。所以,我需要一种方法,avconv可以为每个视频自动调整任何需要调整的参数。
我发现这crf是我需要调整的旋钮。默认的 CRF 是 28。为了更好的质量,我可以使用小于 28 的值。例如:
avconv -i input.mp4 -c:v libx265 -x265-params crf=23 -c:a copy output.mp4
Run Code Online (Sandbox Code Playgroud)
但是,问题是对于某些视频,CRF 值 28 就足够了,而对于某些视频,则需要较低的 CRF。这是我必须通过转换大视频的小部分来手动检查的东西。但是在批量转换中,我将如何手动检查每个视频?他们有什么办法avconv可以根据输入的视频智能调整CRF吗?
我发现--losslessx265中有一个选项:http : //x265.readthedocs.org/en/default/lossless.html。
但是,我不知道如何正确使用它。我尝试以下列方式使用它,但它产生了相反的结果(视频更加像素化):
avconv -i input.mp4 -c:v libx265 -x265-params lossless -c:a copy …Run Code Online (Sandbox Code Playgroud) 我用gtk-recordmydesktop截屏程序创建了 OGV 视频,试图在这里用 X 上的蛮力解决这个问题。我可以用 VLC 观看视频。
现在,任务是找到一些方法将 OGV 视频转换为 GIF 动画,以便我可以在 SE 上显示它们。我怎样才能做到这一点?
我有一个.ts文件列表:
out1.ts ... out749.ts out8159.ts out8818.ts
Run Code Online (Sandbox Code Playgroud)
如何获得所有这些文件的总持续时间(运行时间)?
我有两台电脑,我办公室的台式机(连接了网络摄像头)和网络上其他地方的笔记本电脑。
通常我会通过我的网络摄像头通过运行来查看我的办公室
ssh Office -Y "mplayer tv://device=/dev/video0"
Run Code Online (Sandbox Code Playgroud)
从我的笔记本电脑。我不喜欢 Xforwarding mplayer,所以为什么我不能通过/dev/video在我的笔记本电脑上运行它来隧道到我的电脑?
sudo mkfifo /dev/video1
ssh Office 'dd if=/dev/video' | sudo dd of=/dev/video1'
Run Code Online (Sandbox Code Playgroud)
然后观看网络摄像头(在我的笔记本电脑上)
mplayer tv://device=/dev/video1
Run Code Online (Sandbox Code Playgroud) 在 Windows 中,我可以打开“我的电脑”并单击“网络摄像头”图标以从我的网络摄像头获取提要。我还可以拍摄该提要的快照。
我可以在 Ubuntu 中做同样的事情吗?无需安装任何额外的应用程序,如Photo Booth。
video ×10
ffmpeg ×3
conversion ×2
adobe-flash ×1
avconv ×1
avidemux ×1
compression ×1
gif ×1
linux ×1
shell-script ×1
ssh ×1
terminal ×1
ubuntu ×1