Merge "MediaMuxer: add wrapper for MediaMuxer constructor" am: c8c8ddea9b
Original change: https://android-review.googlesource.com/c/platform/frameworks/av/+/1842949
Change-Id: I3706ce392015b7ea475c0134c51804f6b62c4d4e
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
diff --git a/media/libstagefright/rtsp/AAVCAssembler.cpp b/media/libstagefright/rtsp/AAVCAssembler.cpp
index ddf797c..2f516d5 100644
--- a/media/libstagefright/rtsp/AAVCAssembler.cpp
+++ b/media/libstagefright/rtsp/AAVCAssembler.cpp
@@ -618,14 +618,13 @@
int32_t AAVCAssembler::pickStartSeq(const Queue *queue,
uint32_t first, int64_t play, int64_t jit) {
- CHECK(!queue->empty());
// pick the first sequence number has the start bit.
sp<ABuffer> buffer = *(queue->begin());
int32_t firstSeqNo = buffer->int32Data();
// This only works for FU-A type & non-start sequence
- int32_t nalType = buffer->size() >= 1 ? buffer->data()[0] & 0x1f : -1;
- if (nalType != 28 || (buffer->size() >= 2 && buffer->data()[1] & 0x80)) {
+ unsigned nalType = buffer->data()[0] & 0x1f;
+ if (nalType != 28 || buffer->data()[1] & 0x80) {
return firstSeqNo;
}
@@ -635,7 +634,7 @@
if (rtpTime + jit >= play) {
break;
}
- if (it->size() >= 2 && (data[1] & 0x80)) {
+ if ((data[1] & 0x80)) {
const int32_t seqNo = it->int32Data();
ALOGE("finding [HEAD] pkt. \t Seq# (%d ~ )[%d", firstSeqNo, seqNo);
firstSeqNo = seqNo;
diff --git a/services/audioflinger/Threads.cpp b/services/audioflinger/Threads.cpp
index 3caa16b..c1fadb2 100644
--- a/services/audioflinger/Threads.cpp
+++ b/services/audioflinger/Threads.cpp
@@ -9692,12 +9692,6 @@
if (isOutput()) {
ret = AudioSystem::startOutput(portId);
} else {
- {
- // Add the track record before starting input so that the silent status for the
- // client can be cached.
- Mutex::Autolock _l(mLock);
- setClientSilencedState_l(portId, false /*silenced*/);
- }
ret = AudioSystem::startInput(portId);
}
@@ -9716,7 +9710,6 @@
} else {
mHalStream->stop();
}
- eraseClientSilencedState_l(portId);
return PERMISSION_DENIED;
}
@@ -9725,9 +9718,6 @@
mChannelMask, mSessionId, isOutput(),
client.attributionSource,
IPCThreadState::self()->getCallingPid(), portId);
- if (!isOutput()) {
- track->setSilenced_l(isClientSilenced_l(portId));
- }
if (isOutput()) {
// force volume update when a new track is added
@@ -9785,7 +9775,6 @@
}
mActiveTracks.remove(track);
- eraseClientSilencedState_l(track->portId());
mLock.unlock();
if (isOutput()) {
@@ -10576,7 +10565,6 @@
broadcast_l();
}
}
- setClientSilencedIfExists_l(portId, silenced);
}
void AudioFlinger::MmapCaptureThread::toAudioPortConfig(struct audio_port_config *config)
diff --git a/services/audioflinger/Threads.h b/services/audioflinger/Threads.h
index 386e425..da5adea 100644
--- a/services/audioflinger/Threads.h
+++ b/services/audioflinger/Threads.h
@@ -2130,26 +2130,6 @@
virtual bool isStreamInitialized() { return false; }
- void setClientSilencedState_l(audio_port_handle_t portId, bool silenced) {
- mClientSilencedStates[portId] = silenced;
- }
-
- size_t eraseClientSilencedState_l(audio_port_handle_t portId) {
- return mClientSilencedStates.erase(portId);
- }
-
- bool isClientSilenced_l(audio_port_handle_t portId) const {
- const auto it = mClientSilencedStates.find(portId);
- return it != mClientSilencedStates.end() ? it->second : false;
- }
-
- void setClientSilencedIfExists_l(audio_port_handle_t portId, bool silenced) {
- const auto it = mClientSilencedStates.find(portId);
- if (it != mClientSilencedStates.end()) {
- it->second = silenced;
- }
- }
-
protected:
void dumpInternals_l(int fd, const Vector<String16>& args) override;
void dumpTracks_l(int fd, const Vector<String16>& args) override;
@@ -2169,7 +2149,6 @@
AudioHwDevice* const mAudioHwDev;
ActiveTracks<MmapTrack> mActiveTracks;
float mHalVolFloat;
- std::map<audio_port_handle_t, bool> mClientSilencedStates;
int32_t mNoCallbackWarningCount;
static constexpr int32_t kMaxNoCallbackWarnings = 5;