顯示具有 RTSP 標籤的文章。 顯示所有文章
顯示具有 RTSP 標籤的文章。 顯示所有文章

2024年1月17日 星期三

haskell rtp server RTP MPEG RTSP MPEG video streams

 haskell rtp server
 
 https://itecnote.com/tecnote/open-source-rtsp-rtp-stack-with-c-language/

(PDF) Real-time MPEG-2 delivery based on RTPAcademia.eduhttps://www.academia.edu › Real_time server system that uses RTP's payload for- have fallen to the same range as PCs ... Haskell, RTP payload Proceedings of the IEEE Visual Sign. Proc. And Comm ...

(3) WebRTC data channels implementation in Haskell? : haskell
    https://github.com/oherrala/haskell-stun
    https://hackage.haskell.org/package/socket-sctp
    https://github.com/rawrtc/rawrtc
    https://github.com/xhs/librtcdc
    https://webrtc.googlesource.com/src/
    https://github.com/EricssonResearch/openwebrtc
    https://datatracker.ietf.org/doc/draft-ietf-rtcweb-data-channel/

parsing an IP 4 header in Erlang:

 parse_ip4(<<4:4/integer,  % IP Version: this matches a literal '4' from the first 4 bits!!!!!!! HOw awesome is this!?
             HeaderLen:4/integer,    % 4 bits of header as integer
             Tos:8/integer,       
             PacketLen:16/big-integer,  
             FragmentId:16/big-integer,
             Flags:2/integer,           
             MoreFragments:1/integer,   
             Offset:13/big-integer,
             TTL:8/integer,         
             UpperLayerProtocol:8/integer,
             Checksum:16/big-integer,
             SrcIp:32/big-integer,
             DstIp:32/big-integer,
             Options/binary>>) ->
     AAC/MP4/DASH  RTP streams GADTs SCTP TLS/DTLS TFTP server HTTP/HTTPS using servant.GHC runtime
http://erlang.org/doc/programming_examples/bit_syntax.html
https://viinex.com/middleware-for-video-surveillance/streaming-video/

https://datatracker.ietf.org/doc/html/rfc2343
                  RTP Payload Format for Bundled MPEG
https://datatracker.ietf.org/doc/html/rfc2250
                RTP Payload Format for MPEG1/MPEG2 Video
https://datatracker.ietf.org/doc/html/rfc2038
                RTP Payload Format for MPEG1/MPEG2 Video

RTP Payload Format datatracker.ietf

RFC 7798 - RTP Payload Format for High Efficiency Video ...
IETF Datatracker https://datatracker.ietf.org › doc › rfc7...Standards Track [Page 31] RFC 7798 RTP Payload Format for HEVC March 2016 4.4.4. ... About IETF Datatracker Version 12.2.0 (release - 9e0d937) Report a bug ...

RFC 6184 - RTP Payload Format for H.264 Video
IETF Datatracker https://datatracker.ietf.org › doc › html RFC 6184 RTP Payload Format for H.264 Video May 2011 Macintosh file type ... Datatracker. RFC 6184. Proposed Standard. Info; Contents; Prefs. Document, Document ...

RTP Payload Format for Versatile Video Coding (VVC)
IETF Datatracker https://datatracker.ietf.org › rfc9328  Eleftheriadis, "RTP Payload Format for Scalable Video Coding", RFC ... About IETF Datatracker Version 12.2.0 (release - 9e0d937) Report a ...

https://haskell-language-server.readthedocs.io/en/latest/what-is-hls.html
https://haskell-language-server.readthedocs.io/en/latest/configuration.html
https://github.com/haskell/haskell-language-server/tree/master

mediabus-rtp :: Stackage Server
https://www.stackage.org/lts-9.21/package/mediabus-rtp-0.4.0.1
Data.MediaBus
        Data.MediaBus.Rtp
            Data.MediaBus.Rtp.AlawSource
            Data.MediaBus.Rtp.Packet
            Data.MediaBus.Rtp.Source
https://github.com/sheyll/mediabus-rtp
https://www.stackage.org/lts-9.0
LTS Haskell 9.0 (ghc-8.0.2) :: Stackage Server
https://www.stackage.org/lts-9.0/hoogle?q=+Haskell+

https://stackoverflow.com/questions/39233889/parse-pcm-audio-data-from-rtp-packet

c - Parse PCM audio data from RTP packet - Stack Overflow
https://en.wikipedia.org/wiki/Real-time_Transport_Protocol#Packet_header
https://trac.ffmpeg.org/wiki/Using%20libav*
https://stackoverflow.com/questions/10715170/receiving-rtsp-stream-using-ffmpeg-library

Multimedia Over IP: RSVP, RTP, RTCP, RTSP
https://www.cse.wustl.edu/~jain/cis788-97/ftp/ip_multimedia/index.html


    RFC 2205,  Resource ReSerVation Protocol (RSVP) -- Version 1 Functional Specification
    RFC 2206,  RSVP Management Information Base using SMIv2 (RFC 2206)
    RFC 2207,  RSVP Extensions for IPSEC Data Flows
    RFC 2208,  RSVP Version 1 Applicability Statement Some Guidelines on Deployment
    RFC 2209,  RSVP Version 1 Message Processing Rules

    RFC 1889, RTP: A Transport Protocol for Real-Time Applications
    RFC 1890, RTP Profile for Audio and Video Conferences with Minimal Control

https://en.wikipedia.org/wiki/Application-level_gateway

High quality IP video streaming with adaptive packet marking | Proceedings of the 3rd international conference on quality of future internet services and internet charging and QoS technologies 2nd international conference on From QoS provisioning to QoS charging
https://dl.acm.org/doi/abs/10.5555/1754656.1754666

https://itecnote.com/tecnote/open-source-rtsp-rtp-stack-with-c-language/
Open source RTSP/RTP stack with C language – iTecNote
http://www.live555.com/
https://itecnote.com/tecnote/r-how-to-initialize-a-struct-in-accordance-with-c-programming-language-standards/

https://gcc.gnu.org/onlinedocs/gcc/index.html#SEC_Contents
https://gcc.gnu.org/onlinedocs/gcc/Designated-Inits.html

MPEG RTP Generation Module
https://www.cs.columbia.edu/~hgs/teaching/ais/1998/projects/mpegRTP/report.html
In this project, a software module that splits an MPEG file into
individual frames and wraps each into the necessary RTP payload and sets
the fields of fixed RTP header and extension header for MPEG stream
according to the packeting rules and header field format described in
RFC2038 was developed. This module can be intergrated to RTSP server or
any generic server that delivers MPEG video streams onto network. Simple
RTP player was also developed for dumping MPEG RTP packets and verifying
the RTP-packetized MPEG video stream that it received.
Background
    RTP
    MPEG
    RTSP
Internet RFCs
    RFC 1889
    RFC 1890
    RFC 2250
[1] H. Schulzrinne, S. Casner, R. Frederick, V. Jacobson, "RTP: A Transport Protocol for
Real-Time Applications," RFC 1889, January, 1996.
[2] D. Hoffman, G. Fernando, V. Goyal and M. Civanlar, "RTP payload format for
MPEG1/MPEG2 video," RFC 2250, Internet Engineering Task Force, January , 1998.
[3] Barry G. Haskell, Atui Puri, and Arun N. Netravli, "Digital Video: An Introduction
To MPEG-2", 1997
[4] H. Schulzrinne, A. Rao, R. Lanphier, "Real Time Streaming Protocol (RTSP)", RFC 2326,
Internet Engineering Task Force,April 1998
[5] H. Schulzrinne, "RTP Profile for Audio and Video Conferences with Minimal Control",
RFC 1890, January 1996.
[6] RTP Resource http://www.cs.columbia.edu/~hgs/rtp/
[7] RTSP Resource http://www.cs.columbia.edu/~hgs/rtsp/



Wireplumber PipeWire  Helvum   qpwgraph Multimedia multimedia framework.
https://wiki.archlinuxcn.org/zh-tw/PipeWire
    PipeWire/Examples
    WirePlumber
PipeWire 是一個新的底層多媒體框架。 它旨在以最低的延遲為音頻和視頻提供錄製和播放功能,並支持基於 PulseAudio、JACK、ALSA 和 GStreamer 的應用程式。

基於該框架的守護進程可以配置為音頻伺服器(具有 PulseAudio 和 JACK 特性)和視頻錄製伺服器。

PipeWire 還支持像 Flatpak 這樣的容器,不依賴於 audio 和 video 用戶組。 相反,它採用了類似於 Polkit的安全模式,向 Flatpak 或 Wayland 請求許可以錄製屏幕或音頻。
Toolchain, GCC 12.1, Wireplumber 0.4.10, Haskell, Python
https://forum.manjaro.org/t/unstable-update-2022-05-11-toolchain-gcc-12-1-wireplumber-0-4-10-haskell-python/110501
Wireplumber PipeWire  Helvum   qpwgraph
https://github.com/mikeroyal/PipeWire-Guide
https://blogs.gnome.org/uraeus/category/pipewire/


webrtc server open source
Kurento WebRTC Media Server
Mediasoup
 Open WebRTC Toolkit (OWT)
Jitsi Video Bridge
Janus - General purpose WebRTC server
https://janus.conf.meetecho.com/docs/index.html
https://github.com/meetecho/janus-gateway

https://github.com/8xFF/atm0s-media-server?trk=article-ssr-frontend-pulse_x-social-details_comments-action_comment-text
https://sfu.mirotalk.com/?trk=article-ssr-frontend-pulse_x-social-details_comments-action_comment-text



2024年1月15日 星期一

speech segmentation speech segmenting algorithm

https://www.researchgate.net/publication/221258872_a_simple_but_effective_approach_to_speaker_tracking_in_broadcast_news

https://www.researchgate.net/figure/automatic-segmentation-of-the-audio-recorded-in-the-cafeteria-noisy-environment-by_fig2_323155847

https://genekogan.com/works/field-rec-navigator/
Visualizing my field recordings
https://www.jyu.fi/hytk/fi/laitokset/mutku/en/research/materials/mirtoolbox
automatically segmented the raw recordings segmentation algorithm
https://sourceforge.net/projects/supercollider/
https://en.wikipedia.org/wiki/Principal_component_analysis
https://en.wikipedia.org/wiki/Music_information_retrieval

https://lgm.fri.uni-lj.si/research/segmentation-of-field-recordings/
Segmentation of field recordings — LGM

https://yaiglobal.com/index.php/component/k2/item/5-audio-segmentation

 https://www.researchgate.net/figure/audio-onset-segmentation-dashed-lines-variable-window-length-segmentation-empty_fig1_252187078


http://recherche.ircam.fr/equipes/temps-reel/audio-mosaicking/
Real-Time Audio Mosaicking
MFCC based Frame by Frame Audio Mosacing MEL-frequency cepstrum coefficients (MFCC).

Semi-supervised feature selection for audio classification based on constraint compensated Laplacian score | EURASIP Journal on Audio, Speech, and Music Processing | Full Text
figure 5  Accuracy as a function of the number of selected features
https://asmp-eurasipjournals.springeropen.com/articles/10.1186/s13636-016-0086-9



QUIC TCP BBR HTTPS TLS tcp protocol sctp quic fast internet stream protocol bbr algorithm load balancer most fast protocol optimization network performance algorithm

 https://en.wikipedia.org/wiki/QUIC


BBR(Bottleneck Bandwidth and Round-trip propagation time) algorithm
數據擁塞控制協定 Datagram Congestion Control Protocol, DCCP
HTTPS TLS tcp protocol sctp quic
fast internet stream protocol bbr algorithm
load balancer most fast protocol optimization network performance algorithm

HTTP/3 HTTP/2 SPDY  UDT
TLS DTLS
https://en.wikipedia.org/wiki/Stream_Control_Transmission_Protocol
https://en.wikipedia.org/wiki/SPDY
https://en.wikipedia.org/wiki/Transport_layer

fast Protocol that replaces Low-Latency
BBR Modification 
Fast-Varying algorithm
Low-Latency BBR Modification
Fast-Varying Connections

https://en.wikipedia.org/wiki/Reliable_User_Datagram_Protocol
UDP  UDP-Lite  TCP  Multipath-TCP  SCTP  DCCP  RUDP

https://news.ycombinator.com/item?id=18519459
Indeed, nearly all FPS/MMO/RTS games are realtime and need UDP, only some messag... | Hacker News

https://en.wikipedia.org/wiki/Multipath_TCP



RealTime Servers and Reliable UDP
https://repost.aws/zh-Hant/questions/QURZJYNXN4St-AdQbuV6WTAw/realtime-servers-and-reliable-udp

Low-level RUDP Libraries
Name    Language    Encryption
Ruffles    C#    n/a
LiteNetLib    C#    AES or XOR
Lidgren.Network    C#    AES
Hazel-Networking fork    C#    DTLS
ENet    C    n/a
ENet-CSharp    C#    n/a
KCP    C    n/a

Ruffles - https://github.com/MidLevel/Ruffles
LiteNetLib - https://github.com/RevenantX/LiteNetLib
Lidgren.Network (maintain mode) - https://github.com/lidgren/lidgren-network-gen3
Hazel-Networking (fork) - https://github.com/willardf/Hazel-Networking
ENet - https://github.com/lsalzman/enet
ENet-CSharp - https://github.com/nxrighthere/ENet-CSharp

KCP
    https://github.com/skywind3000/kcp/blob/master/README.en.md
    https://github.com/vis2k/kcp2k/ (C# port)
    https://github.com/leenjewel/node-kcp (node wrapper)

High-Level Network Solution that supports RUDP

Opus audio Codec Speex Vorbi RFC 6716 Modern audio compression for the internet. VOIP AUDIO Codec OPUS CODEC (IP Phone音訊格式) OPUS Codec: Clear, Adaptable Voice for Mobile VoIP Opus audio codec developed by the Internet Engineering Task Force (IETF), ... stored at \App\Client\Test\Testvecs\ ...

 http://www.foveon.de/sonstiges/opusdrop/index.htm

https://de.wikipedia.org/wiki/Opus_%28Audioformat%29

https://docs.omniverse.nvidia.com/kit/docs/carbonite/latest/docs/audio/Basics.html

https://e2e.ti.com/blogs_/b/process/posts/swiss-army-knife-of-audio-codecs

https://en.wikipedia.org/wiki/Data_compression#Lossy_audio_compression

Opus  splitter audio codec voip rtp

https://stackoverflow.com/questions/34506330/sending-naudio-opus-encoded-audio-from-device-as-rtp
https://www.rfc-editor.org/rfc/rfc3550
https://datatracker.ietf.org/doc/html/rfc6716
Open Interactive Audio Codec
https://github.com/DevJohnC/Opus.NET
Play or Capture Audio Sound. Send and Receive as Multicast (RTP)
https://www.codeproject.com/Articles/394890/Play-or-Capture-Audio-Sound-Send-and-Receive-a

https://stackoverflow.com/questions/2637697/sending-udp-packet-in-c-sharps-Mu


medium  audio data classification  voice signal data  divide  frame splitter  audio codec
https://onkar-patil.medium.com/how-to-remove-silence-from-an-audio-using-python-50fd2c00557d
https://medium.com/analytics-vidhya/deep-learning-audio-classification-fcbed546a2dd

https://paperswithcode.com/dataset/timit
https://www.researchgate.net/figure/The-method-of-divide-the-audio-signal-into-phonemes-with-use-video-frame_fig2_262360598
https://towardsdatascience.com/decoding-the-symphony-of-sound-audio-signal-processing-for-musical-engineering-c66f09a4d0f5
https://www.researchgate.net/figure/top-A-part-of-a-speech-signal-from-TIMIT-database-Manually-positioned-phoneme_fig1_264936933
Silence detection - VoIPmonitor.org Silence detection - VoIPmonitor.org
https://www.voipmonitor.org/doc/Silence_detection
https://www.soundonsound.com/sound-advice/q-whats-difference-between-detect-silence-and-hitpoints-cubase

https://www.techtarget.com/searchnetworking/definition/orthogonal-frequency-division-multiplexing

voice signal data  divide  frame splitter  audio codec  ring buffer wrap-around discontinuity zero crossing clipping
Basics of Audio Processing — carbonite 162.0 documentation
https://docs.omniverse.nvidia.com/kit/docs/carbonite/latest/docs/audio/Basics.html
Record of pcm ring buffer in alsa - Programmer Sought
https://programmersought.com/article/45685377190/
https://blog.risa.com/post/what-are-the-ramp-up-coast-down-functions-in-time-history


audio Packages DLL music Audio libraries library

 SEARCH Packages  Linux  Unix
https://slackbuilds.org/result/?search=audio&sv=15.0
https://pkgs.org/download/libopenshot-audio

https://en.wikipedia.org/wiki/Category:Audio_libraries
https://en.wikipedia.org/wiki/Category:Video_game_music_technology
category is Audio library.Pages in category "Audio libraries"

 BASS
 ClanLib
 DirectSound
 Enlightened Sound Daemon
 FMOD
 JACK Audio Connection Kit
 Libavcodec
 Miles Sound System
 Open Sound System
 OpenAL
 OpenSL ES
 PulseAudio
 Raylib
 Simple DirectMedia Layer
 UFMOD

Audio libraries Raylib ClanLib Libavcodec PulseAudio
https://packages.altlinux.org/en/p10/srpms/libopenshot-audio/
https://ru.wikipedia.org/wiki/%D0%9A%D0%B0%D1%82%D0%B5%D0%B3%D0%BE%D1%80%D0%B8%D1%8F:%D0%90%D1%83%D0%B4%D0%B8%D0%BE%D0%B1%D0%B8%D0%B1%D0%BB%D0%B8%D0%BE%D1%82%D0%B5%D0%BA%D0%B8

libopenshot-audio JUCE  audio  library

audio/opus-tools
https://en.wikipedia.org/wiki/Opus_(audio_format)
https://wiki.xiph.org/Opus-tools

libs For Qt5. pulseaudio  qt
https://archlinux.org/packages/extra/x86_64/pulseaudio-qt/
https://packages.fedoraproject.org/pkgs/pulseaudio-qt/pulseaudio-qt-qt5/

https://github.com/OpenShot/libopenshot-audio
OpenShot Audio Library libopenshot-audio OpenShot Audio Library (libopenshot-audio) is a free, open ...
GitHub https://github.com › OpenShot › libope...
OpenShot Audio Library (libopenshot-audio)


https://www.haskell.org/
haskell Packages bindings audio haskell  bindings audio
https://hackage.haskell.org/package/htaglib
https://hackage.haskell.org/package/jack

 Octave packages audio Audio and MIDI Toolbox for GNU Octave. SHA256

https://en.wikipedia.org/wiki/UFMOD


pectrum-devel pkgs top-level/all-packages
https://spectrum-os.org/lists/archives/spectrum-devel/c22a62456db/s/?b=pkgs/top-level/all-packages.nix

https://discourse.julialang.org/t/package-trouble-again/104977


https://ctepp.calstate.edu/tlab-change-packages

Steam Audio supports the following platforms:

 https://valvesoftware.github.io/steam-audio/doc/capi/getting-started.html
Steam Audio supports the following platforms

Steam Broadcasting
Steam Support
https://help.steampowered.com › view
 
Steam Broadcasting is currently supported by the following browsers: Steam Client; Google Chrome (version 39+); Apple Safari (version 8+ on macOS); Internet ...

Modern audio compressioninternet. Opus audio format Opus lossy audio coding format Xiph.Org Foundation standardized code speech

 https://en.wikipedia.org/wiki/Opus_(audio_format)
Opus (audio format) - Wikipedia
Opus is a lossy audio coding format developed by the Xiph.Org Foundation and standardized by the Internet Engineering Task Force, designed to efficiently code speech and general audio in a singl

xiph/opus: Modern audio compression for the internet.

Opus Codec
https://opus-codec.org/



Opus Interactive Audio Codec
Overview

Opus is a totally open, royalty-free, highly versatile audio codec. Opus is unmatched for interactive speech and music transmission over the Internet, but is also intended for storage and streaming applications. It is standardized by the Internet Engineering Task Force (IETF) as RFC 6716 which incorporated technology from Skype’s SILK codec and Xiph.Org’s CELT codec.
Technology

Opus can handle a wide range of audio applications, including Voice over IP, videoconferencing, in-game chat, and even remote live music performances. It can scale from low bitrate narrowband speech to very high quality stereo music. Supported features are:

    Bitrates from 6 kb/s to 510 kb/s
    Sampling rates from 8 kHz (narrowband) to 48 kHz (fullband)
    Frame sizes from 2.5 ms to 60 ms
    Support for both constant bitrate (CBR) and variable bitrate (VBR)
    Audio bandwidth from narrowband to fullband
    Support for speech and music
    Support for mono and stereo
    Support for up to 255 channels (multistream frames)
    Dynamically adjustable bitrate, audio bandwidth, and frame size
    Good loss robustness and packet loss concealment (PLC)
    Floating point and fixed-point implementation

2024年1月13日 星期六

rtsp Streaming Media streaming library LIVE555 Media Server Proxy Server HLS Proxy vobStreamer streaming DVD RTP/RTCP/RTSP

https://en.wikipedia.org/wiki/Real-Time_Streaming_Protocol
LIVE555 Streaming Media
This code forms a set of C++ libraries for multimedia streaming, using open standard protocols (RTP/RTCP, RTSP, SIP). These libraries - which can be compiled for Unix (including Linux and Mac OS X), QNX (and other POSIX-compliant systems) - can be used to build streaming applications. The libraries are already being used to implement applications such as the "LIVE555 Media Server", "LIVE555 Proxy Server", and "LIVE555 HLS Proxy" and "vobStreamer" (for streaming DVD content using RTP/RTCP/RTSP). The libraries can also be used to stream, receive, and process MPEG, H.265, H.264, H.263+, DV or JPEG video, and several audio codecs. They can easily be extended to support additional (audio and/or video) codecs, and can also be used to build basic RTSP or SIP clients and servers, and have been used to add streaming support to existing media player applications, such as "VLC" and "MPlayer". (For some specific examples of how these libraries can be used, see the test programs below.)
https://girishjoshi.io/post/stream-a-video-over-rtsp-using-live555mediaserver/

串流伺服器特性剖析 - 國立交通大學國立陽明交通大學機構典藏 https://ir.nctu.edu.tw › bitstreamPDF由 吳宗修 著作 · 2006 — A streaming server will consists of three important modules, they are " Set up a standard connection procedure "," RTSP Signaling Negotiation " and " packet ...

https://github.com/bluenviron/mediamtx
RTSP Pull - OvenMediaEngine
https://airensoft.gitbook.io/ovenmediaengine/live-source/rtsp-pull-beta
https://gstreamer.freedesktop.org/documentation/gst-rtsp-server/rtsp-server.html?gi-language=c
https://github.com/aler9/rtsp-simple-proxy

RTSP/RTP streaming support for MPlayer
http://www.live555.com/mplayer/
RTSP SDK Libraries for Windows, .NET 6+, .NET Framework, C#, VB, C/C++, and Python | LEADTOOLS
https://www.leadtools.com/sdk/multimedia/streaming/rtsp



Managed Media Aggregation using Rtsp and Rtp - CodeProject
https://www.codeproject.com/Articles/507218/Managed-Media-Aggregation-using-Rtsp-and-Rtp


RTSP & RTP Client, Broadcaster & Server Library | VASTreaming
https://www.vastreaming.net/rtsp-library.html
rtsp RTP  Streaming Media  streaming library

https://github.com/ekumenlabs/AndroidStreamingClient/blob/master/android_streaming_client/src/main/java/com/c77/androidstreamingclient/lib/rtp/RtpMediaDecoder.java
 android streaming client lib
 DataPacketTracer
 MediaExtractor
 RtpMediaDecoder
 RtpMediaExtractor
streaming data packet tracer decoder extractor Naishy/rtpsplit: RTP stream extractor GitHub - Linaro/OpenCSD: CoreSight trace stream decoder


rtp streaming data extractor
https://wiki.wireshark.org/rtp_statistics