mirror of
https://github.com/comma-hacks/webrtc.git
synced 2025-10-05 16:16:56 +08:00
38 lines
729 B
Go
38 lines
729 B
Go
package main
|
|
|
|
import (
|
|
"fmt"
|
|
"log"
|
|
"strings"
|
|
|
|
"github.com/asticode/go-astiav"
|
|
)
|
|
|
|
func main() {
|
|
track, err := NewVisionIpcTrack("roadEncodeData")
|
|
if err != nil {
|
|
log.Fatal(fmt.Errorf("main: creating track failed: %w", err))
|
|
}
|
|
defer track.Stop()
|
|
|
|
// Handle ffmpeg logs
|
|
astiav.SetLogLevel(astiav.LogLevelError)
|
|
astiav.SetLogCallback(func(l astiav.LogLevel, fmt, msg, parent string) {
|
|
log.Printf("ffmpeg log: %s (level: %d)\n", strings.TrimSpace(msg), l)
|
|
})
|
|
|
|
go track.Start()
|
|
|
|
count := 0
|
|
for frame := range track.frameChannel {
|
|
// Do something with decoded frame
|
|
// log.Printf("%d, new frame: width: %d", track.networkLatency, frame.Width())
|
|
frame.Pts()
|
|
count++
|
|
|
|
if count > 10 {
|
|
track.Stop()
|
|
}
|
|
}
|
|
}
|