coldmine / lv

a light movie and sequence player
Other
4 stars 1 forks source link

shiny를 이용해 이미지 시퀀스를 24프레임으로 재생해보기 #9

Closed khw7096 closed 8 years ago

khw7096 commented 8 years ago

만약 성공한다면 23.97f로도..

khw7096 commented 8 years ago

mpv나 ffmpeg에서 이부분 어떻게 처리되고 있는지 살펴보기

redbean commented 8 years ago

Tick event 를 사용해서 다음장의 그림을 업데이트 하는 걸 생각하고 있습니다. 틱을 찾고 있는데 잘 안보이네요..

내일 회사가서 언리얼 내부에서는 틱을 어떻게 구현했나 볼께요

redbean commented 8 years ago

일단 언리얼이 지금은 제일 찾기 쉬운고로 ㅋㅋㅋ

kybin commented 8 years ago

go에는 time.Ticker가 있어요. 하지만 제가 원하는건 부드러운 재생이라서 조금더 찾아보고 있어요. Ticker가 1/24초로 되어있다고 하더라도, 하드웨어의 제약때문에 정확히 플레이 되지 않을것 같아서요.

redbean commented 8 years ago

하드웨어의 제약이라면 이미지 읽고 쓰기 부분에 대한 건가요?

kybin commented 8 years ago

생각해보니 최초에는 Ticker로 구현하는것도 괜찮을것 같아요. 문제가 있다면 더 수정하면 되니까요. 이미 Ticker가 그 부분을 해결해 주고 있을수도 있고.

kybin commented 8 years ago

제가 얘기하는 하드웨어의 제약이란 time.Sleep(1s)를 하더라도 컴퓨터가 정확하게 1초를 자지는 않을거 같다는 말이에요.

분명히 더 자거나 덜 잘텐데, 이게 처음엔 조금이지만 누적되면 2시간짜리 영화가 2시간 10분이 될수도 있는거니까요.

redbean commented 8 years ago

아하 이해가 됐어요

redbean commented 8 years ago

How many ticks are in a second? - C# / C Sharp https://bytes.com/topic/c-sharp/answers/589961-how-many-ticks-second

C샵에서만인지는 모르겠는데 초당 1천만 틱이라고 하네요. 그리고 프로세서속도와 pc클록의 의존도 없다고 합니당. 혹시 고에서는 어떤가요?

만약 똑같은 조건이면 더 사용하기 쉽지 않을까 생각합니다

kybin commented 8 years ago

time.Ticker를 테스트 해본결과 꽤 정확성이 높네요. 틱커를 켜둔 시간에 상관없이 차이는 항상 80나노초 정도네요.

khw7096 commented 8 years ago

0d3362a 부분을 테스트해봤어요. 클릭해봐용

redbean commented 8 years ago

https://github.com/mpv-player/mpv/blob/master/player/playloop.c

Mpv의 플레이관련 이네요.

kybin commented 8 years ago

일단 구현됐으니 닫을게요. 나중에 사안마다 추가적인 이슈를 만들죠.