점진적으로 채워지거나 읽는 오디오 버퍼를 작성해야합니다. read_samples
샘플을 버퍼에서 읽을되었을 때 지금 내가 가장 효율적인 버퍼 작성 방법
m_outputBuffer.erase(
m_outputBuffer.begin(),
m_outputBuffer.begin()+read_samples);
을 사용하고
는
(나는 RAM을 확보을 취소해야합니다). 하지만 erase()
은 매우 비쌉니다. 대체 어떻게해야합니까? 기본적으로 포인터를 내 버퍼의 첫 번째 요소로 이동하고 시작을 자유롭게해야한다는 것을 고려해야합니다.
의견이 명확하지 않습니다. 귀하의 질문은 쓸데있다. –
* RAM을 비우려면 지워야합니다. * - 'std :: vector'인 경우 'erase'를 호출해도 RAM이 비어 있지 않습니다. – PaulMcKenzie
std :: deque는 시퀀스의 시작 부분에서도 요소를 효율적으로 삽입하고 삭제하도록 설계된 컨테이너입니다. –