잠시만 기다려 주세요

HOME   |  여기는?   |  바다물때표   |  여러가지 팁 (887)  |  추천 및 재미 (152)  |  자료실 (20)  |  끄적거림 (517)  |  시나리오 (760)  |  드라마 대본 (248)  |  

2020년 09월 19일
어차피 끝까지 가야 움직인다면 '좋다' 0 이 되었으니 이제 다시 움직이자. 그리고 다시 0 이 되지 않기 위한 노력을 다시 해 보는 것이다. - 바다아이
 




    golang

golang - Serve a video with golang, 동영상, 미디어 파일 오픈, 열어서 브라우저에 보여주기, mp4
이 름 : 바다아이   |   조회수 : 2241         짧은 주소 : https://www.bada-ie.com/su/?101591924971
미디어 스트리밍의 원리가 되겠네요... ^^; 
요즘 대부분 브라우저가 html5 가 지원되니까요.... 
그리고 각종 미디어 플레이어들이 스트리밍을 잘 지원하니까..
아래를 참고하면 간단하게 스트리밍 서버를 만들 수 있습니다.


In my last two posts I've shown how to generate a mp4 video file. 
In this post I show some go code to serve the generated file via http. 
It basically boils down to a call of ServeContent in the http package.

package main

import (
	"flag"
	"log"
	"net/http"
	"os"
	"path"
	"time"
)

func main() {
    fileName := flag.String("f","","filename to stream")
    flag.Parse()
    if fileName==nil || *fileName=="" {
        log.Println("File needed")
        return
    }
    baseName := path.Base(*fileName)
    file,err := os.Open(*fileName)
    if err!=nil {
        log.Println("Couldn't open file",fileName)
        return
    }
    http.HandleFunc("/stream",func(w http.ResponseWriter, r *http.Request) {
        http.ServeContent(w,r,baseName,time.Unix(0,0),file)
    })
    log.Fatal(http.ListenAndServe(":8010",nil))
}

To start the program type ./prog -f cool_movie.mp4 and then enter 
http://192.168.0.1:8010/stream in a browser on your smartphone 
(assuming you PC has the IP 192.168.0.1). I've tested it with Firefox and Chrome. 
Both could play the file but Firefox has no full screen mode and thus leaves 
the navigation bars active. A resized and shrinked video isn't what you want when playing 
around with cardboard VR.
출처 : https://jluger.de/blog/20160118_serve_a_video_with_golang.html
| |


      1 page / 6 page
번 호 카테고리 제 목 이름 조회수
173 golang , String Formatting 바다아이 206
172 golang rand.Intn , random, , . 바다아이 222
171 golang golang ... 바다아이 1372
170 golang golang gopath, goroot .. 바다아이 1046
169 golang golang ... Force download file example 바다아이 1544
168 golang golang , , cpu, memory, disk 바다아이 2269
167 golang golang , ... GOOS, GOARCH 바다아이 1591
166 golang golang checkbox ... 바다아이 1822
165 golang golang , , http .... 바다아이 1758
164 golang golang nil , nil , nil ... 바다아이 1854
163 golang 2 golang, go , .... golang .... 바다아이 2659
162 golang golang postgresql, mysql, mariadb ... ` Grave () .. .. 바다아이 1936
161 golang golang postgresql mysql, mariadb scan , null .. 바다아이 2036
160 golang golang , iconv 바다아이 2174
159 golang golang quote escape, unquote 바다아이 2092
158 golang golang , http errorLog , , ... 바다아이 2200
157 golang golang interface , 바다아이 2129
156 golang golang struct .... 바다아이 2259
155 golang golang map map , 바다아이 2112
154 golang golang map .... .... 바다아이 2083
153 golang golang slice copy 바다아이 2042
152 golang golang goto 바다아이 2126
151 golang golang slice sort , int, string, float64 바다아이 2189
150 golang URL Parsing, url . parse 바다아이 2246
149 golang golang , interface{} ... 바다아이 2172
148 golang golang interface to string, , , map slice json 바다아이 2026
147 golang golang How to convert JSON string to map and slice, json 바다아이 2173
146 golang golang , file write, Writing Files 바다아이 2304
145 golang golang Insert Line or String to File, , , , , 바다아이 2054
144 golang golang replace 바다아이 2130
| |








Copyright ⓒ 2001.12. bada-ie.com. All rights reserved.
이 사이트는 리눅스에서 firefox 기준으로 작성되었습니다. 기타 브라우저에서는 다르게 보일 수 있습니다.
[ FreeBSD + GoLang + PostgreSQL ]
서버위치 : 구글 클라우드 플랫폼  실행시간 : 0.05909
to webmaster... gogo sea. gogo sea.