AVFoundation 프레임 워크로 차례로 2 개의 비디오를 연결하려고합니다. AVAssetExport로 내보낼 때 결과는 훌륭합니다! HTML5 비디오으로 동영상을 재생할 때 Safari, Firefox에서는 볼 수 있지만 Chrome에서는 볼 수 없습니다. 깊은 분석을 통해 근본 원인이 내 보낸 비디오에 2 개의 오디오 채널이 있다는 것을 알았습니다 !!!! 동영상에서 오디오를 제거하면 모든 것이 Google 크롬에서도 작동합니다. 내 코드에서AVFoundation concat 비디오 및 오디오
나는 같은 트랙에 오디오를 추가하지만 서로 다른 시간의 범위 :이 구글 크롬에 허용되지 않는 대신 하나의 나 2 개의 별도 audiotracks을 생산 추측
asset1.tracks(withMediaType: AVMediaTypeAudio)[0].insertTimeRange(asset1.duration, asset1, start1)
asset2.tracks(withMediaType: AVMediaTypeAudio)[0].insertTimeRange(asset2.duration, asset2, start2)
. 이 링크에서 비디오를 찾을 수 있습니다 : http://www.livebomber.com/prova.php Safari 또는 Firefox에서 열면 Firefox가 잘 작동하지만 Google Chorome을 사용하면 오류가 표시됩니다. 모든 오디오 트랙을 하나로 병합하고 내보내려면 어떻게해야합니까? 고맙습니다.
안녕하세요. 도움을 많이 주셔서 감사합니다. 나는 이것을 확실히 시도 할 것이다. 필자에게 더 잘 설명해 주겠다. 필자는 iOS 카메라의 441k 오디오 샘플 속도에서 48k 오디오 샘플 속도로 1 개의 비디오 mp4를, 또 다른 하나의 mov를 얻었다. 둘 다 480x640입니다. 스테레오를 모노로 변환하는 가장 좋은 방법은 무엇입니까? –
안녕하세요 Alessio, 병합 된 비디오 클립 내의 오디오 속성 차이가 재생 문제의 주요 위험이 될 수 있습니다. 필자는 Adobe Premiere를 사용하여 내가 사용하고 있던 비디오를 만들었습니다. 오픈 소스 명령 행 도구 'ffmpeg'도 변환에 사용될 수 있습니다. 그러나 가장 좋은 방법은 AVFoundation을 사용하여 응용 프로그램 내에서 이러한 모든 변환을 처리하는 것 같아요,하지만 미안, 그것에 충분한 경험이 없어 :/ – scaryguy
정말 고마워 !! 해결책은 프레임 단위로 AVAssetWriter로 다시 인코딩하는 것이지만 아직 시도하지 않았습니다. –