标签: x264

为iOS 7编译x264

我在为iOS编译x264时遇到错误.

我有Xcode版本5.0(5A1413)和Apple LLVM版本5.0(clang-500.2.75)(基于LLVM 3.3svn).我正在编译x264-snapshot-20130925-2245.

配置:

CC=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang ./configure \
--host=arm-apple-darwin \
--sysroot=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.0.sdk \
--prefix=armv7 \
--extra-cflags='-arch armv7' \
--extra-ldflags="-L/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.0.sdk/usr/lib/system -arch armv7" \
--enable-pic \
--enable-static
Run Code Online (Sandbox Code Playgroud)

得到错误:

common/arm/cpu-a.S:29:7: error: unknown token in expression
.align
      ^
common/arm/cpu-a.S:139:5: error: instruction 'suble' can not set flags, but 's' suffix specified
    subles ip, ip, #1
    ^
Run Code Online (Sandbox Code Playgroud)

ffmpeg compiler-errors clang x264 ios

2
推荐指数
1
解决办法
2325
查看次数

如何在ffmpeg中检查libx264库的"输出位深度"?

根据x264编码指南,crf比例取决于x264是8位还是10位.据说x264 --help显示了Output bit depth.但在Windows ffmpeg -h full上没有说什么,Output bit depth并且crf缩放选项被描述为from -1 to FLT_MAX.如何检查我的ffmpeg是使用8位还是10位版本的libx264库?

mp4 ffmpeg video-encoding x264 libx264

2
推荐指数
1
解决办法
4596
查看次数

Windows:如何构建X264.lib而不是.dll

我下载了X264源代码并安装了mingw.

步骤1:

在MINGW bash中执行此操作:

./configure --disable-cli --enable-shared --enable-win32thread - -extra-ldflags = -Wl, - output-def = libx264.def

然后'制作'

第2步:

将libx264-142.dll重命名为libx264.dll并打开VS2012命令提示符并执行以下操作:

LIB /DEF:libx264.def

它给了我libx264.lib和对象libx264.exp

第3步:

将lib文件包含在使用X264 API的VS2012项目中.

问题:

当我启动项目时,我收到以下错误消息:

"程序无法启动,因为您的计算机缺少libx264.dll"

题:

当我链接静态库时,为什么要查找dll?

我该如何解决这个问题?我想构建一个静态X264库,我可以将其链接到我的项目中.

编辑:

我只需将dll放在与项目可执行文件相同的目录中.

但是 - 我的问题仍然存在:如何构建静态 x264库?所以我不需要dll?

c video encoding h.264 x264

2
推荐指数
1
解决办法
6238
查看次数

如何使用带有directshow的x264编码器

我无法弄清楚如何使用x264directshow.我安装了许多认为假装有x264编码器没有用我下载videoLAN x264二进制文件,当我运行它时,它显示如此快的控制台窗口,之后没有任何事情发生

这些是我拥有的编码器

在此输入图像描述

我正在使用Windows 8.1 x64

请帮忙解决这个问题,这只会让我发疯,嗯,我想使用,x264因为我安装的其他编码器,要么没有工作,要么编码如此大的尺寸.

video directshow directshow.net x264 libx264

2
推荐指数
1
解决办法
8784
查看次数

为iOS 5编译x264

我正在尝试将最新版本的libx264编译为iOS 5 arm.

在2010年中期,加布里埃尔的建筑脚本工作.

它不再了.

它说"找不到工作的C编译器".

任何人都可以给我直接答案吗?它是2012年,谷歌似乎没有人编译它.

ffmpeg x264

1
推荐指数
1
解决办法
4745
查看次数

是否可以在 x264 中强制使用 I_PCM 模式?

对于使用 x264 压缩的视频中的某些 I 帧,我需要在所有块中使用 I_PCM 模式。我知道这些帧将占用大量空间,但要求它们尽可能忠实于源,并使它们能够非常快速地编码/解码(I_PCM 应该超快且无损)。有没有办法强制 x264 以编程方式执行此操作。我正在使用 libx264 来执行此操作,但我还没有找到在给定帧内指定自定义宏块类型的方法。如果不支持,修改库来实现这一点会有多困难,我应该首先看哪里?

video video-encoding x264 libx264

1
推荐指数
1
解决办法
542
查看次数

如何使用 gstreamer 将网络摄像头视频保存到文件?

我一直在尝试让 emgu 将相同的网络摄像头视频保存到文件中

问题是opencv只支持avi,avi好像不太适合X264这样的格式。

我可以使用 Gstreamer 在 C 中为我做这件事吗?

如果我也可以选择文件格式和容器类型就好了。如果我能使用像薛定谔狄拉克这样的格式就好了。

我是 GStreamer 的新手,所以我不太确定我在这里是否走在正确的轨道上。

编辑

我已经设法使用捕获网络摄像头视频

gst-launch-0.10 ksvideosrc !自动视频接收器

现在如何将其转码为 H264 或 dirac 等格式?

编辑

gst-launch-0.10 ksvideosrc num-buffers=10 !解码器2!ffmpeg 色彩空间!x264enc!matroskamux !文件接收器位置=video.mkv

这似乎创建了一个文件,但 VLC 播放器无法读取它。

c opencv avi gstreamer x264

1
推荐指数
1
解决办法
2万
查看次数

如何在不丢失时间信息的情况下将H264/RTP流转储到文件中?

我编写了一个应用程序,通过TCP(没有数据包丢失)从硬件摄像头接收RTP数据包并将其H264数据包转储到文件中,这样我就可以使用MPlayer或VLC播放视频.这已经有效了,我几乎完成了这里描述的步骤.播放视频的命令是mplayer -fps 24 -demuxer h264es foobar.h264vlc foobar.h264.

问题出现在我播放视频的时候.摄像机频繁更改FPS,因为在写入H264文件时丢弃RTP信息,每帧的时间戳丢失.我的问题是:我需要做些什么来修复帧频?我应该创建空/空白P帧(如果可能的话)?如果是这样,我该怎么做?

任何使用Linux兼容工具或库(如ffmpeg,libx264,libavcodec)使用shell,C/C++或Python的解决方案都非常受欢迎.

PS:我几乎没有视频编码和RTP的经验.

ffmpeg rtp h.264 x264

1
推荐指数
1
解决办法
1702
查看次数

使用 FFMPEG 对视频进行音量调整和频道合并

我正在尝试将录制的 AVI(1 个视频流,2 个音频流 [第一个是立体声,第二个是单声道])视频文件转换为 H264/AAC。

我希望第二个音频流的音量为 60%,第一个为 100%。

我还想合并第一个和第二个音频流。

输出应为带有 AAC 音频的 H264。

我尝试使用的命令是:

"ffmpeg.exe" 
  -i "input.avi" 
  -filter_complex " 
    [0:a:0]aformat=channel_layouts=stereo,volume=1.0[a1]; 
    [0:a:1]aformat=channel_layouts=mono,volume=0.6[a2]; 
    [a1][a2]amerge,pan=stereo|c0<c0+c2|c1<c1+c2[out]
  " 
  -map 0:v 
  -map "[out]" 
  -c:v libx264 -preset slow -crf 26 
  -c:a aac -strict experimental -ab 128000 -ac 2 -ar 48000 
  "output.mp4"
Run Code Online (Sandbox Code Playgroud)

但我收到错误:[AVFilterGraph @ 0000000ceb630c00] 以下过滤器无法选择它们的格式: Parsed_amerge_4 考虑在它们的输入或输出附近插入 (a) 格式过滤器。配置复杂过滤器时出错。发生错误号 -5

我做错了什么,如何解决?

完整的控制台日志:

ffmpeg version N-76456-g6df2c94 Copyright (c) 2000-2015 the FFmpeg developers
  built with gcc 5.2.0 (GCC)
  configuration: --enable-gpl --enable-version3 --disable-w32threads --enable-avisynth --enable-bzlib --enable-fontconfig --enable-frei0r --enable-gnutls --enable-iconv …
Run Code Online (Sandbox Code Playgroud)

audio video ffmpeg aac x264

1
推荐指数
1
解决办法
2162
查看次数

如何在libVLC中启用硬件加速解码?

我正在接收多个x264 RTSP流,我正在使用libVLC解码它们,我想使用硬件加速来完成任务.

如果我在Windows上使用VLC播放器本身,我可以在简单首选项 - >输入/编解码器 - >硬件加速解码中选择"DirectX视频加速(DXVA)2.0",与禁用相比,我可以看到CPU利用率显着下降那个选择.

在C++代码中,我尝试将选项"--avcodec-hw = dxva2"添加到libvlc_new()的参数中,但没有运气,硬件加速似乎没有被使用(我想说解码比50%慢)在dxva2上的播放器上)

directx vlc x264 libvlc

1
推荐指数
1
解决办法
4069
查看次数

使用 ffmpeg 与 vidstab 和编码 2 遍的更好方法

我扫描旧的 8 毫米胶片,所以我有包含一组 jpeg 的文件夹

我使用 ffmpeg 将它们转换为电影(我选择 x264 2 pass 编码)

//On all folder that start by 1 I launch the pass1 for x264

for f in 1*/ ; do cd "$f"; ffmpeg -y -r 18 -i img%05d.jpg -c:v libx264 -s 1200x898 -b:v 3000k -pass 1 -an -f mp4 /dev/null; cd ..; done

//On all folder that start by 1 I launch the pass2 x264

for f in 1*/ ; do cd "$f"; ffmpeg -y -r 18 -i img%05d.jpg …
Run Code Online (Sandbox Code Playgroud)

encoding ffmpeg x264

1
推荐指数
1
解决办法
2385
查看次数

gstreamer muxing与x264enc

我正在尝试使用gstreamer将DVD转换为mkv文件.我使用的管道是:

gst-launch -evv multifilesrc location="VTS_01_%d.VOB" index=1 ! dvddemux name=demuxer \
 matroskamux name=mux ! filesink location=test.mkv \
 demuxer.current_video ! queue ! mpeg2dec ! x264enc ! mux. \
 demuxer.current_audio ! queue ! ffdec_ac3 ! lamemp3enc ! mux.

不幸的是,管道不会超出预卷.当我用例如ffenc_mpeg4替换x264enc时,一切正常..

gstreamer x264

0
推荐指数
1
解决办法
5585
查看次数

x264:忽略 bash 脚本中的空选项

我使用 x264 脚本进行一些视频编码。大多数选项都遵循模式

\n\n
x264 --option0 $value0 --option1 $value1 -o output.file input.file\n
Run Code Online (Sandbox Code Playgroud)\n\n

该脚本从文本文件中读取值。该文本文件包含键值,例如crf=18.3. 不幸的是,这不适用于 mb-tree,因为该选项没有 $value,它是默认设置的,可以通过以下命令关闭--no-mbtree

\n\n

如果mbtree=no-mbtree在文本文件中设置,则一切正常。但是,如果我选择在打开 mbtree 的情况下进行编码,则--$variable-for-mb-tree-or-no-mb-tree仍然存在,但未设置或为空,并且 x264 会引发错误。

\n\n

我如何告诉 bash/ x264 忽略未设置或空变量?我想避免 if\xe2\x80\xa6then\xe2\x80\xa6else 而是内联执行。

\n

variables bash x264

0
推荐指数
1
解决办法
1160
查看次数