No .ap file created for HDMI In recordings - causes Execute cuts to fail

Issue #478 resolved
prl created an issue

When a recording is made from the T4's HDMI IN channel, no .ap file is created when the recording finishes. This prevents MEDIA, MENU>Execute cuts... from being run on an edited recording from HDMI IN.

This is because eServiceHDMIRecord::doRecord() never calls eMPEGStreamParserTS::setPid(), which sets the parser's m_pid, and m_pid remains at its initial (illegal) value.

The eEncoder class has no provision for finding the video PID for the encoder stream to pass to eMPEGStreamParserTS::setPid(). It is suggested that methods are added to the eEncoder class to return (at least) the fixed audio and video PIDS of the HDMI IN stream.

Replication steps

Create a recording from HDMI IN.

When the recording finishes, examine the recording files: there is no .ap file for the recording.

Play the recording for a short time to create its .cuts file. Then run the "Execute cuts" function, MEDIA, MENU>Execute cuts...>Replace the original movie...

The function fails with a popup saying "Cutting failed for movie "HDMI IN". Couldn't open ,ap file".

Comments (2)

  1. Peter Urbanec

    Fix Bug #478: No .ap file created for HDMI In recordings - causes Execute cuts to fail

    [eEncoder]

    Add definitions for fixed PIDs used by the HDMI IN encoder, and use them in methods to return corresponding the PIDs.

    [eServiceHDMIRecord]

    In doRecord(), add code to set the video PID for the HDMI IN encoder as the "timing pid" for the recording, from which the access points for the .ap file are saved.

    Because it's not possible to tell what streams are presend in the output of the decoder, if the HUDM IN has no video stream, only audio, no access points will be found.

    This has the side-effect of filling and preserving the .sc file for the recording.

    → <<cset 8fade7b3f540>>

  2. Log in to comment