标签: video-codecs

我怎么知道任何h264文件的持续时间?

我有一个文件,其中只有h264帧以NAL单位的形式存在.所以现在有什么方法可以计算该文件的持续时间吗?

我不知道文件中有多少帧.我只有文件大小.

PS:我想做的就是使用C语言和Linux平台.

c duration ffmpeg h.264 video-codecs

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

有没有更安全的方法将FFMpeg包含在商业应用程序中?

https://www.ffmpeg.org/legal.html

如果我们可以在商业项目中使用库,上面的页面没有任何明确的说明.

如果有算法打破专利,我不应该支持以避免风险?

简而言之,添加ffmpeg为iOS和Android创建多媒体应用程序更安全(以后可能更适合桌面).

video ffmpeg video-processing video-streaming video-codecs

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

如何用FFmpeg编码灰度视频流?

我有一个来自Firewire天文相机的灰度视频流,我想使用FFmpeg来压缩视频流,但它不接受MPEG1VIDEO编解码器的单字节像素格式.如何使用FFmpeg API将灰度视频帧转换为FFmpeg接受的帧格式?

compression mpeg ffmpeg video-codecs

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

升级现有的Level-4.1 h.264解决方案以支持4K(Level-5.2)

我目前正在研究支持H.264编码器上的4K(3840x2160).当我研究H.264的规格时,它说在Level-5.2(XAVC)中支持4K分辨率.为了检查实现,我使用FFMPEG中的x264为三个不同级别(Level-4,4.1和5.2)编码了我的全HD(1920x1080)比特流.

这就是我注意到的 - 所有三个编码比特流,针对不同级别进行编码,逐个像素地匹配. - 我想知道编码是否针对不同级别(Level-4,4.1和5.2)完成,比特流怎么没有变化.

  • 我有一个高422 Level-4.1的解决方案,转换,Quantazition,CAVLC等核心模块是否有任何变化,以支持4K(3840 x 2160)/ XAVC.

  • 或者所有Level-5.2的处理与Level-4.1相同.

如果有人可以参考任何解释H.264/AVC和XAVC处理差异的文件,那将非常有帮助.

ffmpeg h.264 video-codecs x264

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

适用于所有主要浏览器的视频编解码器

我在用

视频/mp4

格式并在'video js' 中使用,这在 chrome 中运行良好,但在 Firefox 中存在问题。在控制台中出现以下错误:

不支持“video/mp4”的指定“type”属性。加载媒体资源 # 失败。

是否有所有主要浏览器(如 Chrome、Firefix、IE 和 Safari)都支持的单一视频编解码器。

提前致谢。

html video cross-browser video-codecs video.js

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

在 Android 中使用 webrtc 保存视频文件时遇到问题

我正在开发基于 webrtc 的视频聊天应用程序,目前视频通话正在运行,但我想使用 VideoFileRenderer 从远程视频流录制视频,该接口有很多实现,例如:https://chromium.googlesource .com/external/webrtc/+/master/sdk/android/api/org/webrtc/VideoFileRenderer.java 这是我正在使用的实现。它可以毫无问题地将视频保存到文件中,但在使用编解码器后我只能在桌面上播放它,因为文件是 .y4m 而不是 .mp4,当我尝试使用 VideoView 播放它时,它说它无法播放视频,即使我尝试使用 android 自带的 videoPlayer 播放视频也无法播放,我只能使用 MXPlayer、VLC 或任何其他在桌面上具有编解码器的应用程序播放它。

简化问题: How can I play video.y4m on native android VideoView?

我会更简化它,我假设我不了解录制文件的格式,这是我用来录制文件的代码:

开始录制时:

remoteVideoFileRenderer = new VideoFileRenderer(
                fileToRecordTo.getAbsolutePath(),
                640,
                480,
                rootEglBase.getEglBaseContext());
        remoteVideoTrack.addSink(remoteVideoFileRenderer);
Run Code Online (Sandbox Code Playgroud)

录制完成时:

remoteVideoFileRenderer.release();
Run Code Online (Sandbox Code Playgroud)

现在问题又来了:我有一个“fileToRecordTo”,这个视频文件可以在 GOM(windows)、VLC(windows、mac 和 Android)、MXPlayer(Android) 上播放,但我不能使用附带的播放器播放它嵌入 Android(如果工作正常,我会在我的应用程序中使用此播放器)或 Android 原生 videoView。

任何帮助。

android video-codecs webrtc

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

如何访问HTML5视频解码功能?

HTML5具有<video/>从服务器下载视频,解码和渲染视频的元素.通常,如果不是总是他们使用硬件加速解码(如果可用).

是否可以访问解码功能?原因是我正在使用自定义流媒体协议,因此在客户端我编码了我需要解码和渲染的视频流.

遗憾的是,视频解码器的纯JavaScript实现不适用,因为它们无法提供足够的性能.我只对HVEC或h.264编解码器感兴趣.

html5 video-codecs hardware-acceleration html5-video

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

如何识别H265码流中的I帧?

我正在开发一个 C++ 应用程序,其中我的应用程序从外部应用程序接收 H265 帧,并在需要时将其存储在磁盘上,但存储只需要从 I 帧开始,因为如果它从 P 帧开始,这些帧将毫无意义。那么如何从中识别出I帧呢?

我是视频编码和解码的新手,我知道以下几点:

  • 00 00 00 01是 NAL 单元的开始
  • SPS 以 67 开头
  • PPS 以 68 开头

video-encoding video-codecs h.265 hevc

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