问题标签 [libx264]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2420 浏览

android - 如何为 android 构建包含 x264 库的 ffmpeg?

ffmpeg 和 android 上有很多问题和答案。但是我没有得到直接解决使用 x264 库构建 ffmpeg 的问题。

其实我想用android中的一些静止图像制作一部电影。

仍然没有任何解决方案来解决这个问题。一些论坛告诉它可以使用 ffmpeg 来完成。如果我在从“http://bambuser.com/opensource”下载后构建 ffmpeg,则可以很好地解码视频文件。但是它在尝试将静止图像编码成电影时没有得到任何编解码器。

这就是为什么我尝试使用 x264 作为 ffmpeg 的编码库。当我尝试使用 ffmpeg 构建它时,它返回错误。

您能否提供任何详细的分步指南以在 windows 或 mac 中为 android 构建带有 x264 库的 ffmpeg?

如果有人知道任何其他可用于从 android 中的静止图像制作电影的方法,请告诉我方法。您的帮助将不胜感激。

预先感谢您的友好回复。

0 投票
1 回答
97 浏览

ffmpeg - x264_coeff_last64_sse2

x264 库一如既往地在 Windows 上崩溃。现在,我正在尝试修复它,但我不明白一件事。在代码中我们只能看到函数签名:

但是,*.h、*.c 或 *.asm 源中没有实现。这怎么可能???

(该函数被调用并且它崩溃了,所以它必须被链接进去)

0 投票
1 回答
2496 浏览

ffmpeg - 如何解决在为 android 构建 ffmpeg-with-libx264-enabled 时找不到 libx264?

我正在尝试构建从 git 下载的 android-ffmpeg-x264。链接https://github.com/halfninja/android-ffmpeg-x264

运行 ./config_make_everything.sh 后,我收到以下错误

错误:找不到 libx264

如果您认为 configure 出错了,请确保您使用的是 Git 的最新版本。如果最新版本失败,请将问题报告给 ffmpeg-user@ffmpeg.org 邮件列表或 irc.freenode.net 上的 IRC #ffmpeg。包括由 configure 生成的日志文件“config.log”,因为这将有助于解决问题。

config.log 包含

1.我正在使用 fedora 构建 ffmpeg 和 x264 2.NDK r7

任何成功构建代码的解决方案?

0 投票
1 回答
2730 浏览

video - 将 MTS 转换为 YouTube 的 MPG 的 FFmpeg 设置

我想讨论 FFmpeg 转换具有以下配置文件的 MTS 视频文件以上传到 YouTube 的最佳参数。YouTube 公布了他们建议的分辨率和比特率设置

由于YouTube 对视频有长度限制,我还想将原始文件切成小块。

这是我当前转换视频的配置。我正在运行 Ubuntu 10.10。使用 FFmpeg 版本 git-2011-12-31-81980bf。

我也想重新编码视频,因为我不想上传原始录音的大文件。

0 投票
1 回答
8456 浏览

windows - ffmpeg libx264 AVCodecContext 设置

我正在使用最近的 Windows(2011 年 1 月)ffmpeg 构建并尝试在 H264 中录制视频。使用以下设置在 MPEG4 中录制良好:

只需将 CODEC Id 更改为 H264 就会导致 avcodec_open() 失败 (-1)。我找到了可能的设置列表How to encoding h.264 with libavcodec/x264? . 我试过这些,没有设置 pix_fmt,avcodec_open() 仍然失败,但如果我另外设置 c->pix_fmt = PIX_FMT_YUV420P; 然后我得到一个除以零的异常。

然后我在这里遇到了一些帖子,说我不应该设置任何内容(除了 code_id、codec_type、width、height 可能还有 bit_rate 和 pix_fmt),因为库现在自己选择了最佳设置。我尝试了各种组合,仍然 avcode_open() 失败。

有人对当前的操作或某些设置有什么建议吗?

谢谢。

这是一组 H264 设置,它们给出了我描述的问题:

}

0 投票
2 回答
1258 浏览

c++ - 使用与 MinGW 交叉编译的 libx264 时发生奇怪且不可预测的崩溃

我正在使用 Windows 上的 Visual Studio 2010 开发 C++ 项目。我正在动态链接 x264,我按照指南使用 MinGW 将其构建为共享库

http://www.ayobamiadewole.com/Blog/Others/x264compilation.aspx

奇怪的是,我的 x264 代码有时运行良好。然后,当我更改某行代码(甚至更改文件中的注释!)并重新编译时,所有内容都崩溃了

随着消息

我根本没有做任何时髦的事情,所以可能不是我的代码有问题,但我想链接有问题,或者我编译 x264 的方式有问题。

完整的初始化代码:

编辑:事实证明它总是在发布模式下工作,当使用超快而不是超快时,它也可以在调试模式下 100% 工作。莫非是超快模式做了一些调试器不喜欢的疯狂优化?

0 投票
1 回答
693 浏览

c++ - VLC libx264 流复用为 FLV

我对 libx264 的流输出有疑问。我的场景是,我从网络摄像头捕获视频,使用 x264 编码,然后将数据流式传输到闪存,作为 FLV 复用。对于复用,我使用了 libx264 包中包含的 output/flv_bitstream.h。我对 muxer 所做的唯一修改是使用 fwrite() 代替 fwrite() im usig send() 来通过套接字传输数据......编码库工作正常。如果我保存输出(甚至混合),vlc 播放器就可以播放它。但是,当它通过套接字进行数据传输时,vlc 和 flash 不合作。奇怪的是,如果我通过套接字向 vlc 播放器发送数据,它会等到传输结束,然后从缓冲区播放视频。但我需要的是播放直播。

我还尝试读取flv文件并将其逐个标签发送到flash标签的vlc,它工作正常。

有什么建议么?

0 投票
1 回答
326 浏览

ffmpeg - 仅使用 libx264 在服务器上进行编码并在客户端使用 libffmpeg 进行解码,仅流式传输视频所需的最少元数据量是多少?

我想将视频(无音频)从服务器流式传输到客户端。我将使用 libx264 对视频进行编码并使用 ffmpeg 对其进行解码。我计划使用固定设置(至少客户端和服务器都会提前知道它们)。我想知道是否可以避免以容器格式(如 mp4 或 mkv)包装压缩视频。

现在我可以使用 x264_encoder_encode 对我的帧进行编码。我得到一个压缩的帧,我可以为每一帧都这样做。我需要向客户端发送哪些额外信息(如果有的话),以便 ffmpeg 可以解码压缩帧,更重要的是如何使用 libx264 获取它。我假设我可能需要生成 NAL 信息(x264_nal_encode?)。了解播放视频所需的最低要求以及如何将各个部分组合在一起将非常有帮助。

0 投票
0 回答
3760 浏览

flash - x264 更快的解码速度

我正在使用 x264 为 Flash 视频流媒体网站编码视频。我使用-tune fastdecode,它关闭了 cabac 和 deblock,我听说这是大多数 cpu 解码的功能。但是,我仍然收到关于视频播放不流畅和 CPU 使用率高的报告。

这是一个典型的编码命令:

我的用户使用 Flash 在所有桌面操作系统和各种硬件上观看视频。

哪些编码选项是 CPU 最密集的,在大多数机器上“合理”播放的推荐选项是什么?

0 投票
1 回答
504 浏览

linux - 仅编码视频 FLV

我正在尝试生成仅视频的 FLV 文件,我正在使用:

  1. libx264 + ffmpeg
  2. 30 fps(固定)
  3. 使用 VLC 2.0.1 和 flowplayer 完成播放

播放 FLV 时,帧速率似乎约为每秒 1 帧,以下是我 cfg ffmpeg 的方式:

生成的文件似乎没问题,但播放帧率除外
考虑到:

  1. pOutVideoStream->avg_frame_rate = (AVRational){ 30, 1 };
  2. pOutVideoStream->time_base = (AVRational){ 1, 30000 };
  3. pOutVideoStream->codec->time_base= (AVRational){ 1, 30000 };
  4. 对于每一帧,我将 dts/pts 增加 1000

我在这里做错了什么?为什么文件播放不连贯(~1 fps)?

任何帮助将不胜感激。

索芬的纳达夫