解码H.264单个信号单元
Decoding H.264 individual nal units
我目前正在通过网络发送单个NAL单元。这些NAL单元是由x264生成的。现在有可能将这些NAL单元单独馈送到avcodec_decode_video2吗?
或者我必须将所有的单位连接起来,直到它们表示相同的帧?如果是这样,那该怎么做呢?
我也读到我可能能够收到SPS和PPS数据包。然后等待至少一个数据包,并尝试解码。这是正确的吗?
如能提供任何建议将不胜感激
是的,我们可以将NAL单元单独传递给解码器。H264能够将每个帧分成多个NAL单元的多个片。请参阅教程,其中提供了使用ffmpeg解码的步骤。http://dranger.com/ffmpeg/tutorial01.html。
还要检查av_read_frame调用的输出,以了解帧数据是如何传入的。建议您参考下面的堆栈溢出链接,该链接也解释了NAL解码的问题H264:用ffmpeg
我有一个类似的问题-设置数据包上的key_frame解决了任何NAL问题。还要确保在编解码器上下文中设置了额外的数据。
相关文章:
- 什么时候调用组成单元对象的析构函数
- Qt VTK交互风格的信号到小部件
- 获取日期异步信号安全吗?如果在信号处理程序中使用,它会导致死锁吗
- 不同翻译单元中不可重载的非内联函数定义
- 如何将点击的信号和插槽添加到qt中的自定义按钮中
- 如何在没有信号的情况下从C++执行QML插槽
- 线程之间的布尔停止信号
- 有什么好的方法可以让系统调用代理允许在单元测试中进行模拟
- 在子目录中使用target_sources()命令时用于单元测试(qtest)的项目结构
- VC++本机单元测试,找不到调试符号
- 将QIcon添加到QTableView单元格
- 如何在信号处理程序和普通函数中对全局变量进行互斥读写操作
- 用于交叉编译和CMake的预处理器宏的单元测试
- 当用户在qtablewidget中输入单元格时,如何获得信号?C++
- 有可能在信号处理程序中设置promise吗
- Qt/C++ 系统单元启动/停止时的信号
- 如何防止Qt中的当前单元格更改信号或跳过"processing"?
- QTableWiget::cellChanged 信号不会为具有 QTableWidgetItem 的单元格发出
- 我可以为提升单元测试安装信号处理程序吗?
- 解码H.264单个信号单元