H264 中的 Elementary Stream 是什么意思

2024-01-09

我读了 Elementary Stream 的内容维基百科 http://en.wikipedia.org/wiki/Elementary_stream。我正在使用的工具“Live555”需要“H.264 视频基本流文件”。因此,当从视频应用程序导出视频时,我是否必须选择特定的首选项来生成“Elementery Stream”?


如果您使用 ffmpeg,您可以使用类似于以下内容的内容:

ffmpeg -f video4linux2 -s 320x240 -i /dev/video0 -vcodec libx264 -f h264 test.264   

您必须根据要从中导出视频的文件类型调整命令行。 这会生成一个包含 H.264 访问单元的文件,其中每个访问单元由一个或多个 NAL 单元组成,每个 NAL 单元都以起始代码(0001 或 001)为前缀。您可以使用十六进制编辑器打开该文件来查看它。

您还可以使用以下命令创建 H.264 基本流文件 (.264)H.264参考编码器 http://iphome.hhi.de/suehring/tml/来自原始 YUV 输入文件。

如果将生成的 .264 文件复制到 live555 testOnDemandRTSPServer 目录中,则可以测试通过 RTSP/RTP 传输文件。

您能否提供一些参考资料来阅读有关 NAL / H.264 基本流的更多信息。如何快速检查流是否是基本流?

一般来说,容器中的任何内容(avi 或 mp4)都不是基本流。用于基本流的典型扩展名是“.264”。仔细检查文件是否为基本流的最快方法是在十六进制编辑器中打开文件并在文件开头查找起始代码 (00000001)。请注意,整个文件中应该有 3 (000001) 和 4 (00000001) 字节起始代码(在每个 NAL 单元之前)

为什么live555不播放非基本的h264流?

这纯粹是因为 live555 没有实现所需的解复用器(例如 avi 或 mp4)。 AFAIK live555 确实支持从 matroska 容器中解复用 H.264。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

H264 中的 Elementary Stream 是什么意思 的相关文章

  • FFMPEG:使用具有复杂滤波器的视频滤波器

    我正在使用fluent ffmpeg用于对视频文件执行批量操作的 Node js 库 视频过滤器裁剪 16 9 输入 添加填充并将字幕刻录到填充中 在下一步中 我想使用复杂的滤镜来覆盖图像作为水印 ff input video mp4 ff
  • 两个图像之间的视频变形,FFMPEG/Minterpolate

    我正在尝试在 Ubuntu Linux 上的 bash 脚本中使用两个帧 png 图像 和 ffmpeg 的 minterpolate 过滤器制作一个快速且简单的变形视频 目的是稍后使用变形作为不同视频编辑器中相似视频之间的过渡 它适用于
  • 在 MediaFoundation 硬件 MFT 中设置更大的 GOP 大小

    我正在尝试直播通过桌面复制 API 捕获的桌面 H264 编码工作正常 除了桌面复制 API 仅在屏幕发生变化时才传送帧 但视频编码器希望以恒定的帧速率传送帧 因此 当没有触发屏幕更改时 我被迫保存之前的样本 以恒定的速率向编码器提供数据
  • 使用 xuggle 将 mp3 转换为 wav 出现异常

    我正在尝试将 mp3 转换为 wav 代码在这里 String mp3 F work pic2talk38512 mp3 String wav F work pic2talk38512 wav TranscodeAudioAndVideo
  • FFMPEG波形透明,背景纯色

    我正在尝试使用 ffmpeg 生成波形 我希望背景为纯色 实际波形为透明 以下部分实现了我想要的 除了有黑色背景 我希望能够将其更改为任何颜色 但波形是透明的 我怎样才能用 ffmepg 实现这个目标 ffmpeg i input mp3
  • 将 ffmpeg 编译为独立二进制文件

    我正在尝试编译ffmpeg作为独立的二进制文件 因为我想在 AWS lambda 中使用它 我可以让事情在我正在编译的服务器上正常工作 但是如果我复制二进制文件并从另一台服务器运行它 我会得到 ffmpeg error while load
  • FFmpeg av_read_frame 无法正确读取帧?

    好吧 我已经下载了一些 yuv 格式的原始 UHD 序列 并在 mp4 容器中使用 ffmpeg 对其进行编码 h264 4 4 4 100 质量 25fps 当我使用 ffprobe 找出编码了多少帧时 我得到 600 所以这是 24 秒
  • 如何启用 FFMPEG 日志记录?

    我想调试 ffmpeg 我添加以下代码来打印日志 av log s AV LOG PANIC fmt or printf msg 但这行不通 没有任何调试信息 然后我启用调试构建选项 export COMMON FF CFG FLAGS C
  • FFMPEG:将 YUV 数据转储到 AVFrame 结构中

    我正在尝试转储YUV420数据进入AVFrameFFMPEG 的结构 从下面的链接 http ffmpeg org doxygen trunk structAVFrame html http ffmpeg org doxygen trunk
  • FFMPEG - 具有持续时间过滤器问题的连接解复用器

    我正在尝试使用图像生成视频ffmpeg concat 解复用器 我正在创建一个带有图像文件路径的文本文件 由于图像的持续时间可能不同 我正在使用duration过滤器指定每个图像的持续时间 示例文本文件如下 文件1 jpg 持续时间3 文件
  • 流媒体性能 - Canvas 与

    我正在开发一个应用程序 需要通过 webSocket 连接以每秒至少 30 帧的速度持续传输图像 我遇到了一些性能问题 并希望尽我所能进行优化 我想知道使用不断更新的图像之间的性能差异是什么 就像这样 img src someDynamic
  • 如何在不指定像素格式的情况下从 AVFrame.data[] 和 AVFrame.linesize[] 获取原始帧数据?

    我的总体想法是frame data 根据视频的像素格式 RGB 或 YUV 进行解释 但是有没有通用的方法可以从帧中获取所有像素数据 我只想计算帧数据的哈希值 而不解释它来显示图像 根据 AVFrame h uint8 t AVFrame
  • ffmpeg 将 m4s 转换为 mp4

    我正在研究 DASH 试图为最终用户优化 QoE 我有一个视频 并使用 ffmpeg 将其编码为不同的比特率 一切都很好 并且可以使用 dash 播放该视频 我想要的是将用户收到的片段合并为一个 m4 并将该 m4 转换为 mp4 我在 f
  • 使用 ffmpeg 库以可变帧率模式将一系列图像(cv::Mat)保存到 mp4 文件,如何设置 pts?

    在C 代码中 我可以正确保存一系列图像 opencv的cv Mat 到 mp4 文件 使用ffmpeg图书馆 请参阅此处的问题和答案 当我尝试将多个 RGB 数据保存到 output mp4 文件时 avformat write heade
  • as3 - 如何停止视频并分离 NetStream

    我有来自服务器的视频流 稍后我想并排添加另一个视频 那就好 我做到了 现在当我想删除视频时我的问题来了 我设法将其从显示中删除 但我可以听到视频仍在后台播放 那么我怎样才能停止播放该视频呢 这是我设置视频的代码 ns new NetStre
  • 如何将H264封装到mp4容器中?

    我有一个程序生成一堆原始 H264 帧 并希望将其放入 mp4 容器中进行流式传输 有人知道该怎么做吗 我想我会使用 ffmpeg 然而 这需要商业使用 而且 ffmpeg 似乎只能通过它的 x264 库来做到这一点 它使用 GPL 许可证
  • 用PHP+FFMPEG生成随机缩略图

    我正在尝试使用 FFMPEG 和 FFMPEG PHP 扩展从电影中的随机点生成缩略图 我的脚本工作正常 但是需要 20 分钟才能生成 5 10 个缩略图 该脚本通过生成随机数来工作 这些随机数稍后用作帧号 生成的所有数字均在电影帧数之内
  • 输入文件列表以与 Node.js 模块 Fluent-ffmpeg 连接

    版本信息 流利的 ffmpeg 版本 2 1 2 ffmpeg版本 3 4 2 操作系统 Windows 10 要重现的代码 ffmpeg C path to list txt mergeToFile C path to out mp4 C
  • 用于 Windows Phone 开发的 FFmpeg

    我在 ASP Net 基于 Web 的应用程序中使用了 FFmpeg 现在我想用它来进行Windows Phone开发 可以使用吗 如果是 那么如何 Windows Phone 7 根本不支持 FFmpeg 而且据我在网上找到的信息 Win
  • 通过 WiFi 将视频从一部 Android 手机直播到另一部手机

    我已经在互联网上搜索了好几天关于如何通过 WiFi 连接实现从 Android 手机到另一部 Android 手机的视频流功能 但我似乎找不到任何有用的东西 我查看了 Android 开发人员的示例代码 stackoverflow goog

随机推荐

  • 我可以用作 webpack 配置的 es 模块吗?

    我使用的是节点 13 4 0 带有 es 模块 通过 mjs 扩展名 使用 webpack 配置文件作为 es 模块会崩溃 Error ERR REQUIRE ESM Must use import to load ES Module pa
  • Mockito 和 Java Spring - 测试中的存储库

    我是mockito Java Spring的新手 我尝试进行测试 我有一个管理控制器 其中包含以下方法 RequestMapping value admin users method RequestMethod GET public Res
  • 如何在 JavaScript 中过滤和映射对象数组? [复制]

    这个问题在这里已经有答案了 我有一系列对象 我想从中有条件地创建另一个对象数组 Eg var devs name A age 26 tech JavaScript React addr country India city Pune nam
  • 无法在android中的ListView的EditText中填写详细信息

    我创建了一个带有自定义列表视图的应用程序 我的列表视图包含一个编辑文本字段 但我无法用值填充编辑文本 我是 Android 新手 所以很难找到错误 这是我的代码 public class MainActivity extends Activ
  • node_modules 包如何读取项目根目录中的配置文件?

    我正在创建一个 npm 包 它需要能够从项目根目录读取配置文件 我不知道该怎么做 例如 Next js 能够读取 pages and next config js从项目根目录 笑话能够阅读 jest config js从项目根目录 ESLi
  • Xcode 7 beta 5、Swift 2:UITableViewCell 的子视图在运行时不会添加到 contentView

    使用 Xcode 7 beta 5 和 Swift 2 时会出现以下现象 当使用在故事板中创建的自定义 UICollectionViewCell 时 单元格的子视图不会添加到单元格的子视图中 contentView 因此 该单元格在运行时保
  • 在Java中反转数组[重复]

    这个问题在这里已经有答案了 如果我有一个像这样的数组 1 4 9 16 9 7 4 9 11 反转数组使其看起来像这样的最佳方法是什么 11 9 4 7 9 16 9 4 1 我有下面的代码 但我觉得有点乏味 public int reve
  • RMongo dbGetQueryForKeys 返回 NA

    我正在使用dbGetQueryForKeys函数 我在这里了解到 https stackoverflow com questions 14486780 rmongo dbgetqueryforkeys what is the structu
  • 如何将 BGL 有向图用作无向图(用于布局算法)?

    我正在使用 Boost Graph 制作有向图 实际上是双向图 我想使用现有的布局算法 Kamada Kawai 或 Fruchterman Reingold 但它们只接受无向图作为参数 使用这些布局算法的最简单方法是什么 更一般地说 引诱
  • 当我停止 putty 时,如何在 ubuntu 14.04 上运行 jar 文件而不停止?

    我使用的是ubuntu 14 04 我正在运行一个 jar 文件 该文件应该在几天内收集大量数据 我正在运行 jar 文件 认为这个命令运行良好 java jar xxx jar 但是 当我关闭腻子时 该过程停止了 有没有办法让 jar 文
  • 在 Scala 中将 DataFrame 转换为 RDD[Map]

    我想转换创建的数组 如下所示 case class Student name String age Int val dataFrame DataFrame sql createDataFrame sql sparkContext paral
  • PostgreSQL 的 NGINX TLS 终止

    我一直在尝试使用 NGINX 作为 PostgreSQL 数据库的 TLS 终结器 但没有成功 当我尝试连接到数据库时 出现以下错误 服务器意外关闭连接 这可能意味着服务器在处理请求之前或处理过程中异常终止 当我删除ssl选项中listen
  • 无法让 mongoose-unique-validator 工作

    这不可能那么困难 但我总是收到默认的 mongoose 11000 错误 这是我的代码的简化版本 model import mongoose from mongoose import uniqueValidator from mongoos
  • 将 BlackBerry 应用程序设计得像 iPhone

    我正在将应用程序从 iPhone 移植到 BlackBerry BlackBerry 应用程序往往看起来不像 iPhone 那样精美 但自然地 我希望尽可能保持精美 而不破坏任何重要的 UI 约定 有没有任何 UI 组件可以帮助解决这个问题
  • 带图像的自定义标题

    我正在通过禁用标准标题并自己管理所有内容来为活动创建自定义标题 我想知道是否可以根据我的需要替换 主题标准标题 我可以通过更改 windowXYZStyle 项目来通过主题自定义大小 背景图像和文本 我唯一找不到的东西 如何添加图像而不是文
  • 设置 Qt QPushButton 弹出菜单的位置(向右)

    我正在为 Qt 按钮小部件编写弹出菜单 每当单击按钮时 就会弹出一个菜单 在按钮下方 默认情况下 弹出菜单位于下方左侧 有没有办法让弹出菜单在按钮下方的右侧弹出 没有设置位置的功能 所以我想知道是否有一些复杂的方法可以做到这一点 这是一些代
  • 在 Flask 的 url_for 函数中禁用字符转义

    Flask 有吗url for方法有一个选项可以禁用自动转义吗 所以如果我有一个名为getUser像这样的路线 user
  • pandas read_sql 在列名中删除点

    这是一个错误还是我做错了什么 我创建一个 df 将其放入 sql 表中 df 和表有一列 其中有一个点 现在 当我从 sql 表中读取 df 时 列名不一样 我编写了这段小代码 以便人们可以测试它 import sqlalchemy imp
  • 如何在不配置的情况下更改 npm 前缀?

    我不小心将 npm 前缀更改为不存在的地方 是否有一个我可以访问的配置文件可以让我将其更改回来 我能想到的唯一选择是 完全卸载节点 更改前缀后 npm 没有响应 https stackoverflow com questions 39250
  • H264 中的 Elementary Stream 是什么意思

    我读了 Elementary Stream 的内容维基百科 http en wikipedia org wiki Elementary stream 我正在使用的工具 Live555 需要 H 264 视频基本流文件 因此 当从视频应用程序