2017-09-15 12 views
0

MSE를 통해 데이터가 추가되는 비디오 요소가 있습니다. 각 트랙에 얼마나 많은 오디오 채널이 있는지 확인하려고합니다.AudioTrack 용 오디오 채널 수 얻기

AudioTrack 객체 자체에는이 정보가있는 속성이 없습니다. 나는 그것에 대해 가고 알고있는 유일한 방법은 웹 오디오 API 사용하는 것입니다 : 하나의 모노 트랙에 대한 비디오

const v = document.querySelector('video'); 
const ctx = new OfflineAudioContext(32, 48000, 48000); 
console.log(Array.from(v.audioTracks).map((track) => { 
    return ctx.createBufferSource(track.sourceBuffer).channelCount; 
})); 

을, 나는 [1]을 얻을 것으로 기대합니다. 단일 스테레오 트랙이있는 비디오의 경우 [2]이 나올 것으로 예상됩니다. 그러나 채널 수가 원래 소스에 상관없이 [2]이 될 때마다.

질문 : AudioTrack에 채널 수를 얻을 수있는 적절한 직접적인 방법은

  • 있습니까?
  • 정확한 수의 채널을 얻기 위해 Web Audio API로 할 수있는 다른 것이 있습니까?
+0

모노로 양쪽 채널이 같다고 생각하십니까? –

+0

@KilianHertel 네,하지만 기본 채널 수에 대해서는 아무 것도 말해주지 않습니다. 오디오를 샘플링 할 수 있으며 한 순간에 모노가 될 수 있으며 스테레오가 될 수 있습니다. 두 채널이 모두 동일한 경우에도 두 채널이있는 경우 두 채널이 있다고보고하고 싶습니다. – Brad

+0

그럼 각 채널의 첫 번째 부분을 가져 와서 서로 비교해보십시오. 만약 그들이 동일하다면 그들은 스테레오가 아닌 모노입니다. 예를 들어, myArrayBuffer.getChannelData (channel); 다른 말로하면 자신을 쉽게 만들 수있는 방법이 없지만 가능합니다. –

답변

0

1 : 방법이 없습니다. to 2 : 의견보기