# QTmux error 발생시
If your system is possible to have sudden shutdown, please use mpegtsmux or matroskamux. qtmux for generating mp4/mov requires EoS(End of Stream) event to output a valid file. mpegtsmux and matroskamux are streaming-based container, and more suitable for sudden shutdown.
## 현상
1. HDpro cam에서만 recording 하다가 정지되는 애들이 있음.
2. 그 근방에서 WARN 발생하는데,
qtmux gstqtmux.c:4832:gst_qt_mux_add_buffer:<qtmux16> error : Buffer has no PTS.
이거 뜬 이후로 녹화안됨.
3. hdpro cam은 동일한 timestamp를 가진 여러 버퍼(?)가 들어온다.
CAMERA-STATUS : CONNECTED 발생 후 , buffer has no PTS 발생, 그 후 녹화 안됨.
관련내용과 다른원인인 동일 현상을 발견했다.
이쪽에서도 같은 timestamp를가진 N개의 버퍼를 h264parse가 보게 된다.
-> In this case, h264parse sees this as N different buffers with identical timestamps.
# 위에 내용을 반영했을때, 녹화가 정상적으로 동작하는것으로 보여진다. 위 코드가 수정해 주는 부분은 buffer의 pts를 running time으로 갱신해주는 것으로 보여진다. 강제 수정하는 것보단 있는걸 활용하는게 항상 좋으니까...buffer의 pts를 보정해주는 함수는 없나?-> 있다. https://stackoverflow.com/questions/42874691/gstreamer-for-android-buffer-has-no-pts위 내용을 보니까. BaseParse.set_pts_interpolation(h264parse, true) h264parse에서 set_pts_interpolation을 true로 설정해야함.
전임자가 record_parse에 저셋팅을 했는데, 혹시 h264parse에 저 셋팅을 하면 효과가 있을까?
pts(presentation timestamp): 개념관련 좋은글 : https://gamz.tistory.com/1
미디어 관련 좋은글 : https://github.com/leandromoreira/ffmpeg-libav-tutorial/blob/master/README-ko.md
'gstreamer' 카테고리의 다른 글
동영상 포맷이해 (0) | 2022.11.29 |
---|---|
[명령어 정리] live stream 상태 체크 방법 (w. ffprobe 간단!) (0) | 2022.11.10 |
gstreamer : muxer (0) | 2022.11.10 |
gstreamer : muxer (0) | 2022.11.03 |
미디어 관련내용 정리 (0) | 2022.11.03 |