github.com/0chain/gosdk@v1.17.11/zboxcore/sdk/live_upload_reader_ffmpeg_darwin.go (about)

     1  package sdk
     2  
     3  import (
     4  	"strconv"
     5  	"strings"
     6  )
     7  
     8  // buildFfmpegArgs build ffmpeg arguments for darwin: https://ffmpeg.org/ffmpeg-devices.html#avfoundation
     9  func buildFfmpegArgs(fileName string, delay int) []string {
    10  
    11  	if strings.HasSuffix(fileName, ".m3u8") {
    12  		return []string{
    13  			//	"-thread_queue_size", "50",
    14  			"-f", "avfoundation",
    15  			"-framerate", "30",
    16  			"-i", "default:default",
    17  			"-r", "30",
    18  			"-flags", "+cgop",
    19  			"-g", "30",
    20  			"-hls_time", strconv.Itoa(delay),
    21  
    22  			fileName, //*.m3u8
    23  		}
    24  	}
    25  
    26  	//mp4, avi...etc
    27  	return []string{
    28  		//"-thread_queue_size", "50",
    29  		"-f", "avfoundation",
    30  		"-framerate", "30",
    31  		"-i", "default:default",
    32  		"-c:v", "libx264",
    33  		"-crf", "18",
    34  		"-preset", "ultrafast",
    35  		"-r", "30",
    36  		"-map", "0",
    37  		"-f", "segment",
    38  		"-segment_time", strconv.Itoa(delay),
    39  
    40  		fileName,
    41  	}
    42  
    43  }