>  기사  >  백엔드 개발  >  Run()을 사용하여 Golang에서 실행한 명령이 반환되지 않습니다.

Run()을 사용하여 Golang에서 실행한 명령이 반환되지 않습니다.

WBOY
WBOY앞으로
2024-02-06 10:12:03827검색

Golang 使用 Run() 执行的命令没有返回

질문 내용

youtube-dl과 ffmpeg를 사용하여 음악 스트리밍 서비스를 만들려고 합니다. 사용자가 비디오 URL과 함께 POST 요청을 보내면 내 핸들러 코드는 다음과 같이 작동합니다.

으아아아

ffmpeg와 youtube-dl을 사용하여 파이프라인을 만들었습니다. 테스트 단계에서 POST 요청을 보냈지만 요청이 완료되지 않았습니다. 로그를 보면 "완료----------------"가 표시되지 않습니다. 그 과정이 막힌 것 같아요. 어떤 아이디어가 있나요? 내 사용법이 맞나요?


정답


이건 거의 다 됐습니다 - 아직 닫아야 합니다 *io.PipeWriter .

그렇지 않으면 ffmpeg 认为可以通过更多数据。这将在程序中显示为 EOF.

다음은 echocat 代替。您应该能够通过注释掉新的 defer w.Close()를 사용하여 문제를 재현하기 위해 함께 만든 실행 가능한 예입니다.

으아아아

위 내용은 Run()을 사용하여 Golang에서 실행한 명령이 반환되지 않습니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 stackoverflow.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제