java
-
자바(JAVA) mp4 파일 video control 속성 적용JAVA/컨셉 , 예제 2020. 2. 19. 14:01
동영상 파일을 재생할 때, 특정 구간을 동작시켜야 하는 일이 생겼다 (유튜브에서 시간대 하이퍼링크 클릭 기능) 이에 따라 html5의 video 태그 사용해 해결하려고 했는데, 태그에서 플레이를 제외한 기능에 대해 동작하지 않는 것을 알게 됐다 ㅠ 자바에서 ResponseEntity 이용해 다운로드 기능 개발해둔 상태였고, 크롬에서 요청하면 다음 영상과 같이 플레이 / 정지 이외의 기능은 사용하지 못했다. https://stackoverflow.com/questions/8088364/html5-video-will-not-loop HTML5 video will not loop I have a video as a background to a web page, and I am trying to get it t..
-
구글 STT 타임스탬프(Timestamp) 예제 (Speech to text API) 로컬 파일 사용, 1분 미만 짧은 오디오 파일JAVA/컨셉 , 예제 2020. 1. 25. 18:00
구글 STT 사용 예제. 짧은 음원 파일에서 텍스트 및 해당 텍스트 나온 시간까지 캐치할 수 있다 JAVA 1.8, 윈도우 환경에서 진행했고, 동영상 파일에서 음원 추출한 파일을 파라미터로 사용했다. STT 사용하기 위해 구글 클라우드 플랫폼 등록해야 하는데 그 과정은 구글링하면 많이 나와 생략. 간단하게 순서만 말하자면 1. 구글 계정 생성 2. 구글 클라우드 플랫폼 결제방식 등록 (카드 번호) > 체험판 사용 가능하지만 나중에 비용 발생 3. 프로젝트 생성 및 활성화 4. IAM 설정 및 인증서 발급 (JSON 파일) 5. GOOGLE CREDENTIAL 환경 설정 ( 4번에서 IAM 설정시 발급받은 JSON 파일) > 사용 권한 및 비용 산정 위해 https://cloud.google.c..
-
Jave 예제 (동영상파일에서 음원 추출)JAVA/컨셉 , 예제 2020. 1. 25. 17:52
회사에서 업무 중 stt 기술 적용 시켜야 할 일이 있었다. 텍스트 뿐 아니라 타임스탬프까지 기록하고 싶었는데, google cloud platform에서 지원하고 있었고, 이를 적용시키는 와중 동영상에서 raw 음원 파일 추출해주는 라이브러리가 있어 소개 내가 해결해야 하는 이슈는 - 동영상(.mp4) 파일에서 음원파일을 추출해야 하는 것 (google에서는 wav, flac 등 음원파일만을 파라미터로 허용) 이었고, 이를 JAVE 라이브러리를 통해 해결했다. 자바 버전 1.7에서 동작 확인 http://www.sauronsoftware.it/projects/jave/ 홈페이지 접속해서 바이너리 파일 받으면, jar 파일이 있다. 이를 외부 라이브러리로 등록하면 it.sauronsof..
-
제이슨(JSON), 에이작스(Ajax) 예제.Web/JSON, Ajax 2018. 9. 6. 10:22
제이슨은 데이터의 전송형태이다. 각종 브라우저 뿐 아니라 모든 언어에서 제이슨 객체(JSON)를 지원하기 때문에 서버에서 데이터를 제이슨 형태로만 전송한다면 클라이언트의 언어에 구애받지 않고 parse 함수를 이용해 데이터를 추출해 사용할 수 있는 것이다. 데이터 전송 형태의 표준정도로 생각해도 큰 무리가 없다고 생각한다. 에이작스 또한 제이슨을 이용해 데이터를 제어하는 대표적 비동기통신 기법이다. 에이작스는 Asynchronous JavaScript And XML의 약어로 자바스크립트를 이용해 서버와 비동기통신을 지원하기 위한 클라이언트 통신기법이다. 비동기통신이란 일반적으로 코드의 라인대로 실행되는 함수들과 달리 실행되는 때를 알 수 없는 경우를 제어하기 위해 제공되는 통신기법을 말한다. 대표적인 것..
-
서블릿(Servlet) 예제Web/Servlet 2018. 9. 4. 17:00
java와 jsp 두가지 언어가 혼합되어 있는 코드 작성 방식을 Model 1이라고 한다. 코드가 길어지면 굉장히 복잡해져 알아보기 힘들어지는 경우가 빈번하다. 이를 극복하기 위해 jsp와 java를 분리하려는 시도를 했고, 그 결과 등장한 객체가 서블릿(servlet)이다. Client는 URL을 통해 원하는 파일의 정보를 요청(Request)한다. 이때 Tomcat은 Client로부터 받은 URL을 통해 서버에 요청한 파일이 있는지 없는지 확인하고 그에 대한 결과를 Client에 반환(Response)하는 역할을 한다. 이것이 HTTP의 기본 동작 원리이다. 이러한 요청들 중 특정 url들에 대해서 Web.xml에 등록을 해놓으면 해당 url에 대해서는 Tomcat이 아닌 Servlet을 통해 브라우..
-
(Servlet) 서블릿 필터 (Filter) 예제Web/Servlet 2018. 9. 4. 16:52
톰캣(Tomcat)에서 url 요청을 받으면 web.xml에 등록되어 있는 url pattern에 대해서는 해당 서블릿이 수행돼 그 결과를 response 객체에 담아 톰캣에 반환한다. 이때 필터(Filter)를 두어 서블릿들에서 중복되는 로직을 한번에 처리할 수 있다. 필터에는 주로 인코딩, 로그인 체커 로직을 담는다.필터 또한 web.xml에 등록되어 있으며, web.xml에서 호출 우선순위가 서블릿보다 높음을 짐작할 수 있다. 작성 절차 1. common.web 패키지 만들어 관리한다. 만든 common.web 패키지에 마우스 오른쪽 - New - Others 클릭2. filter 입력해 찾아 클릭 후 Next3. 이름 입력 후 Next4. url 자동 작성 되어 있다. Edit 버튼 클릭5. ur..
-
서블릿(Servlet) 경로 (Context path, Context root) , web.xmlWeb/Servlet 2018. 9. 4. 16:48
서블릿이 익숙하지 않은 경우 파일 경로에 대한 고민을 분명히 할 것이다. 필수적인 위치명 두가지 Context path와 Context root 에 대해 설명. Context Path : 프로젝트 명을 의미하며 url의 호스트, 포트명 다음에 나온다. Context root : Content directory의 경로. 해당 경로에 메타 정보와 웹 정보를 관리하는 META-INF와 WEB-INF 파일이 자동생성되며 JSP파일은 여기 하위에 저장되어야 경로를 찾을 수 있다. Dynamic web project 생성시 마지막 페이지이다. 작성 중 url mappings는 path로 설정했다. 따라서 이를 url에 넣어줘야 한다. Context root와 Content directory의 경로를 설정할 수 있는..