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

Commit 8553c4a0 authored by android-build-team Robot's avatar android-build-team Robot
Browse files

Snap for 6583806 from 0d38ed9d to mainline-release

Change-Id: I2d4c8954ae39ebb2787ed7cd316d594bda5fe49b
parents b29b9b9d 0d38ed9d
Loading
Loading
Loading
Loading
+10 −6
Original line number Diff line number Diff line
@@ -76,12 +76,16 @@ interface ICameraProvider extends @2.5::ICameraProvider {
     * configuration settings exposed through camera metadata), should the sum
     * of resource costs for the combination be <= 100.
     *
     * The lists of camera id combinations returned by this method may contain
     * hidden physical camera ids. If a combination does contain hidden physical
     * camera ids, the camera framework must be able to open any logical cameras
     * that contain these hidden physical camera ids in their
     * ANDROID_LOGICAL_MULTI_CAMERA_PHYSICAL_IDS list, in addition to the other
     * camera ids advertised in the combination, for concurrent operation.
     * For guaranteed concurrent camera operation, the camera framework must call
     * ICameraDevice.open() on all devices (intended for concurrent operation), before configuring
     * any streams on them. This gives the camera HAL process an opportunity to potentially
     * distribute hardware resources better before stream configuration.
     *
     * Due to potential hardware constraints around internal switching of physical camera devices,
     * a device's complete ZOOM_RATIO_RANGE(if supported), may not apply during concurrent
     * operation. If ZOOM_RATIO is supported, camera HALs must ensure ZOOM_RATIO_RANGE of
     * [1.0, ANDROID_SCALER_AVAILABLE_MAX_DIGITAL_ZOOM] is supported by that device, during
     * concurrent operation.
     *
     * @return status Status code for the operation
     * @return cameraIds a list of camera id combinations that support
+1 −1
Original line number Diff line number Diff line
@@ -677,7 +677,7 @@ eb90c4d366f05a025d1d1a3672f8b4c3e33e420fa387f73f21b264645bfdf845 android.hardwar
a718c8a3acaa938de5a57923e8c4625ed7ca051e05a1d930ba6998557d7b57c8 android.hardware.camera.device@3.6::ICameraOfflineSession
a35d5151b48505f06a775b38c0e2e265f80a845d92802324c643565807f81c53 android.hardware.camera.device@3.6::types
02bdf82dba7dce273a554b4474468a8fb1fb4f61ab65da95eb16e080df63fff6 android.hardware.camera.metadata@3.5::types
21086e1c7a2acc0ebe0ff8561b11f3c2009be687a92d79b608a5f00b16c5f598 android.hardware.camera.provider@2.6::ICameraProvider
7d6b362681f4a4fd0be95535d8913d8de9a26f0765c1bdda4bd837dea8c25db6 android.hardware.camera.provider@2.6::ICameraProvider
8f8d9463508ff9cae88eb35c429fd0e2dbca0ca8f5de7fdf836cc0c4370becb6 android.hardware.camera.provider@2.6::ICameraProviderCallback
1edf7aef68ef3bd577a1175b1462fb82e3e39f01c6915dda61fba121028df283 android.hardware.camera.provider@2.6::types
c1aa508d00b66ed5feefea398fd5edf28fa651ac89773adad7dfda4e0a73a952 android.hardware.cas@1.2::ICas
+2 −2
Original line number Diff line number Diff line
@@ -93,9 +93,9 @@ Return<void> Demux::openFilter(const DemuxFilterType& type, uint32_t bufferSize,
Return<void> Demux::openTimeFilter(openTimeFilter_cb _hidl_cb) {
    ALOGV("%s", __FUNCTION__);

    sp<TimeFilter> timeFilter = new TimeFilter(this);
    mTimeFilter = new TimeFilter(this);

    _hidl_cb(Result::SUCCESS, timeFilter);
    _hidl_cb(Result::SUCCESS, mTimeFilter);
    return Void();
}

+5 −0
Original line number Diff line number Diff line
@@ -152,6 +152,11 @@ class Demux : public IDemux {
     */
    std::map<uint32_t, sp<Filter>> mFilters;

    /**
     * Local reference to the opened Timer Filter instance.
     */
    sp<TimeFilter> mTimeFilter;

    /**
     * Local reference to the opened DVR object.
     */
+13 −4
Original line number Diff line number Diff line
@@ -34,24 +34,32 @@ TimeFilter::TimeFilter(sp<Demux> demux) {

TimeFilter::~TimeFilter() {}

Return<Result> TimeFilter::setTimeStamp(uint64_t /* timeStamp */) {
Return<Result> TimeFilter::setTimeStamp(uint64_t timeStamp) {
    ALOGV("%s", __FUNCTION__);
    if (timeStamp == INVALID_TIME_STAMP) {
        return Result::INVALID_ARGUMENT;
    }
    mTimeStamp = timeStamp;
    mBeginTime = time(NULL);

    return Result::SUCCESS;
}

Return<Result> TimeFilter::clearTimeStamp() {
    ALOGV("%s", __FUNCTION__);
    mTimeStamp = INVALID_TIME_STAMP;

    return Result::SUCCESS;
}

Return<void> TimeFilter::getTimeStamp(getTimeStamp_cb _hidl_cb) {
    ALOGV("%s", __FUNCTION__);
    if (mTimeStamp == INVALID_TIME_STAMP) {
        _hidl_cb(Result::INVALID_STATE, mTimeStamp);
    }

    uint64_t timeStamp = 0;

    _hidl_cb(Result::SUCCESS, timeStamp);
    uint64_t currentTimeStamp = mTimeStamp + difftime(time(NULL), mBeginTime) * 900000;
    _hidl_cb(Result::SUCCESS, currentTimeStamp);
    return Void();
}

@@ -66,6 +74,7 @@ Return<void> TimeFilter::getSourceTime(getSourceTime_cb _hidl_cb) {

Return<Result> TimeFilter::close() {
    ALOGV("%s", __FUNCTION__);
    mTimeStamp = INVALID_TIME_STAMP;

    return Result::SUCCESS;
}
Loading