This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] IPNC_RDK 3.5解码器实例

Guru**** 2540720 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/566988/ipnc_rdk-3-5-decoder-instance

Thread 中讨论的其他器件:DM385

尊敬的 TI 专家:

我在定制的 DM385平台中

我正在尝试创建解码器实例3 (CH0、CH1、CH2)以进行回放。

适用于 CH0--->全高清 CH1->HD CH2-->D1 (720*480)

CH0和 CH2在回放时是正确的。 创建 CH1 ???解码器实例的相关性

解码器的最大 NO.of 实例是什么????

建议我解决这个问题!!!

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Rajesh、

    您能不能共享您的完整链/管道。
    如果您尝试创建3个不同的解码器实例、则无法创建、因为我们最多可以创建2个解码器实例。 您可以使用单个解码器实例的3个不同通道来完成链。

    此致、
    Anuj
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    尊敬的 Anuj:

    感谢您的回复...

    对于回放、我将使用此流水线。
    ipcBitsOutHost->ipcBitsInVideo-->解码器--> ipcOutVideo --> ipcInVpss --> Deinterlacer -->显示

    您能解释一下(单个解码器实例的3个不同通道)如何为三个不同的通道创建单个实例吗?

    此致、

    Rajesh Kannan.S
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Rajesh、

    单个解码器实例最多可以处理4个不同的通道。 为此、您可以在从3个不同队列获取数据之前使用多路复用器或合并链接。
    请在创建所有链接时共享日志。

    此致、
    Anuj
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Anuj:

    感谢您的回复。

    查找随附的日志 Dec.txt 以供您参考。

    您能否通过添加合并链接来为3个通道创建一个解码器实例来完成链?

    ipcBitsOutHost->ipcBitsInVideo-->解码器--> ipcOutVideo --> ipcInVpss --> Deinterlacer -->显示

    在此管道中,我必须在解码器之前添加合并链接???  

    此致、

    Rajesh Kannan.S

    e2e.ti.com/.../Dec.txt

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Rajesh、

    几个问题
    1.正在尝试做什么?
    从摄像头和显示屏捕获流(我在日志中看到一个摄像头、编码器、nsf 链接详细信息、如果您使用摄像头、则从摄像头共享完整的日志和管道)
    或从主机端播放文件。
    2.为什么在解码器后使用 DEI 链接? 您可以直接显示解码的视频,而无需 DEI。
    3.正如您说过的,您可以显示2个频道,这样您就可以一次显示2个频道而不使用 swms 链接?

    我可以看到、您的解码器正在为所有3个通道创建、因此我建议您将 DEI 链接替换为选择链接、并尝试选择不同的通道并一次显示一个、或使用 swms 链接同时显示所有通道。

    此致
    Anuj
    Pathpartner Technology Pvt. Ltd.
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    尊敬的 Anuj:

    感谢您的回复。

    我正在尝试使用我之前提到的不同分辨率进行回放!!!

    相机-->编码-->录制无任何问题!!!

    使用 Deinterlacer 进行色度转换和缩放的目的(如果没有 DEI、显示不正确)。

    使用 SetChannelSwitch()一次只能显示一个频道以显示回放 ch0或 CH1 (不需要使用马赛克链接)

    我正在使用显示设备作为 HDMI (配置为720*480)。

    现在、我正在集中精力为解码器创建第三个实例。

    建议我解决这个问题!!!

    此致、

    Rajesh Kannan.S
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    尊敬的 Anuj:

    在解码器中、通过一个实例、我可以播放全部三个分辨率的文件播放。

    播放时出现的问题是,视频正常,但没有全屏尺寸(即)只有特定的视频分辨率尺寸出现。

    有人建议我解决这个问题???

    此致、

    Rajesh Kannan.S
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好 Rajesh

    您能否共享新日志。

    此致
    Anuj
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    尊敬的 Anuj:

    感谢您的回复。。。

    我之前在 Dec.txt 上发送给您的用于回放的日志与最新的日志相同。

    之后、我没有更改源。

    我很早就尝试过单个实例、对于其他两个通道、遇到了相同的问题(菜单上一个讨论中的视频分辨率大小)。

    此致、

    Rajesh Kannan.S
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Anuj:

    查找随附的完整日志以供您参考。

    此致、

    Rajesh Kannan.S

    e2e.ti.com/.../Jan17.txt

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Rajesh、

    您使用的是哪个版本的 RDK?
    如果可能、请分享您最新的用例代码、以便我能够重现该错误并进行完全调试。

    此致、
    Anuj
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    尊敬的 Anuj:

    感谢您的回复、

    使用3.5版 IPNC RDK。

    只有回放用例代码足以重现错误,正确??

    请告诉我!!!

    此致、

    Rajesh Kannan.S
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Rajesh、

    请同时提供捕获用例代码。

    此致
    Anuj
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    尊敬的 Anuj:

    感谢您的回复。

    该规范具有机密权限。 因此我们无法分享。

    我有单独的播放用例。 我正在处理这个。

    我将共享它。 请告诉我!!!

    此致、

    Rajesh Kannan.S
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Rajesh、

    我们尊重您的机密性、因此请分享播放用例代码。
    请说明 A8端这些文件的详细信息,如数据格式、分辨率、fps 等

    此致
    Anuj
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Anuj:

    感谢您的回复。

    A8端的文件为.mkv 格式,分辨率为1920*1080、720*480和1280*720。 FPS 为25  

    查找随附的文件供您参考。

    此致、

    Rajesh Kannan.S  

    e2e.ti.com/.../play.c

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    尊敬的 Anuj:

    是否有用于回放的解码器实例的更新????

    此致、

    Rajesh Kannan.S
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Rajesh、

    我看到了您的代码、发现您仅缩放通道0而不是通道1和2、因此请缩放其他2个通道、否则默认情况下、它将采用原始值。
    我也找不到任何选择、swms link 或 display_link_cmd_switch_CH cmd、因此我建议您在用例中添加任何一个。
    请使用 System_linkControl API 和 Display_link_cmd_cmd_print_buffer_statistics 等适当的参数和 cmds 打印 DEI、解码器和显示链接的统计信息 ,以显示 和共享日志,这些日志有助于查找导致问题的链接。

    此致
    Anuj

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    尊敬的 Anuj:

    感谢您的回复。

    为了使其正常工作、我能否按如下方式进行调节、您刚才提到了 Ch1和 Ch2

    DeiPrm.outScaleFactor[DEI_OUT_SUB_STRAMER][0].scaleMode = DEI_SCALE_MODE_Absolute;
    DeiPrm.outScaleFactor[DEI_OUT_SUB_STRAMER][0].absoluteResolution.outWidth = 720;
    DeiPrm.outScaleFactor[DEI_OUT_SUB_STRAMER][0].absoluteResolution .outHeight = 480;

    我还有一个问题...我尝试了解码器(FullHD 和 D1)的两个实例、调节是由 Deinterlacer 在内部完成的。 播放 D1分辨率时没有问题。 它以视频显示分辨率(720 * 480)进行播放

    创建第三个实例(HD)时,无法播放???

    我有单独的 Display_LINK_CMD_SWITCH_CH 应用程序来切换显示通道。

    请告诉我!!!
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Rajesh、

    我希望您尝试创建一个具有3个不同通道的解码器实例、如果您设置了正确的参数、这是可能的、但如果您尝试创建3个不同的解码器实例、则这是不可能的、因为我们最多可以有2个 解码器实例。

    从您的代码中可以看到,您的 DEI 将获得3个通道(ch0 1920*1080、CH1 720*480、CH2 1280*720)。因此,在 DEI 链接中设置以下参数
    DeiPrm.outScaleFactor[DEI_OUT_SUB_STRAMER][0].scaleMode = DEI_SCALE_MODE_Absolute;
    DeiPrm.outScaleFactor[DEI_OUT_SUB_STRAMER][0].absoluteResolution.outWidth = W0;
    DeiPrm.outScaleFactor[DEI_OUT_SUB_STRAMER][0].absoluteResolution .outHeight = h0;
    DeiPrm.outScaleFactor[DEI_OUT_SUB_STRAMER][1].scaleMode = DEI_SCALE_MODE_Absolute;
    DeiPrm.outScaleFactor[DEI_OUT_SUB_STRAMER][1].absoluteResolution.outWidth = W1;
    DeiPrm.outScaleFactor[DEI_OUT_SUB_STRAMER][1].absoluteResolution .outHeight = H1;
    DeiPrm.outScaleFactor[DEI_OUT_SUB_STRAMER][2].scaleMode = DEI_SCALE_MODE_Absolute;
    DeiPrm.outScaleFactor[DEI_OUT_SUB_STRAMER][2].absoluteResolution.outWidth = w2;
    DeiPrm.outScaleFactor[DEI_OUT_SUB_STRAMER][2].absoluteResolution .outHeight = H2;

    此处、W0、W1、w2和 h0、H1、H2是从各自3个通道的 DEI 链路缩放后的输出宽度和高度。

    如果仍有问题、请将日志与解码器、DEI 和显示链接的统计信息共享

    此致
    Anuj
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    尊敬的 Anuj:

    感谢您的回复。

    我将更改源代码以创建一个解码器实例。 例如:-(1920 * 1080)。

    如果我尝试按照您提到的方式设置 DeiPrm 三个通道、它将产生效果????

    我将尝试更新您。

    此致、

    Rajesh Kannan.S
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Rajesh、

    请具体说明以下术语
    1.实例:如果您使用两个不同的 LinkID 创建2个不同的解码器,则使用实例。
    2.信道:如果您使用单个解码器和包含3个信道的单个链接 ID,则使用信道。

    此致、
    Anuj
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    尊敬的 Anuj:

    感谢您的回复。

    实际上、我正在使用一个解码器。

    例如,如果我要为1920*1080解码器创建单个实例,则如何在内部处理3个通道的单个实例。

    DeiPrm.outScaleFactor[DEI_OUT_SUB_STRAMER][0].scaleMode = DEI_SCALE_MODE_Absolute;
    DeiPrm.outScaleFactor[DEI_OUT_SUB_STRAMER][0].absoluteResolution.outWidth = 720;
    DeiPrm.outScaleFactor[DEI_OUT_SUB_STRAMER][0].absoluteResolution .outHeight = 480;

    DeiPrm.outScaleFactor[DEI_OUT_SUB_STRAMER][1].scaleMode = DEI_SCALE_MODE_Absolute;
    DeiPrm.outScaleFactor[DEI_OUT_SUB_STRAMER][1].absoluteResolution.outWidth = 720;
    DeiPrm.outScaleFactor[DEI_OUT_SUB_STRAMER][1].absoluteResolution .outHeight = 480;

    我尝试播放1280*720文件时出现此错误

    [m3video ] 80532:Assertion @ Line:1314 in links_m3video/IVA_dec /decLink_common.c:status = FVID2_Sok:failed!!!

    这可能是个问题!!! 请告诉我

    此致、

    Rajesh Kannan.S
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Rajesh、

    解码器链路在其输出队列中提供输出、队列最多可处理4个通道。 这样、单个解码器实例就可以在内部处理3个通道。 请选中“Bitstream_BufList”结构,每个链接共享数据(如果其位形式不在帧中)。 另一个使用此结构的链接、它有一个名为 channelNum 的参数。

    那么、您为解码器链路设置了多少个通道??
    如果您仅为 FullHD 设置1个通道而不为 D1和 HD 设置1个通道,则不要为通道1或2设置 DEI 参数,它将只有这些参数(如果您只处理1个通道)
    DeiPrm.outScaleFactor[DEI_OUT_SUB_STRAMER][0].scaleMode = DEI_SCALE_MODE_Absolute;
    DeiPrm.outScaleFactor[DEI_OUT_SUB_STRAMER][0].absoluteResolution.outWidth = 720;
    DeiPrm.outScaleFactor[DEI_OUT_SUB_STRAMER][0].absoluteResolution .outHeight = 480;

    为什么要为 DEI 的所有通道设置相同的分辨率,如果这样做,则会显示720*480的所有3个输出。

    请在创建链接时共享日志、并记录链接的统计信息、这将为我和我的团队带来清晰的愿景。
    请通过将这些内容添加到代码中来打印 ipcinvpss 链接的输出缓冲区的详细信息
    System_LinkInfo BitsProducterLinkInfo;
    System_linkGetInfo (IpcinvpssId、&bitsProducterLinkInfo);
    将 ipcinvpssId 替换为 ipcinvpss 的链接 ID、并打印结构 System_LinkInfo 的参数(如 dataformat、startx、starty、scanformat 等)。

    我正在使用 RDKv3.8,因此无法找到断言错误, 因此、请共享函数和其中的行号、该函数断言与函数的起始值相应、但您可能会在不同的链接中处理不同的通道数、这会导致该错误。

    此致
    Anuj
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Rajesh、

    您能否播放您的流媒体??

    此致、
    Anuj