
Recherche avancée
Médias (16)
-
#7 Ambience
16 octobre 2011, par
Mis à jour : Juin 2015
Langue : English
Type : Audio
-
#6 Teaser Music
16 octobre 2011, par
Mis à jour : Février 2013
Langue : English
Type : Audio
-
#5 End Title
16 octobre 2011, par
Mis à jour : Février 2013
Langue : English
Type : Audio
-
#3 The Safest Place
16 octobre 2011, par
Mis à jour : Février 2013
Langue : English
Type : Audio
-
#4 Emo Creates
15 octobre 2011, par
Mis à jour : Février 2013
Langue : English
Type : Audio
-
#2 Typewriter Dance
15 octobre 2011, par
Mis à jour : Février 2013
Langue : English
Type : Audio
Autres articles (60)
-
Qu’est ce qu’un éditorial
21 juin 2013, parEcrivez votre de point de vue dans un article. Celui-ci sera rangé dans une rubrique prévue à cet effet.
Un éditorial est un article de type texte uniquement. Il a pour objectif de ranger les points de vue dans une rubrique dédiée. Un seul éditorial est placé à la une en page d’accueil. Pour consulter les précédents, consultez la rubrique dédiée.
Vous pouvez personnaliser le formulaire de création d’un éditorial.
Formulaire de création d’un éditorial Dans le cas d’un document de type éditorial, les (...) -
Gestion des droits de création et d’édition des objets
8 février 2011, parPar défaut, beaucoup de fonctionnalités sont limitées aux administrateurs mais restent configurables indépendamment pour modifier leur statut minimal d’utilisation notamment : la rédaction de contenus sur le site modifiables dans la gestion des templates de formulaires ; l’ajout de notes aux articles ; l’ajout de légendes et d’annotations sur les images ;
-
Multilang : améliorer l’interface pour les blocs multilingues
18 février 2011, parMultilang est un plugin supplémentaire qui n’est pas activé par défaut lors de l’initialisation de MediaSPIP.
Après son activation, une préconfiguration est mise en place automatiquement par MediaSPIP init permettant à la nouvelle fonctionnalité d’être automatiquement opérationnelle. Il n’est donc pas obligatoire de passer par une étape de configuration pour cela.
Sur d’autres sites (6977)
-
error building ffmpeg on mac high sierra 10.13 "workspace/bin/ffmpeg' : No such file or directory"
14 mars 2023, par MartinHello I am trying to create a shell script
buildffmpeg.sh
which when ran, will download and build ffmpeg, so you can automate the process of making a custom ffmpeg build where the end result is an ffmpeg and ffprobe executable.

If you run the below script on mac or linux, it's worked perfectly, but when I test on my older macos 10.13 version, I first got an error about my ffmpeg snapshot url being too old :

FFMPEG_URL="https://git.ffmpeg.org/gitweb/ffmpeg.git/snapshot/74c4c539538e36d8df02de2484b045010d292f2c.tar.gz"

so I updated the var so it 'should' link to ffmpeg 6.0 (the most recent version, but im not sure if my link is correct)
FFMPEG_URL="https://git.ffmpeg.org/gitweb/ffmpeg.git/snapshot/adb4688bfb0652b2ffa5bc29e53761e27e1a3b3e.tar.gz"


When I run my below script on my mac terminal with the command
$ ./buildffmpeg.sh
it prints out '11' and then fails with an error :

...
INSTALL libavutil/ffversion.h
INSTALL libavutil/libavutil.pc
~11~
/Library/Developer/CommandLineTools/usr/bin/objdump: '/Users/apple/Documents/projects/buildffmpeghighsierra/workspace/bin/ffmpeg': No such file or directory



With the error being
workspace/bin/ffmpeg': No such file or directory


Is there something wrong with how my script builds ffmpeg ?


#!/bin/bash

set -e

CWD=$(pwd)
PACKAGES="$CWD/packages"
WORKSPACE="$CWD/workspace"
ADDITIONAL_CONFIGURE_OPTIONS=""


mkdir -p "$PACKAGES"
mkdir -p "$WORKSPACE"
echo '~0~'
FFMPEG_TAG="$1"
FFMPEG_URL="https://git.ffmpeg.org/gitweb/ffmpeg.git/snapshot/adb4688bfb0652b2ffa5bc29e53761e27e1a3b3e.tar.gz"
echo '~1~'
FFMPEG_ARCHIVE="$PACKAGES/ffmpeg.tar.gz"
echo '~2~'
if [ ! -f "$FFMPEG_ARCHIVE" ]; then
 echo "Downloading tag ${FFMPEG_TAG}..."
 echo "~2.1~ FFMPEG_ARCHIVE=$FFMPEG_ARCHIVE"
 echo "~2.2~ FFMPEG_URL=$FFMPEG_URL"
 curl -L -k -o "$FFMPEG_ARCHIVE" "$FFMPEG_URL"
fi
echo '~3~'
EXTRACTED_DIR="$PACKAGES/extracted"
echo '~4~'
mkdir -p "$EXTRACTED_DIR"
echo '~5~'
echo "Extracting..."
tar -xf "$FFMPEG_ARCHIVE" --strip-components=1 -C "$EXTRACTED_DIR"
echo '~6~'
cd "$EXTRACTED_DIR"
echo '~7~'
echo "Building..."
echo '~8~'
# Min electron supported version
MACOS_MIN="10.10"
echo '~9~'
./configure $ADDITIONAL_CONFIGURE_OPTIONS \
 --pkgconfigdir="$WORKSPACE/lib/pkgconfig" \
 --pkg-config-flags="--static" \
 --extra-cflags="-I$WORKSPACE/include -mmacosx-version-min=${MACOS_MIN}" \
 --extra-ldflags="-L$WORKSPACE/lib -mmacosx-version-min=${MACOS_MIN}" \
 --extra-libs="-lpthread -lm" \
 --enable-static \
 --disable-securetransport \
 --disable-debug \
 --disable-shared \
 --disable-ffplay \
 --disable-lzma \
 --disable-doc \
 --enable-version3 \
 --enable-pthreads \
 --enable-runtime-cpudetect \
 --enable-avfilter \
 --enable-filters \
 --disable-libxcb \
 --enable-gpl \
 --disable-libass \
 --enable-libmp3lame \
 --enable-libx264 
echo '~10~'
make -j 4
echo '~11~'
make install
echo '~11~'
otool -L "$WORKSPACE/bin/ffmpeg"
echo '~12~'
otool -L "$WORKSPACE/bin/ffprobe"
echo '~13~'
echo "Building done. The binaries can be found here: $WORKSPACE/bin/ffmpeg $WORKSPACE/bin/ffprobe"
echo '~14~'
mkdir ffmpeg-mac/ 
echo '~15~'
cp -r "$WORKSPACE/bin/" "$CWD/ffmpeg-mac/"
echo '~16~'
rm -rf "$PACKAGES"
echo '~17~'
rm -rf "$WORKSPACE"
echo '~18~'
exit 0



-
"Conversion failed !" when trying to write to frame to a rmtp stream
8 mai 2023, par Loc Bui NhienI'm trying to write video frames to an RTMP stream using FFMPEG and Python subsystem. The code will try to get videos in a 'ReceivedRecording' then it is stream to a RTMP streaming server using nginx. My method seems to work, but at times, the code will stop running due to


[flv @ 0x55b933694b40] Failed to update header with correct duration.
[flv @ 0x55b933694b40] Failed to update header with correct filesize.



and


Conversion failed


then


BrokenPipeError: [Errno 32] Broken pipe


Here my implementation of the task :


import subprocess
import cv2
rtmp_url = "rtmp://..."

path = 'ReceivedRecording'

received_video_path = 'ReceivedRecording'
while True:
 video_files = [filenames for filenames in sorted(
 os.listdir(received_video_path))]
 # Loop through the videos and concatenate them
 for filename in video_files[:len(video_files)-1]:
 video = cv2.VideoCapture(os.path.join(received_video_path, filename))

 if p is None:
 fps = int(video.get(cv2.CAP_PROP_FPS))
 width = int(video.get(cv2.CAP_PROP_FRAME_WIDTH))
 height = int(video.get(cv2.CAP_PROP_FRAME_HEIGHT))
 # command and params for ffmpeg
 command = ['ffmpeg',
 '-y',
 '-f', 'rawvideo',
 '-vcodec', 'rawvideo',
 '-pix_fmt', 'bgr24',
 '-s', "{}x{}".format(width, height),
 '-re',
 '-r', '5',
 '-i', '-',
 # '-filter:v', 'setpts=4.0*PTS',
 '-c:v', 'libx264',
 '-pix_fmt', 'yuv420p',
 '-preset', 'ultrafast',
 '-tune','zerolatency',
 '-vsync','vfr',
 # '-crf','23',
 '-f', 'flv',
 rtmp_url]
 
 # using subprocess and pipe to fetch frame data
 p = subprocess.Popen(command, stdin=subprocess.PIPE)
 else:

 # Loop through the frames of each video
 while True:
 start_time = time.time()

 ret, frame = video.read()
 if not ret:
 # End of video, move to next video
 video.release()
 break

 p.stdin.write(frame.tobytes())

 os.remove(os.path.join(received_video_path, filename))



Here is my nginx rtmp settings :


rtmp {
 server {
 listen 1935;
 chunk_size 7096;

 application live {
 live on;
 record off;
 push rtmp://...;
 }
 }
}



Here is the log file :


av_interleaved_write_frame(): Connection reset by peer
No more output streams to write to, finishing.
[flv @ 0x5561d1ca9b40] Failed to update header with correct duration.
[flv @ 0x5561d1ca9b40] Failed to update header with correct filesize.
Error writing trailer of rtmp://...: Connection reset by peer
frame= 1 fps=0.0 q=20.0 Lsize= 1024kB time=00:00:00.00 bitrate=8390776.0kbits/s speed=0.00619x
video:1053kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown
Input file #0 (pipe:):
 Input stream #0:0 (video): 1 packets read (11059200 bytes); 1 frames decoded;
 Total: 1 packets (11059200 bytes) demuxed
Output file #0 (rtmp://...):
 Output stream #0:0 (video): 1 frames encoded; 1 packets muxed (1077799 bytes);
 Total: 1 packets (1077799 bytes) muxed
1 frames successfully decoded, 0 decoding errors
[AVIOContext @ 0x5561d1cad380] Statistics: 0 seeks, 35 writeouts
[rtmp @ 0x5561d1cb7b80] Deleting stream...
[libx264 @ 0x5561d1caae40] frame I:1 Avg QP:20.00 size:1077192
[libx264 @ 0x5561d1caae40] mb I I16..4: 100.0% 0.0% 0.0%
[libx264 @ 0x5561d1caae40] coded y,uvDC,uvAC intra: 92.2% 50.5% 10.2%
[libx264 @ 0x5561d1caae40] i16 v,h,dc,p: 34% 16% 37% 12%
[libx264 @ 0x5561d1caae40] i8c dc,h,v,p: 35% 23% 33% 9%
[libx264 @ 0x5561d1caae40] kb/s:43087.68
[AVIOContext @ 0x5561d1ca6a80] Statistics: 11059200 bytes read, 0 seeks
Conversion failed!



-
Scale with scale_vaapi and than pad, got error. Seems ok without "pad"
24 mai 2023, par huangda1982My computer : customized Linux, haswell
I am trying to scale 1280x720 video to 640x450 in 640x480 frame with black borders. To do so, I run this command :


ffmpeg -v warning -hide_banner -init_hw_device vaapi=vaapi0:/dev/dri/renderD128 -hwaccel vaapi -hwaccel_output_format vaapi -hwaccel_device vaapi0 -filter_hw_device vaapi0 -i 'my_video.mp4' -vf 'scale_vaapi=640:450,pad=640:480:0:14' -c:v h264_vaapi -q:v 18 -profile:v main -level 3.1 -c:a aac -q:a 3 -f mp4 out.mp4 -loglevel verbose



And I got this error :


Impossible to convert between the formats supported by the filter 'Parsed_scale_vaapi_0' and the filter 'auto_scaler_0'<br />
Error reinitializing filters!
Failed to inject frame into filter network: Function not implemented
Error while processing the decoded data for stream #0:0



When I removed the ",pad=640:480:0:14" part, the command continued. I pressed ctrl-c, and did not check the result.


"-q:v 18", "-level 3.1" and "-q:a" options seem not work.


Full message :


[h264 @ 0x55dfeb529340] Reinit context to 1280x720, pix_fmt: yuv420p
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'my_video.mp4':
 Metadata:
 major_brand : isom
 minor_version : 512
 compatible_brands: mp41
 creation_time : 1970-01-01T00:00:00.000000Z
 encoder : PotEncoder
 Duration: 00:22:45.01, start: 0.000000, bitrate: 3264 kb/s
 Stream #0:0(und): Video: h264 (Constrained Baseline), 1 reference frame (avc1 / 0x31637661), yuv420p(left), 1280x720 [SAR 1:1 DAR 16:9], 3068 kb/s, 23.98 fps, 23.98 tbr, 1199 tbn, 47.96 tbc (default)
 Metadata:
 creation_time : 1970-01-01T00:00:00.000000Z
 handler_name : VideoHandler
 vendor_id : [0][0][0][0]
 Stream #0:1(und): Audio: mp3 (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 192 kb/s (default)
 Metadata:
 creation_time : 1970-01-01T00:00:00.000000Z
 handler_name : SoundHandler
 vendor_id : [0][0][0][0]
File 'out.mp4' already exists. Overwrite? [y/N] y
Stream mapping:
 Stream #0:0 -> #0:0 (h264 (native) -> h264 (h264_vaapi))
 Stream #0:1 -> #0:1 (mp3 (mp3float) -> aac (native))
Press [q] to stop, [?] for help
[h264 @ 0x55dfeb553e40] Reinit context to 1280x720, pix_fmt: vaapi_vld
[graph_1_in_0_1 @ 0x55dfeb6b7580] tb:1/44100 samplefmt:fltp samplerate:44100 chlayout:0x3
[graph 0 input from stream 0:0 @ 0x55dfebb4d000] w:1280 h:720 pixfmt:vaapi_vld tb:1/1199 fr:1199/50 sar:1/1
[auto_scaler_0 @ 0x55dfebb4f940] w:iw h:ih flags:'bicubic' interl:0
[Parsed_pad_1 @ 0x55dfebb4c700] auto-inserting filter 'auto_scaler_0' between the filter 'Parsed_scale_vaapi_0' and the filter 'Parsed_pad_1'
Impossible to convert between the formats supported by the filter 'Parsed_scale_vaapi_0' and the filter 'auto_scaler_0'
Error reinitializing filters!
Failed to inject frame into filter network: Function not implemented
Error while processing the decoded data for stream #0:0
[AVIOContext @ 0x55dfeb5522c0] Statistics: 0 seeks, 0 writeouts
[aac @ 0x55dfeb551600] Qavg: 354.000
[aac @ 0x55dfeb551600] 2 frames left in the queue on closing
[AVIOContext @ 0x55dfeb530500] Statistics: 1144787 bytes read, 2 seeks
Conversion failed!