문제

오디오 트랜스코딩을 위해 원시 오디오 버퍼를 C++로 보내고 싶습니다.나에겐 두 가지 선택지가 있다

  1. 파이프 스트림을 사용하여
    • 직접 버퍼 사용(java.nio)

이것이 정말로 제가 선택할 수 있는 최선의 2가지 옵션인가요(사람들이 어떤 것을 추천할까요?) 감사합니다!

도움이 되었습니까?

해결책

NIO의 직접 버퍼는 거의 확실하게 더 나은 성능을 제공합니다.이는 직접 버퍼의 이상적인 경우입니다.

귀하의 질문의 요점이 무엇인지 잘 모르겠습니다. 다른 옵션이 있는지 알고 싶다면 대답은 아직 확실합니다. 예를 들어 파일에 쓴 다음 외부 응용 프로그램을 호출하여 처리할 수 있습니다. 또는 직접 버퍼 없이 JNI를 사용할 수도 있습니다.그러나 Java와 C++ 코드 간에 긴밀하게 결합된 고성능 인터페이스를 원한다면 직접 버퍼와 함께 JNI를 사용할 도구가 될 것입니다.

다른 팁

JNI 망치가 쉽기 때문에 사람들은 그것에 대해 불평하는 경향이 있습니다. 그러나 올바르게 수행하면 훌륭하고 매우 안정적인 옵션입니다.

소켓을 사용할 수 있지만 (로컬에서 연결을 허용하는) *닉스 시스템에서 더 효과적입니다.

실시간 트랜스 코딩이 필요하지 않으면 버퍼 접근법을 선택합니다. 이런 식으로 당신은 더 나은 제어를 가지고 있으며 바이트가 없어지지 않을 것입니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top