Loading tv/tuner/1.0/default/Demux.cpp +2 −6 Original line number Diff line number Diff line Loading @@ -52,7 +52,7 @@ Return<Result> Demux::setFrontendDataSource(uint32_t frontendId) { mTunerService->setFrontendAsDemuxSource(frontendId, mDemuxId); return startFrontendInputLoop(); return Result::SUCCESS; } Return<void> Demux::openFilter(const DemuxFilterType& type, uint32_t bufferSize, Loading @@ -60,7 +60,6 @@ Return<void> Demux::openFilter(const DemuxFilterType& type, uint32_t bufferSize, ALOGV("%s", __FUNCTION__); uint32_t filterId; if (!mUnusedFilterIds.empty()) { filterId = *mUnusedFilterIds.begin(); Loading @@ -83,7 +82,6 @@ Return<void> Demux::openFilter(const DemuxFilterType& type, uint32_t bufferSize, _hidl_cb(Result::UNKNOWN_ERROR, filter); return Void(); } mFilters[filterId] = filter; _hidl_cb(Result::SUCCESS, filter); Loading Loading @@ -234,11 +232,9 @@ uint16_t Demux::getFilterTpid(uint32_t filterId) { return mFilters[filterId]->getTpid(); } Result Demux::startFrontendInputLoop() { void Demux::startFrontendInputLoop() { pthread_create(&mFrontendInputThread, NULL, __threadLoopFrontend, this); pthread_setname_np(mFrontendInputThread, "frontend_input_thread"); return Result::SUCCESS; } void* Demux::__threadLoopFrontend(void* user) { Loading tv/tuner/1.0/default/Demux.h +1 −1 Original line number Diff line number Diff line Loading @@ -89,6 +89,7 @@ class Demux : public IDemux { void updateFilterOutput(uint16_t filterId, vector<uint8_t> data); uint16_t getFilterTpid(uint32_t filterId); void setIsRecording(bool isRecording); void startFrontendInputLoop(); private: // Tuner service Loading @@ -104,7 +105,6 @@ class Demux : public IDemux { uint32_t filterId; }; Result startFrontendInputLoop(); static void* __threadLoopFrontend(void* user); void frontendInputThreadLoop(); Loading tv/tuner/1.0/default/Frontend.cpp +1 −0 Original line number Diff line number Diff line Loading @@ -64,6 +64,7 @@ Return<Result> Frontend::tune(const FrontendSettings& /* settings */) { return Result::INVALID_STATE; } mTunerService->frontendStartTune(mId); mCallback->onEvent(FrontendEventType::LOCKED); mIsLocked = false; return Result::SUCCESS; Loading tv/tuner/1.0/default/Tuner.cpp +9 −0 Original line number Diff line number Diff line Loading @@ -247,6 +247,15 @@ void Tuner::frontendStopTune(uint32_t frontendId) { } } void Tuner::frontendStartTune(uint32_t frontendId) { map<uint32_t, uint32_t>::iterator it = mFrontendToDemux.find(frontendId); uint32_t demuxId; if (it != mFrontendToDemux.end()) { demuxId = it->second; mDemuxes[demuxId]->startFrontendInputLoop(); } } } // namespace implementation } // namespace V1_0 } // namespace tuner Loading tv/tuner/1.0/default/Tuner.h +1 −0 Original line number Diff line number Diff line Loading @@ -63,6 +63,7 @@ class Tuner : public ITuner { void setFrontendAsDemuxSource(uint32_t frontendId, uint32_t demuxId); void frontendStartTune(uint32_t frontendId); void frontendStopTune(uint32_t frontendId); private: Loading Loading
tv/tuner/1.0/default/Demux.cpp +2 −6 Original line number Diff line number Diff line Loading @@ -52,7 +52,7 @@ Return<Result> Demux::setFrontendDataSource(uint32_t frontendId) { mTunerService->setFrontendAsDemuxSource(frontendId, mDemuxId); return startFrontendInputLoop(); return Result::SUCCESS; } Return<void> Demux::openFilter(const DemuxFilterType& type, uint32_t bufferSize, Loading @@ -60,7 +60,6 @@ Return<void> Demux::openFilter(const DemuxFilterType& type, uint32_t bufferSize, ALOGV("%s", __FUNCTION__); uint32_t filterId; if (!mUnusedFilterIds.empty()) { filterId = *mUnusedFilterIds.begin(); Loading @@ -83,7 +82,6 @@ Return<void> Demux::openFilter(const DemuxFilterType& type, uint32_t bufferSize, _hidl_cb(Result::UNKNOWN_ERROR, filter); return Void(); } mFilters[filterId] = filter; _hidl_cb(Result::SUCCESS, filter); Loading Loading @@ -234,11 +232,9 @@ uint16_t Demux::getFilterTpid(uint32_t filterId) { return mFilters[filterId]->getTpid(); } Result Demux::startFrontendInputLoop() { void Demux::startFrontendInputLoop() { pthread_create(&mFrontendInputThread, NULL, __threadLoopFrontend, this); pthread_setname_np(mFrontendInputThread, "frontend_input_thread"); return Result::SUCCESS; } void* Demux::__threadLoopFrontend(void* user) { Loading
tv/tuner/1.0/default/Demux.h +1 −1 Original line number Diff line number Diff line Loading @@ -89,6 +89,7 @@ class Demux : public IDemux { void updateFilterOutput(uint16_t filterId, vector<uint8_t> data); uint16_t getFilterTpid(uint32_t filterId); void setIsRecording(bool isRecording); void startFrontendInputLoop(); private: // Tuner service Loading @@ -104,7 +105,6 @@ class Demux : public IDemux { uint32_t filterId; }; Result startFrontendInputLoop(); static void* __threadLoopFrontend(void* user); void frontendInputThreadLoop(); Loading
tv/tuner/1.0/default/Frontend.cpp +1 −0 Original line number Diff line number Diff line Loading @@ -64,6 +64,7 @@ Return<Result> Frontend::tune(const FrontendSettings& /* settings */) { return Result::INVALID_STATE; } mTunerService->frontendStartTune(mId); mCallback->onEvent(FrontendEventType::LOCKED); mIsLocked = false; return Result::SUCCESS; Loading
tv/tuner/1.0/default/Tuner.cpp +9 −0 Original line number Diff line number Diff line Loading @@ -247,6 +247,15 @@ void Tuner::frontendStopTune(uint32_t frontendId) { } } void Tuner::frontendStartTune(uint32_t frontendId) { map<uint32_t, uint32_t>::iterator it = mFrontendToDemux.find(frontendId); uint32_t demuxId; if (it != mFrontendToDemux.end()) { demuxId = it->second; mDemuxes[demuxId]->startFrontendInputLoop(); } } } // namespace implementation } // namespace V1_0 } // namespace tuner Loading
tv/tuner/1.0/default/Tuner.h +1 −0 Original line number Diff line number Diff line Loading @@ -63,6 +63,7 @@ class Tuner : public ITuner { void setFrontendAsDemuxSource(uint32_t frontendId, uint32_t demuxId); void frontendStartTune(uint32_t frontendId); void frontendStopTune(uint32_t frontendId); private: Loading