본문 바로가기

live5556

error: ‘struct std::atomic_flag’ has no member named ‘test’ live555 빌드할 때, 나타나는 문제. BasicTaskScheduler.cpp:191:40: error: ‘struct std::atomic_flag’ has no member named ‘test’ 191 | if (fTriggersAwaitingHandling[i].test()) { | 이전 게시물에서 이야기했던 것보다 이 방법이 좋음export CXXFLAGS="-std=c++20" 위와 같이 한 후에, 다시 make c++20으로 빌드되게 하는 것인데. 방법은 여러 가지이니 좋아하는 방식으로 합시다. 비추천 방식2023.08.30 - [놀기/잡스러운 것] - [bmNVR] LIVE555 (ubuntu 20.04) 빌드 2026. 4. 29.
[bmNVR] LIVE555 (ubuntu 20.04) 빌드 목차 1. LIVE555 다운로드busyman@busyman:~/play/bmNVR$ mkdir libbusyman@busyman:~/play/bmNVR$ cd lib/busyman@busyman:~/play/bmNVR/lib$ lsbusyman@busyman:~/play/bmNVR/lib$ mkdir LIVE555busyman@busyman:~/play/bmNVR/lib$ cd LIVE555/busyman@busyman:~/play/bmNVR/lib/LIVE555$ wget http://www.live555.com/liveMedia/public/live.2023.07.24.tar.gz--2023-08-12 09:40:33-- http://www.live555.com/liveMedia/public/li.. 2026. 4. 12.
[NVR 만들기] H.265 지원 H.264를 기본으로 보통 사용하지만 압축효율이 좋은 H.265도 많이 쓴다. 한정된 저장 공간 안에 많은 일 수의 영상을 저장하기 위해서는 당연히 압축 효율이 좋은 것이 최고다. LIVE555에서도 H.265 Transport Stream을 지원한다. bmNVR을 하면서 사용했던 testH264VideoToTransportStream와 동일한 형태의 testH265VideoToTransportStream가 sample program으로 포함되어 있다. 파일을 열어보면 라인 수도 동일하다. 차이점은 H264VideoStreamFramer를 쓰느냐 H265VideoStreamFramer를 쓰느냐의 차이다. H.264와 H.265는 NAL Type에서 달라 구분이 쉽다. 이 정보를 기반으로 어떤 Framer.. 2023. 9. 2.
[bmNVR] 수신한 데이터를 받을 Source 만들기 (ByteStreamMemoryBufferSource 참조) 앞서 테스트 프로그램으로 사용한 ts 파일을 만드는 프로그램 소스는 간단하다. RTSPClient 테스트 프로그램으로 저장한 H.264 파일을 넣으면 ts 파일을 출력해 준다. 소스도 손바닥 정도로 짤막하다. 대신, 파일을 소스로 하여 ByteStreamFileSource를 사용한다. 우리는 파일이 아닌 RTSPClient로 받은 Stream Data를 바로 전달해야 하므로 적합하지는 않다. 십여 년 전 dshow를 사용할 때는 Shared Memory를 사용하여 Sink / Source filter를 만들어 사용했는데 LIVE555에는 ByteStreamMemoryBufferSource를 제공한다. 이 클래스를 사용하면 간단하게 해결 가능할 것 같다. testH264VideoToTransportStre.. 2023. 9. 1.