FFmpeg는 후속 요청 URL에 쿼리 문자열 매개변수를 추가하지 않습니다.

FFmpeg는 후속 요청 URL에 쿼리 문자열 매개변수를 추가하지 않습니다.

HLS/Dash 재생목록 처리 시(인증에 쿼리 매개변수가 사용되는 경우)- ffmpeg는 데이터 청크 요청에 해당 쿼리 문자열을 추가하지 않으므로 서버에서 403 금지 오류가 발생합니다.

예:

ffmpeg -i "http://example.com/playlist.m3u8?auth=foo" out.mp4

청크 요청은 다음과 같습니다. http://example.com/chunk1.ts- 대신http://example.com/chunk1.ts?auth=foo

이를 우회할 수 있는 옵션이 있습니까, 아니면 지원되지 않습니까, 아니면 버그입니까?

답변1

HLS는 다음과 같이 작동합니다. 쿼리 문자열 매개변수(있는 경우)는 청크에 대한 URL을 포함하는 M3U8 청크 목록을 쿼리하는 데 사용됩니다. 청크 목록의 이러한 URL(예:네가 통제할 수 없다는 걸)에 쿼리 매개변수가 포함되어 있지 않으면 쿼리하는 데 아무 것도 사용되지 않습니다.

제어하는 웹 서비스를 통해 M3U8을 프록시하여 청크 목록에 쿼리 매개변수를 추가하면 이 문제를 해결할 수 있습니다.

관련 정보