-1
Как вы можете читать UDP, отправленный из ffmpeg?Как читать FFMPEG с Go?
Я написал сценарий для прослушивания UDP-пакетов и записи их в файл, но файл недействителен и почти в два раза больше.
Это, как я отправить данные:
ffmpeg -i video.mp4 -c:a aac -ar 48000 -ab 196k \
-ac 2 -strict -2 -c:v libx264 -vb 500k -r 25 -s 320x240 \
-ss 00.000 -f mp4 -movflags frag_keyframe+empty_moov \ udp://127.0.0.1:1936
Это код в Go. Он должен просто написать видео в новый видео файл:
package main
import (
"net"
"os"
)
func main(){
var buf []byte = make([]byte, 512)
addr, _ := net.ResolveUDPAddr("udp", ":1936")
conn, _ := net.ListenUDP("udp", addr)
defer conn.Close()
os.Create("new_video.mp4")
f, _ := os.OpenFile("new_video.mp4", syscall.O_WRONLY, 0644)
defer f.Close()
for {
n, _ := conn.Read(buf)
f.Write(buf[0:n])
buf = make([]byte, 512)
}
}
Благодаря
Обновлено
Я изменил формат mp4, но файл по-прежнему недействительным.
Вы говорите FFmpeg сделать файл AVI, но затем сохранить его в качестве mp4? – szatmary