Adding key-frame and bitrate target option in vp8 encoder.
[libre-streamer.git] / gstream_pipeline_by_quidam
CommitLineData
6fdd41d9
DT
1Primary command (need to be enhanced):
2--------------------------------------
3One line = one pipeline
4
5gst-launch-1.0 -e rtspsrc location=rtsp://192.168.48.2:554 latency=100 ! queue ! rtpjpegdepay ! tee name=rawjpeg ! queue ! jpegdec max-errors=-1 ! tee name=rawvideo ! queue ! xvimagesink
6rawjpeg. ! queue ! matroskamux name=mux
7pulsesrc ! queue ! vorbisenc quality=0.3 ! tee name=oggaudio
8pulsesrc ! queue ! flacenc ! queue ! queue ! mux. mux. ! queue ! filesink location=popo
9rawvideo. ! videoscale ! video/x-raw, width=640, height=360 ! vp8enc min_quantizer=13 max_quantizer=13 cpu-used=5 deadline=1000000 threads=2 sharpness=7 ! queue ! webmmux name=mux2
10oggaudio. ! queue ! queue ! mux2. mux2. ! queue ! tee name=streamlo ! queue ! filesink location=popo2
11oggaudio. ! queue ! oggmux ! queue ! tee name=streamaudio ! queue ! filesink location=popo4
12streamlo. ! queue ! shout2send ip=live.fsf.org port=80 mount=testlo.ogv password=icecastfsf1
13streamaudio. ! queue ! shout2send ip=live.fsf.org port=80 mount=testaudio.ogv password=icecastfsf1
14
15##
16## TODO: Investigate double queues and double mux.
ea89aea3 17## Use multiple bins (one for each flow) and ghostpads to connect them
6fdd41d9
DT
18##
19
20Lightened command (to do CPU load benchmarking):
21Do changes here and merge it with the primary command
22-----------------------------------------------------
23gst-launch-1.0 -e rtspsrc location=rtsp://192.168.48.2:554 latency=100 ! queue ! rtpjpegdepay ! queue ! jpegdec max-errors=-1 ! tee name=rawvideo ! queue ! xvimagesink
24pulsesrc ! queue ! vorbisenc quality=0.3 ! tee name=oggaudio
25rawvideo. ! vp8enc min_quantizer=13 max_quantizer=13 cpu-used=5 deadline=1000000 threads=2 sharpness=7 ! queue ! webmmux name=mux2
26oggaudio. ! queue ! queue ! mux2. mux2. ! queue ! tee name=streamlo ! queue ! filesink location=popo2
ea89aea3
DT
27
28Latest version:
29---------------
30Multilines version (visualisation and setting):
31
32gst-launch-1.0 -e rtspsrc location=rtsp://192.168.48.2:554 latency=100 ! queue ! rtpjpegdepay ! tee name=rawjpeg ! queue ! jpegdec max-errors=-1 ! tee name=rawvideo ! queue ! xvimagesink
33pulsesrc ! queue ! vorbisenc quality=0.3 ! tee name=oggaudio
34rawvideo. ! videoscale ! video/x-raw, width=640, height=360 ! vp8enc min_quantizer=13 max_quantizer=13 cpu-used=5 deadline=1000000 threads=2 sharpness=7 ! queue ! webmmux name=mux2
35oggaudio. ! queue ! queue ! mux2. mux2. ! queue ! tee name=streamlo ! queue ! filesink location=popo2
36oggaudio. ! queue ! oggmux ! queue ! tee name=streamaudio ! queue ! filesink location=popo4
37streamlo. ! queue ! shout2send ip=live.fsf.org port=80 mount=testlo.ogv password=icecastfsf1
38streamaudio. ! queue ! shout2send ip=live.fsf.org port=80 mount=testaudio.ogv password=icecastfsf1
39
40One line version (prototyping/test):
41To fix: min_quantizer and/or max_quantizer fail the initialization of vp8enc
42
43gst-launch-1.0 -e rtspsrc location=rtsp://192.168.48.2:554 latency=100 ! queue ! rtpjpegdepay ! tee name=rawjpeg ! queue ! jpegdec max-errors=-1 ! tee name=rawvideo ! queue ! xvimagesink pulsesrc ! queue ! vorbisenc quality=0.3 ! tee name=oggaudio rawvideo. ! videoscale ! video/x-raw, width=640, height=360 ! vp8enc min_quantizer=13 max_quantizer=13 cpu-used=5 deadline=1000000 threads=2 sharpness=7 ! queue ! webmmux name=mux2 oggaudio. ! queue ! queue ! mux2. mux2. ! queue ! tee name=streamlo ! queue ! filesink location=popo2 oggaudio. ! queue ! oggmux ! queue ! tee name=streamaudio ! queue ! filesink location=popo4 streamlo. ! queue ! shout2send ip=live.fsf.org port=80 mount=testlo.ogv password=icecastfsf1 streamaudio. ! queue ! shout2send ip=live.fsf.org port=80 mount=testaudio.ogv password=icecastfsf1
5003bcae
DT
44
45Webcam feed:
46------------
47gst-launch-1.0 v4l2src device=/dev/video1 ! video/x-raw,width=640,height=480 ! queue ! xvimagesink sync=false