스트리밍 동영상 주석

이 페이지에서는 개별 파일 또는 아카이브된 데이터에서 동영상 스트림 분석을 검색하는 방법을 설명합니다. 실시간 동영상 스트림에 주석을 작성하는 방법을 알아보려면 실시간 동영상 스트리밍을 참조하세요.

다음과 같은 기능을 사용한 실시간 동영상 감지를 위해 Streaming API(StreamingVideoIntelligenceService)를 사용할 수 있습니다.

Vertex AI AutoML을 사용하면 다음과 같은 기능을 이용할 수 있습니다.

Streaming API 사용

gRPC를 사용하여 동영상 파일을 청크로 분할하고 각 청크를 스트리밍하여 Video Intelligence API 스트리밍 서비스에 여러 메시지를 보낼 수 있습니다. 첫 번째 메시지는 StreamingVideoConfig 메시지만 포함할 수 있습니다. 이후의 모든 메시지에는 동영상 데이터만 포함되어야 합니다.

Video Intelligence API 스트리밍 서비스는 동영상 구성에 지정된 기능에 기반을 둔 결과를 포함하는 응답을 반환합니다.

gRPC 요청에서 바이너리 데이터를 스트림에 직접 씁니다. 동영상 콘텐츠를 base64로 변환할 필요가 없습니다.

동영상 청크의 크기는 10MB 미만으로 유지하는 것이 좋습니다.

또한 Video Intelligence를 사용하면 결과에 대해 Google Cloud Storage 버킷을 지정할 수 있습니다.

지원되는 동영상 코덱

Video Intelligence는 다음과 같은 일반적인 동영상 형식을 지원합니다.

형식 참고
MTS, FLV 모든 MTS, FLV 동영상 형식이 지원됩니다.
MP4(MPEG4), MOV, 3GP

MOOV Atom은 파일의 시작 부분에 있어야 합니다.

다음 예에 나와 있는 것처럼 ffmpeg 도구를 사용하여 동영상 파일 시작 부분에 MOOV Atom을 배치할 수 있습니다.


$ ffmpeg -i input_file.mp4 -c copy -map 0 -movflags faststart output_file.mp4
MKV, WebM

큐는 파일의 시작 부분에 있어야 합니다.

다음 예에 표시된 것처럼 mkclean 도구를 사용하여 파일의 시작 부분으로 큐를 이동할 수 있습니다.


$ mkclean --keep-cues --optimize in.mkv out.mkv
$ mkclean --keep-cues --optimize --doctype 4 in.webm out.webm

지원되는 것으로 나열되지 않은 동영상 형식의 경우 명명된 파이프와 ffmpeg 도구를 사용하여 동영상 파일이 스트리밍을 지원하는지 확인할 수 있습니다. 다음 샘플 명령어는 0.2fps의 속도로 동영상을 PNG 이미지로 디코딩합니다. 이 명령어를 사용하여 파일을 성공적으로 디코딩할 수 있으면 Video Intelligence 스트리밍 서비스를 사용하여 스트리밍할 수 있습니다.

$ mkfifo /tmp/inpipe
$ ffmpeg -i /tmp/inpipe -r 0.2 output_%04d.png
$ cat [FILE NAME] > /tmp/inpipe