
Recherche avancée
Médias (1)
-
The pirate bay depuis la Belgique
1er avril 2013, par
Mis à jour : Avril 2013
Langue : français
Type : Image
Autres articles (72)
-
Les tâches Cron régulières de la ferme
1er décembre 2010, parLa gestion de la ferme passe par l’exécution à intervalle régulier de plusieurs tâches répétitives dites Cron.
Le super Cron (gestion_mutu_super_cron)
Cette tâche, planifiée chaque minute, a pour simple effet d’appeler le Cron de l’ensemble des instances de la mutualisation régulièrement. Couplée avec un Cron système sur le site central de la mutualisation, cela permet de simplement générer des visites régulières sur les différents sites et éviter que les tâches des sites peu visités soient trop (...) -
Publier sur MédiaSpip
13 juin 2013Puis-je poster des contenus à partir d’une tablette Ipad ?
Oui, si votre Médiaspip installé est à la version 0.2 ou supérieure. Contacter au besoin l’administrateur de votre MédiaSpip pour le savoir -
HTML5 audio and video support
13 avril 2011, parMediaSPIP uses HTML5 video and audio tags to play multimedia files, taking advantage of the latest W3C innovations supported by modern browsers.
The MediaSPIP player used has been created specifically for MediaSPIP and can be easily adapted to fit in with a specific theme.
For older browsers the Flowplayer flash fallback is used.
MediaSPIP allows for media playback on major mobile platforms with the above (...)
Sur d’autres sites (9245)
-
Can I use the "stream copy" of ffmpeg in OpenCV with VideoWriter class ?
14 mai 2019, par DerekGPython : 3.6, Ubuntu 18.04, OpenCV 4.1.0
I have an IP camera that streams video data in H.264 encoding. I would like to take this video stream and save it in a .avi file using Python without any encoding or decoding. Using a command line interface and ffmpeg commands, this is trivial to do.
mycomputer@home:~$ ffmpeg -i rtsp://username:password@192.168.1.1/?framerate=30.0?streamprofile=defaultcameraprofile -acodec copy -vcodec copy output_file_name.avi
I’d like to do a similar thing from within Python using OpenCV. Currently, I am using VideoCapture class to read in each frame, and then using the OpenCV VideoWriter class to write this frame to a file. My issue is that the VideoWriter class requires a four_cc code to specify which codec is to be used during writing, whereas I don’t want to use any codec at all (or more precisely, I want to use the stream copy of FFmpeg, but there is to my knowledge no corresponding four_cc code). OpenCV documentation specifies that if I use the FFmpeg backend API and specify both a codec and framerate of 0, the raw stream should be written to the new file. However, when I do this, no file is created.
cap = cv2.VideoCapture("rtsp://username:password@192.168.1.1/?framerate=30.0?streamprofile=defaultcameraprofile", cv2.CAP_FFMPEG)
frame_width = int(cap.get(3))
frame_height = int(cap.get(4))
# output file, backend API, four_cc code integer, framerate, frame size tuple
out = cv2.videoWriter("output_file.avi",cv2.CAP_FFMPEG,0,0,(frame_width,frame_height))I have tried many combinations of other input parameters to the videoWriter constructor but all of them either re-encode the stream or do not write an output file. For instance, I have tried nearly every combination of framerate 0,30, output file extension .avi, .mp4, .h264, .mkv, None and codec 0, "H.264", "RAW ", "DBI ", " ", "MPEG", "COPY", "NONE".
out = cv2.videoWriter("output_file.avi",cv2.CAP_FFMPEG,cv2.VideoWriter_fourcc('H','2','6','4'),30,(frame_width,frame_height))
Is it possible to use the FFmpeg stream copy within OpenCV to save video data without encoding it ? If not, I will change tact to running shell commands from within Python, but I’d prefer the former approach if feasible.
-
"Undefined Reference" when compiling FFMPEG with librtmp on Android
5 mars 2019, par elBradfordI have searched, and while Building FFMPEG with librtmp for android answered part of my question, I ran into other issues further along in the compilation process.
First, I am trying to use the script in this github repo, changing the flags to include
--enable-librtmp \
--extra-cflags=-I/home/bradford/Development/FFMPEG/rtmp/rtmpdump/librtmp/ \
--extra-ldflags=-L/home/bradford/Development/FFMPEG/rtmp/rtmpdump/librtmp"I build librtmp with polarSSL following S74ck3r’s instructions on his github repo and stream-recorder thread. That appears to work correctly, and I have a librtmp.so, librtmp.a and rtmp.h
When I try to compile ffmpeg with librtmp, I get the error
ERROR: librtmp not found
This SO question helped, and I modified ffmpeg’s config file so that it wouldn’t look at pkg-config for librtmp (even though pkg-config was aware of librtmp...) :
#enabled librtmp && require_pkg_config librtmp librtmp/rtmp.h RTMP_Socket
When I build now, it starts successfully, and I get the hopeful line :
librtmp enabled yes
And later on I see more good news :
...
Enabled protocols:
applehttp http mmsh
cache httpproxy mmst
concat librtmp mmsu
crypto librtmpe pipe
fd librtmps rtp
file librtmpt tcp
gopher librtmpte udp
hls md5
...but finally, after compiling everything and during the installation phase, I get these types of errors :
INSTALL libavutil/libavutil.pc
/tmp/FFMPEG/bin/../lib/gcc/arm-linux-androideabi/4.6/../../../../arm-linux-androideabi/bin/ld: libavformat/librtmp.o: in function rtmp_get_file_handle:libavformat/librtmp.c:190: error: undefined reference to 'RTMP_Socket'
/tmp/FFMPEG/bin/../lib/gcc/arm-linux-androideabi/4.6/../../../../arm-linux-androideabi/bin/ld: libavformat/librtmp.o: in function rtmp_read_seek:libavformat/librtmp.c:180: error: undefined reference to 'RTMP_SendSeek'
/tmp/FFMPEG/bin/../lib/gcc/arm-linux-androideabi/4.6/../../../../arm-linux-androideabi/bin/ld: libavformat/librtmp.o: in function rtmp_read_pause:libavformat/librtmp.c:161: error: undefined reference to 'RTMP_Pause'
/tmp/FFMPEG/bin/../lib/gcc/arm-linux-androideabi/4.6/../../../../arm-linux-androideabi/bin/ld: libavformat/librtmp.o: in function rtmp_close:libavformat/librtmp.c:64: error: undefined reference to 'RTMP_Close'
/tmp/FFMPEG/bin/../lib/gcc/arm-linux-androideabi/4.6/../../../../arm-linux-androideabi/bin/ld: libavformat/librtmp.o: in function rtmp_write:libavformat/librtmp.c:145: error: undefined reference to 'RTMP_Write'
/tmp/FFMPEG/bin/../lib/gcc/arm-linux-androideabi/4.6/../../../../arm-linux-androideabi/bin/ld: libavformat/librtmp.o: in function rtmp_read:libavformat/librtmp.c:153: error: undefined reference to 'RTMP_Read'
/tmp/FFMPEG/bin/../lib/gcc/arm-linux-androideabi/4.6/../../../../arm-linux-androideabi/bin/ld: libavformat/librtmp.o: in function rtmp_open:libavformat/librtmp.c:96: error: undefined reference to 'RTMP_LogSetLevel'
/tmp/FFMPEG/bin/../lib/gcc/arm-linux-androideabi/4.6/../../../../arm-linux-androideabi/bin/ld: libavformat/librtmp.o: in function rtmp_open:libavformat/librtmp.c:97: error: undefined reference to 'RTMP_LogSetCallback'
/tmp/FFMPEG/bin/../lib/gcc/arm-linux-androideabi/4.6/../../../../arm-linux-androideabi/bin/ld: libavformat/librtmp.o: in function rtmp_open:libavformat/librtmp.c:118: error: undefined reference to 'RTMP_Init'
/tmp/FFMPEG/bin/../lib/gcc/arm-linux-androideabi/4.6/../../../../arm-linux-androideabi/bin/ld: libavformat/librtmp.o: in function rtmp_open:libavformat/librtmp.c:119: error: undefined reference to 'RTMP_SetupURL'
/tmp/FFMPEG/bin/../lib/gcc/arm-linux-androideabi/4.6/../../../../arm-linux-androideabi/bin/ld: libavformat/librtmp.o: in function rtmp_open:libavformat/librtmp.c:127: error: undefined reference to 'RTMP_Connect'
/tmp/FFMPEG/bin/../lib/gcc/arm-linux-androideabi/4.6/../../../../arm-linux-androideabi/bin/ld: libavformat/librtmp.o: in function rtmp_open:libavformat/librtmp.c:127: error: undefined reference to 'RTMP_ConnectStream'
/tmp/FFMPEG/bin/../lib/gcc/arm-linux-androideabi/4.6/../../../../arm-linux-androideabi/bin/ld: libavformat/librtmp.o: in function rtmp_open:libavformat/librtmp.c:125: error: undefined reference to 'RTMP_EnableWrite'
collect2: ld returned 1 exit statusAnd I can’t get past them. It sounds like it can’t find rtmp.h, which includes references to those functions, but that is present where it should be (afaik).
Also, my project requires librtmp - the built-in rtmp features of ffmpeg are not sufficient because I require the authentication features of librtmp.
-
pydub .export() issue - "wave.Error : # channels not specified"
6 novembre 2018, par JeremyI’m trying to cut a clip from an mp3 using the pydub library. Exporting the clip is giving me a bit of an issue.
I’ve tried exporting as both .mp3 and .wav. I’m sure it’s something silly I’ve done on my end. Pydub seems great so far, I’m just messing something up along the way.
The export portion of the my code is as follows :
def cut_clip(track, start, stop):
full_file = pydub.AudioSegment.from_file(track, format="mp3")
clip = full_file[start:stop]
return
def create_clip_file():
global clip
clip = cut_clip('test.mp3', 2200000, 2280000)
clip = pydub.AudioSegment.export("clip.wav", format="wav")
print("%s is written." % clip)
new_file_length = get_track_length(clip)
create_clip_file()Here is the Traceback.
subprocess.call(['ffmpeg', '-y', '-f', 'mp3', '-i', 'test.mp3', '-acodec', 'pcm_s16le', '-vn', '-f', 'wav', '-'])
Traceback (most recent call last):
File "test.py", line 43, in <module>
create_clip_file()
File "test.py", line 38, in create_clip_file
clip = pydub.AudioSegment.export("clip.wav", format="wav")
File "/home/jeremy/.virtualenvs/chopin-qm-qH-MX/lib/python3.4/site-packages/pydub/audio_segment.py", line 795, in export
wave_data.setnchannels(self.channels)
AttributeError: 'str' object has no attribute 'channels'
Exception ignored in: <bound method="method" of="of" object="object" at="at" 0x6fee80b615c0="0x6fee80b615c0">>
Traceback (most recent call last):
File "/usr/lib/python3.4/wave.py", line 315, in __del__
self.close()
File "/usr/lib/python3.4/wave.py", line 433, in close
self._ensure_header_written(0)
File "/usr/lib/python3.4/wave.py", line 450, in _ensure_header_written
raise Error('# channels not specified')
wave.Error: # channels not specified
</bound></module>Does anyone happen to see what I’m doing wrong here ?
I am able to cut the clip using ffmpeg but I was really trying to wrap my head around pydub.