
Recherche avancée
Autres articles (43)
-
La file d’attente de SPIPmotion
28 novembre 2010, parUne file d’attente stockée dans la base de donnée
Lors de son installation, SPIPmotion crée une nouvelle table dans la base de donnée intitulée spip_spipmotion_attentes.
Cette nouvelle table est constituée des champs suivants : id_spipmotion_attente, l’identifiant numérique unique de la tâche à traiter ; id_document, l’identifiant numérique du document original à encoder ; id_objet l’identifiant unique de l’objet auquel le document encodé devra être attaché automatiquement ; objet, le type d’objet auquel (...) -
Websites made with MediaSPIP
2 mai 2011, parThis page lists some websites based on MediaSPIP.
-
List of compatible distributions
26 avril 2011, parThe table below is the list of Linux distributions compatible with the automated installation script of MediaSPIP. Distribution nameVersion nameVersion number Debian Squeeze 6.x.x Debian Weezy 7.x.x Debian Jessie 8.x.x Ubuntu The Precise Pangolin 12.04 LTS Ubuntu The Trusty Tahr 14.04
If you want to help us improve this list, you can provide us access to a machine whose distribution is not mentioned above or send the necessary fixes to add (...)
Sur d’autres sites (7175)
-
Does ffmpeg rtp_mpegts muxer support setting DVB triplet ?
19 février 2021, par drake7It seems ffmpeg lets you set the DVB triplet with UDP but not with RTP.


FYI : This is a followup on my findings about the
rtp_mpegts
muxer compared to thempegts
muxer : Question

In my tests I was using
ffmpeg version 4.3.1-2021-01-01-full_build-www.gyan.dev
on windows.

findings


I analyzed my streams with
dectec
's "StreamXpert" :

- 

-
With UDP and it's
mpegts
muxer, the DVB triplet can be set (1)

-
With RTP and it's
rtp_mpegts
muxer, the DVB triplet is ignored (3) (Note that 3a and 3b create very similar results in "StreamXpert".)

-
Using UDP with DVB triplet as input and output with RTP ignores the DVB triplet (2)











Interestingly, leaving out the following options...


-pcr_period 20 -pat_period 0.10 -sdt_period 0.25 -metadata:s:a:0 language=nya \
-mpegts_flags +pat_pmt_at_frames -mpegts_flags system_b



... the
rtp_mpegts
muxer (3b) creates a valid DVB transport stream, while the thempegts
muxer (4) does not.

ffmpeg params :


- 




muxer :
mpegts
(udp)

ffmpeg -f lavfi -i testsrc -r 25 -c:v libx264 -pix_fmt yuv420p -profile:v main -level 3.1 -preset veryfast -vf scale=1280:720,setdar=dar=16/9 -an -bsf:v h264_mp4toannexb -b:v 4M -muxrate 8M \
-pcr_period 20 -pat_period 0.10 -sdt_period 0.25 -metadata:s:a:0 language=nya -mpegts_flags +pat_pmt_at_frames \
-mpegts_transport_stream_id 0x005A \
-mpegts_original_network_id 0x005B \
-mpegts_service_id 0x005C \
-mpegts_pmt_start_pid 0x005D -mpegts_start_pid 0x005E -mpegts_service_type advanced_codec_digital_hdtv \
-metadata service_provider="Provider foo" \
-metadata service_name="Service bar" \
-mpegts_flags system_b -flush_packets 0 \
-f mpegts "udp://239.10.33.10:1234?pkt_size=1316"



- 




muxer :
rtp_mpegts
(rtp)

ffmpeg -i "udp://239.10.33.10:1234" -map 0 -c copy \
-f rtp_mpegts "rtp://239.10.33.11:1234?pkt_size=1316"



- 




a) muxer :
rtp_mpegts
(rtp)

ffmpeg -f lavfi -i testsrc -r 25 -c:v libx264 -pix_fmt yuv420p -profile:v main -level 3.1 -preset veryfast -vf scale=1280:720,setdar=dar=16/9 -an -bsf:v h264_mp4toannexb -b:v 4M -muxrate 8M \
-pcr_period 20 -pat_period 0.10 -sdt_period 0.25 -metadata:s:a:0 language=nya -mpegts_flags +pat_pmt_at_frames \
-mpegts_transport_stream_id 0x005A \
-mpegts_original_network_id 0x005B \
-mpegts_service_id 0x005C \
-mpegts_pmt_start_pid 0x005D -mpegts_start_pid 0x005E -mpegts_service_type advanced_codec_digital_hdtv \
-metadata service_provider="Provider foo" \
-metadata service_name="Service bar" \
-mpegts_flags system_b -flush_packets 0 \
-f rtp_mpegts "rtp://239.10.33.10:1234?pkt_size=1316"



b) muxer :
rtp_mpegts
(rtp) (omitting some options)

ffmpeg -f lavfi -i testsrc -r 25 -c:v libx264 -vf scale=1280:720,setdar=dar=16/9 -b:v 4M -muxrate 8M \
-mpegts_transport_stream_id 0x005A \
-mpegts_original_network_id 0x005B \
-mpegts_service_id 0x005C -mpegts_pmt_start_pid 0x005D -mpegts_start_pid 0x005E \
-mpegts_service_type advanced_codec_digital_hdtv \
-metadata service_provider="Provider foo" \
-metadata service_name="Service bar" \
-f rtp_mpegts "rtp://239.10.33.10:1234"



- 




muxer :
mpegts
(udp) (omitting some options)

ffmpeg -f lavfi -i testsrc -r 25 -c:v libx264 -vf scale=1280:720,setdar=dar=16/9 -b:v 4M -muxrate 8M \
-mpegts_transport_stream_id 0x005A \
-mpegts_original_network_id 0x005B \
-mpegts_service_id 0x005C -mpegts_pmt_start_pid 0x005D -mpegts_start_pid 0x005E \
-mpegts_service_type advanced_codec_digital_hdtv \
-metadata service_provider="Provider foo" \
-metadata service_name="Service bar" \
-f mpegts "udp://239.10.33.10:1234"



Analyzing the transport stream




-
-
Static ffmpeg library windows
29 novembre 2022, par peterIm trying to use the ffmpeg libraries (
libavutil
,libswscale
, ...) in a bigger project by statically linking them, im not interested in the binaries. Now the issue comes down to getting them statically built. I tried searching for pre-compiled builds but without success.

Following the docs, i compiled them on wsl2 for win64 with


./configure --arch=x86_64 --target-os=mingw32 --cross-prefix=i686-w64-mingw32- --disable-shared --enable-static
make



After that i copied the
libavformat/libavformat.a
aslibavformat.lib
(which should be fine since they are cross-compiledar
archives ?) into my project and linked them with CMake.

When compiling smth like


AVFormatContext* pFormatContext = avformat_alloc_context();



i get a linker error saying


lld-link : error : undefined symbol: avformat_alloc_context



When looking at the libs with
dumpbin -linkermember libavformat.lib
, i can see

>dumpbin -linkermember libavformat.lib
...
 135CD92 _avformat_alloc_context
...



notice the underscore.


Can i not link the cross-compiled
*.a
files directly into a windows executable ?

Honestly at this point any ideas are welcome.


Thanks


-
Playing RTP stream on Android 4.1.2 (Jelly Bean) [closed]
27 décembre 2024, par Homie_TomieI'll try to keep it quick. Using FFMPEG I started a stream on my PC. Here is the code :


import subprocess

def start_stream():
 command = [
 'ffmpeg',
 '-f', 'gdigrab', # Desktop capture (Windows)
 '-framerate', '15', # Low framerate for higher performance
 '-i', 'desktop', # Capture desktop
 '-c:v', 'libx264', # Video codec (H.264)
 '-preset', 'ultrafast', # Ultra-fast encoding preset for minimal latency
 '-tune', 'zerolatency', # Zero latency for real-time streaming
 '-x264opts', 'keyint=15:min-keyint=15:no-scenecut', # Frequent keyframes
 '-b:v', '500k', # Low bitrate to minimize data usage and reduce latency
 '-s', '800x480', # Resolution fits phone screen and helps performance
 '-max_delay', '0', # No buffering, instant frame output
 '-flush_packets', '1', # Flush packets immediately after encoding
 '-f', 'rtp', # Use mpegts as the container for RTP stream
 'rtp://192.168.72.26:1234', # Stream over UDP to localhost on port 1234
 '-sdp_file', 'stream.sdp' # Create SDP file
 ]
 
 try:
 print("Starting stream...")
 subprocess.run(command, check=True)
 except subprocess.CalledProcessError as e:
 print(f"Error occurred: {e}")
 except KeyboardInterrupt:
 print("\nStream interrupted")

if __name__ == "__main__":
 print("Starting screen capture...")
 start_stream()



Now, when I start the stream I can connect to it in VLC when I open up the stream.sdp file. Using the same method I can open up the stream on my iPhone, but when I try to open it on my old Android phone the stream connects but the screen is black. However, when I turn the screen I can see the first frame that was sent to the phone. Why does the stream not work ?


I will be thankful for any and all advice :)