Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 7048f252 authored by Amy Zhang's avatar Amy Zhang Committed by Gerrit Code Review
Browse files

Merge "Add Demux and Descrambler interface to Tuner HAL Test: Manual bug: 135709729"

parents 52119b7e cf05ed7e
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -8,6 +8,9 @@ hidl_interface {
    },
    srcs: [
        "types.hal",
        "IDemux.hal",
        "IDemuxCallback.hal",
        "IDescrambler.hal",
        "IFrontend.hal",
        "IFrontendCallback.hal",
        "ITuner.hal",
+37 −0
Original line number Diff line number Diff line
package android.hardware.tv.tuner@1.0;

import IDemuxCallback;

/**
 * Demultiplexer(Demux) takes a single multiplexed input and splits it into
 * one or more output.
 *
 */
interface IDemux {

    /**
     * Set a frontend resource as data input of the demux
     *
     * It is used by the client to specify a hardware frontend as data source of
     * this demux instance. A demux instance can have only one data source.
     *
     * @return result Result status of the operation.
     *         SUCCESS if successful,
     *         INVALID_STATE if failed for wrong state.
     *         UNKNOWN_ERROR if failed for other reasons.
     */
    setFrontendDataSource(FrontendId frontendId) generates (Result result);

    /**
     * Close the Demux instance
     *
     * It is used by the client to release the demux instance. HAL clear
     * underneath resource. client mustn't access the instance any more.
     *
     * @return result Result status of the operation.
     *         SUCCESS if successful,
     *         UNKNOWN_ERROR if failed for other reasons.
     */
    close() generates (Result result);
};
+11 −0
Original line number Diff line number Diff line
package android.hardware.tv.tuner@1.0;

interface IDemuxCallback {
    /**
     * Notify the client that a new filter event happened.
     *
     * @param filterEvent a demux filter event.
     */
     oneway onFilterEvent(DemuxFilterEvent filterEvent);
};
+35 −0
Original line number Diff line number Diff line
package android.hardware.tv.tuner@1.0;

/**
 * Descrambler is used to descramble input data.
 *
 */
interface IDescrambler {

    /**
     * Set a demux as source of the descrambler
     *
     * It is used by the client to specify a demux as source of this
     * descrambler. A descrambler instance can have only one source, and
     * this method can be only called once.
     *
     * @return result Result status of the operation.
     *         SUCCESS if successful,
     *         INVALID_STATE if failed for wrong state.
     *         UNKNOWN_ERROR if failed for other reasons.
     */
    setDemuxSource(DemuxId demuxId) generates (Result result);

    /**
     * Release the descrambler instance
     *
     * It is used by the client to release the descrambler instance. HAL clear
     * underneath resource. client mustn't access the instance any more.
     *
     * @return result Result status of the operation.
     *         SUCCESS if successful,
     *         UNKNOWN_ERROR if failed for other reasons.
     */
     close() generates (Result result);
};
+28 −1
Original line number Diff line number Diff line
@@ -16,6 +16,8 @@

package android.hardware.tv.tuner@1.0;

import IDemux;
import IDescrambler;
import IFrontend;

/**
@@ -48,5 +50,30 @@ interface ITuner {
    openFrontendById(FrontendId frontendId)
        generates (Result result, IFrontend frontend);

};
    /**
     * Create a new instance of Demux.
     *
     * It is used by the client to create a Demux instance.
     *
     * @return result Result status of the operation.
     *         SUCCESS if successful,
     *         UNKNOWN_ERROR if creation failed for other reasons.
     * @return demuxId newly created demux id.
     * @return demux the newly created demux interface.
     */
     openDemux()
         generates (Result result, DemuxId demuxId, IDemux demux);

    /**
     * Create a new instance of Descrambler.
     *
     * It is used by the client to create a Descrambler instance.
     *
     * @return result Result status of the operation.
     *         SUCCESS if successful,
     *         UNKNOWN_ERROR if creation failed for other reasons.
     * @return descrambler the newly created descrambler interface.
     */
     openDescrambler()
         generates (Result result, IDescrambler descrambler);
};
Loading