问题标签 [mpeg2-ts]

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 投票
4 回答
6406 浏览

linux - linux下MPEG-TS分析和ETR 101 290监控软件

我目前正在与一家有线电视公司合作,我们希望在远程前端获得一个 ubuntu 盒子,我们所有的提要都通过 IP 多播传输。我们希望用这台机器做的事情(除了wireshark 多播)是能够动态分析流。我知道 DVBSnoop,但是当它在网络上飞行时,我无法收听多播上的流,另一个问题是我们想把它交给那些(让我们说)更喜欢 GUI 的用户。所以我想知道是否有任何东西(商业或 FLOSS)至少可以为我们提供类似TSReader的功能集。

说到ETR 101 290 监控我没见过linux下的东西,有谁知道有什么软件吗?即使它是可以在 wine 下运行的软件,我们也可以摆脱它

0 投票
1 回答
3888 浏览

android - 在 android 中为 MPEG 2 TS 创建解复用器

我有一个要求,我需要从 MPEG2 TS(HLS STREAM) 中提取 ID3 标签。MPEG2 在播放文件方面对 android 的支持有限。但我关心的是提取 ID3 标签(不需要播放文件)。因此我不关心编解码器(编码和解码)。

我探索了以下选项:

libstagefright 和 OpenMax:由 Google 从 Android 2.0 实现的播放引擎。它有一个MediaExtractor负责从底层文件系统或 http 流中检索轨道数据和相应的元数据。但是根据这篇向Android添加视频编解码器的帖子,我需要构建自己的固件或自己的​​媒体播放器。我希望我不必走那条路。更多关于 stagefright 和 openMax 的信息可以在这里找到:

Stagefright 播放器概述

Android 的 Stagefright 媒体播放器架构

自定义包装编解码器集成到 Android

如何将解码器集成到多媒体框架

编译和使用 FFMPEG:一个完整​​的跨平台解决方案,用于录制、转换和流式传输音频和视频。我们可以使用这里提到的这个库解复用 ts 文件:

FFmpeg - 从传输流文件 (.ts) 中提取视频和音频

但我不确定是否能够从 HLS 流中提取 ID3 标签。libavformat可能能够做到这一点,但我仍然需要想出一种机制来将读取的元数据发送给我的应用程序。

为 android 编译 vlc:我已经 为 android 编译了 vlc,并在 demux 组件的传输模块中进行了一些修改以提取标签,但它无法播放我提供给它的所有流。

在浏览了这些选项之后,我仍然在解决如何实现这一点。我不想创建媒体播放器,因为我不会播放文件,也不想构建自己的固件。使用 ffmpeg 似乎是最可行的选择,但我想在不使用任何第三方或开源库的情况下尝试这个。我的问题是:

是否有可能从头开始创建一个可以在 android 上运行的解复用器?

如果可能的话,该怎么做呢?

我错过了什么选项?

我是新来的。任何帮助将不胜感激..谢谢

0 投票
0 回答
606 浏览

android - android MPEG2TS Writer 的问题

您好我正在尝试使用 mediarecorder api 并生成包含 h264 视频和 aac 音频的 mpeg2ts 输出。

1)当我单独录制视频时,生成的输出 .ts 文件可以正常工作,没有任何延迟。2)当我录制音频和视频时,应用程序崩溃。所以我在网上做了一些搜索,发现这是在 AOSP 框架中找到的 MPEG2TS writer.cpp 中的一个错误,基于此链接,<< code.google.com/p/android/issues/detail?id=37714 > > 我应用了建议的补丁并尝试了相同的方法。我能够对音频和视频进行编码,但生成的输出文件有问题。

3)作者工作不正确。有滞后。首先播放视频帧,然后在视频冻结时播放音频,然后是。

4) 编写器代码可以在这里找到 -> << androidxref.com/4.2.2_r1/xref/frameworks/av/media/libstagefright/MPEG2TSWriter.cpp >>

我添加的补丁可以在这里找到 -> << code.google.com/p/android/issues/attachmentText?id=37714&aid=377140007000&name=patch&token=E7rjXqE55TIp50S7sI04mxbsRCA%3A1384836153502 >>

5)有人请告诉我作者的问题是什么,我应该如何在代码中修复它,并请提供一些固定的代码片段。

我的安卓源代码是:

6)一旦我让 ts writer 工作,我需要通过 RTP 发送 ts 数据包以进行实时流传输,因此请帮助解决 ts writer 问题。

0 投票
1 回答
1590 浏览

audio - mpeg2-ts aac PTS

我有一个 IP 摄像机,它发送 8000hz 采样率配置的音频和 H264 视频。我制作了一个从这个 IP 摄像机生成 TS 文件的程序,它在 VLC、Android 媒体播放器(除了 iPhone、Mac OSX Safari 之外)上运行良好。(该程序适用于我制作的 HLS 服务器。)

在 Iphone、Safari 中播放视频很好,但音频不是。(我能听到声音,但播放不流畅)

我了解 TS 数据包中的音频 PTS 应该是基于 MPEG2 Sytem PCR 时钟的(90000hz)。IP 摄像机发送的时间戳值基于采样率(8000hz),因此当我在 TS 文件中写入音频的 PTS 时,我将 90000/8000 乘以时间戳以使 PTS 成为 MPEG2 PCR 时钟。

将 90000/8000 乘以音频 PTS 的方法是否错误?任何帮助将不胜感激。

0 投票
1 回答
1017 浏览

video - 如何从 TS 视频中裁剪最后 N 秒

有没有办法从视频中裁剪最后 N 秒?在这种情况下,格式是“MPEG-TS”。

使用 FFMPEG,我知道有一个开始时间和持续时间的选项,但在这个用例中这些都不可用。视频可以有任何可能的长度,因此持续时间不能是固定值。

此外,该解决方案必须在 Windows 命令行中运行并且可以自动化。

0 投票
2 回答
611 浏览

actionscript-3 - 降低 OSMF 流上的 FPS - MPEG-2 标头问题

我一直在寻找,找不到解决方案。我有一个在 OSMF 上播放的 25 FPS 视频,但 OSMF 坚持以 29-31 FPS 播放。这会导致视频播放速度比实时快约 15%。如果您在 VLC 中打开相同的视频并并排播放,结果会非常明显。

当我尝试进行直播时,问题就出现了。它会吃掉缓冲区并赶上实时,然后流崩溃,因为没有新的视频在等待。

我尝试跟踪代码以找出帧实际输出到屏幕的位置,但我在 SWC 文件中遇到了死胡同。我也尝试过在线搜索,但我找不到任何关于限制 FPS 的信息——每个人都只是对增加它感兴趣。

我宁愿以 15 FPS 的速度播放并每秒丢掉 10 帧,也不愿赶上实时并悲惨地崩溃。

编辑 -在花了整个周末盯着这个问题之后,我取得了一些令人难以置信的进展。首先,在 OSMF 中限制 FPS 的唯一方法是发送自定义 FLV 标头,并适当设置时间戳(1000 / FPS每帧之间的差异)

意识到这一点,我可以通过基于内部计数器手动设置时间戳来临时解决这个问题。每次处理一帧集timestamp = last_timestamp + 40;。问题是我不知道视频是否总是 25 FPS。有一天我可能会有 30 FPS 甚至 60 FPS 的视频流。为了使它更健壮,我决定解码 MPEG-2 标头(读取 PTS 值)并将其转换为 FLV 标头。

现在问题来了……这个视频文件(理论上是 25 FPS)在 QuickTime 中可以完美播放。结果,我知道标头很好,因为背后有数十亿美元的昂贵软件正确计算了帧速率。但是当我从标题中读取 PTS(根据这个 SO 帖子)并除以 90(将 90Khz 时钟转换为毫秒时间戳)时,每个时间戳相隔 33 或 34 毫秒 - 我得到的 29~31 FPS。

那么,当我知道视频是 25 FPS(相隔 40 毫秒)时,为什么 PTS 会给我相隔 33-34 毫秒的时间戳?更重要的是,QuickTime 是如何读取 MPEG-2 标头以便一切正常播放的?

0 投票
2 回答
5340 浏览

java - 如何在 Java 中通过 UDP 从 FFMpeg 接收 Mpeg-ts 流

我有一个来自 FFMpeg 的实时视频流,我很难使用我自己的自定义 Java 应用程序查看该流。在有人告诉我使用 VLC 或类似的东西之前,我确实想使用我自己的应用程序。我试图读取的流是通过 UDP 流式传输的 H.264 编码的 Mpeg-ts 流。我确实知道如何解码 H.264 帧,但我只是想知道如何接收 Mpeg-ts 流。

0 投票
1 回答
881 浏览

java - 用于从 mpeg-ts 文件中剪切片段的 JAVA API

我搜索了一个可以剪切 mpeg-ts 文件片段的库。现在我为此目的使用 ffmpeg,但我想离开它。

现在,我看到了 jcodec 和 mp4parser 库,但找不到需要的 API。

0 投票
1 回答
6308 浏览

ffmpeg - FFMpeg 的分流器

我正在使用 FFMpeg 将 WAV 文件分段为 mp3,以便在 HTTP 实时流中使用。我正在使用这个命令:

ffmpeg -i input.wav -c:a libmp3lame -b:a 128k -map 0:0 -f 段 -segment_time 10 -segment_list outputlist.m3u8 -segment_format mp3 'output%03d.mp3'

流正在工作,但是我在每个 mp3 片段之间都有小“间隙”。为什么是这样?

0 投票
1 回答
702 浏览

youtube - 是否有任何视频门户支持 mpeg2-ts 容器格式

有没有支持mpeg2-ts格式的视频门户(如youtube/youku/hulu)等?只是想知道任何内容提供商是否仍在使用 TS 格式。我知道这种格式用于 DVD 等媒体存档……但想知道是否有任何内容提供商使用这种格式在 Internet 上发送视频流以进行直播或 VoD。