본문으로 바로가기

MP4 스트림 Hint 주기

category Media/Encoding 2019. 12. 13. 11:07
반응형

mp4파일을 웹서버에 올리고 클라이언트에서 브라우저로 재생시킬때 구간 skip 시킬때, 스트림 방식이 안되고 다운로드후 재생이 기본이다.

그래서 Hint를 줘서 구간이동시 바로바로 재생이 되는 스트림방식으로 변경해준다.

 

하나의 파일에 한번이상 적용하면 사운드가 깨지니 꼭 1회 적용으로 끝내야한다.

만약을 대비해 원본은 두고 복사본으로 작업하는게 좋다.

 

나는 jwplayer로 웹서버에서 mp4들을 스트리밍하고있다.

 

준비물.

mp4box가 필요하다.

https://gpac.wp.imt.fr/downloads/gpac-nightly-builds/

 

GPAC Nightly Builds | GPAC

 

gpac.wp.imt.fr

에서 다운받아서 설치를 하고 필요한것만 빼고 다시 지우면된다.

 

그래서 아래와 같이 필요한것만 뽑아두었다.

mp4box2019.zip
3.95MB

 

간혹 vc 라이브러리 등이 설치되어있지않을때 안될수도있기에 , 구버전도 올려둔다.

Mp4BOX_old.zip
3.61MB

 

commandline 명령어

for %a in (*.mp4) do mp4box -hint "%~Na.mp4"

 

배치파일명령어

배치파일에서 쓸때는 %%로 들어가야한다.

for %%a in (*.mp4) do mp4box -hint "%%~Na.mp4"

 

첨부한 압축파일을 폴더에 풀고 해당폴더에 mp4파일을 두면된다.(mp4파일은 사본으로 작업하자)

 

 

MP4Hint.CMD 내용

 

::mp4box.exe와 동일 위치에 두고 실행하면 된다.
::폴더안에 스트리밍을 위한 hint를 줄 mp4파일을 여러개 두면
::일괄 모든 파일을 처리한다.

pushd %~dp0
for %%a in (*.mp4) do mp4box -hint "%%~Na.mp4"
exit

---------------------------------------

여기서 나는 원본과 hint 준것을 별도로 두기 위해서

완료된것은 complete폴더를 만들고 파일명에 _h를 붙이고, 폴더속으로 이동시키게 했다.

 

A인코딩및이름변경_h.CMD 내용

::mp4box.exe와 동일 위치에 두고 실행하면 된다.
::폴더안에 스트리밍을 위한 hint를 줄 mp4파일을 여러개 두면
::일괄 모든 파일을 처리한다.


pushd %~dp0
if not exist complete mkdir complete

for %%a in (*.mp4) do mp4box -hint "%%~Na.mp4"
for %%a in (*.mp4) do ren "%%~Na.mp4" "%%~Na_h.mp4"
for %%a in (*_h.mp4) do move "*_h.mp4" .\complete
exit

 

 

 

두개의 CMD중 하나만 사용하자

 

반응형