
Recherche avancée
Médias (1)
-
The Slip - Artworks
26 septembre 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Texte
Autres articles (102)
-
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. -
Des sites réalisés avec MediaSPIP
2 mai 2011, parCette page présente quelques-uns des sites fonctionnant sous MediaSPIP.
Vous pouvez bien entendu ajouter le votre grâce au formulaire en bas de page. -
ANNEXE : Les plugins utilisés spécifiquement pour la ferme
5 mars 2010, parLe site central/maître de la ferme a besoin d’utiliser plusieurs plugins supplémentaires vis à vis des canaux pour son bon fonctionnement. le plugin Gestion de la mutualisation ; le plugin inscription3 pour gérer les inscriptions et les demandes de création d’instance de mutualisation dès l’inscription des utilisateurs ; le plugin verifier qui fournit une API de vérification des champs (utilisé par inscription3) ; le plugin champs extras v2 nécessité par inscription3 (...)
Sur d’autres sites (8985)
-
FFmpeg - MJPEG decoding gives inconsistent values
28 décembre 2016, par ahmadhI have a set of JPEG frames which I am muxing into an avi, which gives me a mjpeg video. This is the command I run on the console :
ffmpeg -y -start_number 0 -i %06d.JPEG -codec copy vid.avi
When I try to demux the video using ffmpeg C api, I get frames which are slightly different in values. Demuxing code looks something like this :
AVFormatContext* fmt_ctx = NULL;
AVCodecContext* cdc_ctx = NULL;
AVCodec* vid_cdc = NULL;
int ret;
unsigned int height, width;
....
// read_nframes is the number of frames to read
output_arr = new unsigned char [height * width * 3 *
sizeof(unsigned char) * read_nframes];
avcodec_open2(cdc_ctx, vid_cdc, NULL);
int num_bytes;
uint8_t* buffer = NULL;
const AVPixelFormat out_format = AV_PIX_FMT_RGB24;
num_bytes = av_image_get_buffer_size(out_format, width, height, 1);
buffer = (uint8_t*)av_malloc(num_bytes * sizeof(uint8_t));
AVFrame* vid_frame = NULL;
vid_frame = av_frame_alloc();
AVFrame* conv_frame = NULL;
conv_frame = av_frame_alloc();
av_image_fill_arrays(conv_frame->data, conv_frame->linesize, buffer,
out_format, width, height, 1);
struct SwsContext *sws_ctx = NULL;
sws_ctx = sws_getContext(width, height, cdc_ctx->pix_fmt,
width, height, out_format,
SWS_BILINEAR, NULL,NULL,NULL);
int frame_num = 0;
AVPacket vid_pckt;
while (av_read_frame(fmt_ctx, &vid_pckt) >=0) {
ret = avcodec_send_packet(cdc_ctx, &vid_pckt);
if (ret < 0)
break;
ret = avcodec_receive_frame(cdc_ctx, vid_frame);
if (ret < 0 && ret != AVERROR(EAGAIN) && ret != AVERROR_EOF)
break;
if (ret >= 0) {
// convert image from native format to planar GBR
sws_scale(sws_ctx, vid_frame->data,
vid_frame->linesize, 0, vid_frame->height,
conv_frame->data, conv_frame->linesize);
unsigned char* r_ptr = output_arr +
(height * width * sizeof(unsigned char) * 3 * frame_num);
unsigned char* g_ptr = r_ptr + (height * width * sizeof(unsigned char));
unsigned char* b_ptr = g_ptr + (height * width * sizeof(unsigned char));
unsigned int pxl_i = 0;
for (unsigned int r = 0; r < height; ++r) {
uint8_t* avframe_r = conv_frame->data[0] + r*conv_frame->linesize[0];
for (unsigned int c = 0; c < width; ++c) {
r_ptr[pxl_i] = avframe_r[0];
g_ptr[pxl_i] = avframe_r[1];
b_ptr[pxl_i] = avframe_r[2];
avframe_r += 3;
++pxl_i;
}
}
++frame_num;
if (frame_num >= read_nframes)
break;
}
}
...In my experience around two-thirds of the pixel values are different, each by +-1 (in a range of [0,255]). I am wondering is it due to some decoding scheme FFmpeg uses for reading JPEG frames ? I tried encoding and decoding png frames, and it works perfectly fine. I am sure this is something to do with the libav decoding process because the MD5 values are consistent between the images and the video :
ffmpeg -i %06d.JPEG -f framemd5 -
ffmpeg -i vid.avi -f framemd5 -In short my goal is to get the same pixel by pixel values for each JPEG frame as I would I have gotten if I was reading the JPEG images directly. Here is the stand-alone bitbucket code I used. It includes cmake files to build code, and a couple of jpeg frames with the converted avi file to test this problem. (give ’—filetype png’ to test the png decoding).
-
Correct usage of fdkaac for liquidsoap->icecast
1er février 2024, par user4893295Can't seem to get aac working using
fdkaac
with liquidsoap. It just seems to shutdown.

TBF I have no idea which
aot
ortransmux
to use for "normal" icecast stuff. mp3 works fine, and the icecast server works fine with aac from other sources (BUTT etc).

This is my starting point from the liquidsoap cookbook :


%fdkaac(channels=2, samplerate=44100, bandwidth="auto", bitrate=64, afterburner=false, aot="mpeg2_he_aac_v2", transmux="adts", sbr_mode=false)



And this is my output from liquidsoap :


2024/02/01 20:49:05 [clock:3] Using native (high-precision) implementation for latency control
2024/02/01 20:49:07 [main:3] Standard library loaded in 1.64 seconds.
2024/02/01 20:49:07 [lang:2] WARNING: "set" is deprecated and will be removed in future version. Please use `settings.path.to.key := value`
2024/02/01 20:49:07 [lang:2] WARNING: "set" is deprecated and will be removed in future version. Please use `settings.path.to.key := value`
2024/02/01 20:49:07 [frame:3] Using 44100Hz audio, 25Hz video, 44100Hz main.
2024/02/01 20:49:07 [frame:3] Video frame size set to: 1280x720
2024/02/01 20:49:07 [frame:3] Frame size must be a multiple of 1764 ticks = 1764 audio samples = 1 video samples.
2024/02/01 20:49:07 [frame:3] Targeting 'frame.duration': 0.04s = 1764 audio samples = 1764 ticks.
2024/02/01 20:49:07 [frame:3] Frames last 0.04s = 1764 audio samples = 1 video samples = 1764 ticks.
2024/02/01 20:49:07 [sandbox:3] Could not find binary bwrap, disabling sandboxing.
2024/02/01 20:49:07 [startup:3] DSSI plugins registration: 0.00s
2024/02/01 20:49:07 [startup:3] FFmpeg filters registration: 0.02s
2024/02/01 20:49:07 [startup:3] FFmpeg bitstream filters registration: 0.00s
2024/02/01 20:49:07 [startup:3] Lilv plugins registration: 0.00s
2024/02/01 20:49:07 [startup:3] Frei0r plugin registration: 0.00s
2024/02/01 20:49:07 [startup:3] LADSPA plugins registration: 0.00s
2024/02/01 20:49:07 [startup:3] Typechecking: 1.36s
2024/02/01 20:49:07 [startup:3] Evaluation: 0.01s
2024/02/01 20:49:07 [startup:3] Typechecking: 0.02s
2024/02/01 20:49:07 [startup:3] Evaluation: 0.00s
2024/02/01 20:49:07 [startup:3] Typechecking: 0.00s
2024/02/01 20:49:07 [startup:3] Evaluation: 0.00s
2024/02/01 20:49:07 [startup:3] Typechecking: 0.00s
2024/02/01 20:49:07 [startup:3] Evaluation: 0.08s
2024/02/01 20:49:07 [startup:3] Loaded /etc/liquidsoap/index.liq: 0.08s
2024/02/01 20:49:07 [64_aac:3] Content type is {audio=pcm(stereo)}.
2024/02/01 20:49:07 [cross:3] Content type is {audio=pcm(stereo)}.
2024/02/01 20:49:07 [on_track:3] Content type is {audio=pcm(stereo)}.
2024/02/01 20:49:07 [promos.2:3] Content type is {audio=pcm(stereo)}.
2024/02/01 20:49:07 [promos:3] Content type is {}.
2024/02/01 20:49:07 [current:3] Content type is {audio=pcm(stereo)}.
2024/02/01 20:49:07 [music.3:3] Content type is {audio=pcm(stereo)}.
2024/02/01 20:49:07 [music.2:3] Content type is {}.
2024/02/01 20:49:07 [music:3] Content type is {audio=pcm(stereo)}.
2024/02/01 20:49:07 [safe_blank:3] Content type is {audio=pcm(stereo)}.
2024/02/01 20:49:07 [clock.main:3] Streaming loop starts in auto-sync mode
2024/02/01 20:49:07 [clock.main:3] Delegating synchronization to CPU clock
2024/02/01 20:49:07 [video.converter:3] Using preferred video converter: ffmpeg.
2024/02/01 20:49:07 [audio.converter:3] Using samplerate converter: libsamplerate.
2024/02/01 20:49:07 [video.text:3] Using sdl implementation
2024/02/01 20:49:07 [mksafe:3] Switch to safe_blank.
2024/02/01 20:49:07 [clock.main:2] Source 64_aac failed while streaming: Lang.Runtime_error { kind: "encoder", msg: "Invalid configuration: aot", pos: [at /etc/liquidsoap/index.liq, line 52, char 2-144] }!
2024/02/01 20:49:07 [clock.main:2] Raised at Liquidsoap_lang__Runtime_error.raise in file "src/lang/runtime_error.ml", line 48, characters 14-21
2024/02/01 20:49:07 [clock.main:2] Called from Stdlib__List.iter in file "list.ml", line 110, characters 12-15
2024/02/01 20:49:07 [clock.main:2] Called from Fdkaac_encoder.create_encoder in file "src/core/encoder/encoders/fdkaac_encoder.ml", line 69, characters 2-22
2024/02/01 20:49:07 [clock.main:2] Called from Fdkaac_encoder.encoder in file "src/core/encoder/encoders/fdkaac_encoder.ml", line 73, characters 12-35
2024/02/01 20:49:07 [clock.main:2] Called from Encoder.get_factory.(fun) in file "src/core/encoder/encoder.ml", line 344, characters 8-32
2024/02/01 20:49:07 [clock.main:2] Called from Icecast2.output#icecast_start in file "src/core/outputs/icecast2.ml", line 555, characters 16-67
2024/02/01 20:49:07 [clock.main:2] Called from Icecast2.output#send in file "src/core/outputs/icecast2.ml", line 544, characters 12-30
2024/02/01 20:49:07 [clock.main:2] Called from Output.encoded#send_frame.output_chunks.f in file "src/core/outputs/output.ml", line 256, characters 10-24
2024/02/01 20:49:07 [clock.main:2] Called from Output.output#output in file "src/core/outputs/output.ml", line 192, characters 45-70
2024/02/01 20:49:07 [clock.main:2] Called from Clock.MkClock.clock#end_tick.(fun) in file "src/core/clock.ml", line 318, characters 16-24
Incorrect BOM value
Error reading lyrics, skipped
2024/02/01 20:49:07 [clock.main:2]
[mp3 @ 0x7fd5ad428000] Estimating duration from bitrate, this may be inaccurate
2024/02/01 20:49:07 [decoder.ffmpeg:3] Requested content-type for "/data/dropbox/promos/current/24-7 promo 1 remix.mp3": {audio=pcm(stereo)}
2024/02/01 20:49:07 [decoder.ffmpeg:3] FFmpeg recognizes "/data/dropbox/promos/current/24-7 promo 1 remix.mp3" as audio: {codec: mp3, 44100Hz, 2 channel(s)}
2024/02/01 20:49:07 [decoder.ffmpeg:3] Decoded content-type for "/data/dropbox/promos/current/24-7 promo 1 remix.mp3": {audio=pcm(stereo)}
2024/02/01 20:49:07 [decoder.ffmpeg:3] Requested content-type for "/data/music/Bruno Mars - Locked out of Heaven.mp3": {audio=pcm(stereo)}
2024/02/01 20:49:07 [decoder.ffmpeg:3] FFmpeg recognizes "/data/music/Bruno Mars - Locked out of Heaven.mp3" as audio: {codec: mp3, 44100Hz, 2 channel(s)}, video: {codec: mjpeg, 640x640, yuvj444p}, video_2: {codec: mjpeg, 640x640, yuvj444p}
2024/02/01 20:49:07 [decoder.ffmpeg:3] Decoded content-type for "/data/music/Bruno Mars - Locked out of Heaven.mp3": {audio=pcm(stereo)}
Incorrect BOM value
Error reading lyrics, skipped
[mp3 @ 0x7fd5ad428000] Estimating duration from bitrate, this may be inaccurate
2024/02/01 20:49:07 [clock.main:3] Streaming loop stopped.
2024/02/01 20:49:07 [threads:3] Main loop exited
2024/02/01 20:49:07 [main:3] Shutdown started!
2024/02/01 20:49:07 [threads:3] Waiting for main threads to terminate...
2024/02/01 20:49:07 [threads:3] Main threads terminated.
2024/02/01 20:49:07 [threads:3] Shutting down scheduler...
2024/02/01 20:49:07 [threads:3] Scheduler shut down.
2024/02/01 20:49:07 [main:3] Cleaning downloaded files...
2024/02/01 20:49:07 [main:3] Freeing memory...
2024/02/01 20:49:07 >>> LOG END



EDIT it does seem to be using video, which wouldn't help ? Looking at this bit :


2024/02/01 20:49:07 [frame:3] Using 44100Hz audio, 25Hz video, 44100Hz main.
2024/02/01 20:49:07 [frame:3] Video frame size set to: 1280x720



But no idea why or how to stop that...


-
washed out colors when converting h264 into vp9 using ffmpeg [closed]
31 juillet 2024, par apes-together-strongI'm trying to convert an h264 video to vp9/opus webm.
Every attempt so far has had washed out colors.
Is there a fix for this issue or is it just the way h264->vp9 conversion is ?


ffprobe of the source file :


Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'test1.mp4':
 Metadata:
 major_brand : mp42
 minor_version : 0
 compatible_brands: isommp42
 creation_time : 2024-07-30T17:03:10.000000Z
 com.android.version: 10
 Duration: 00:01:04.07, start: 0.000000, bitrate: 20198 kb/s
 Stream #0:0[0x1](eng): Video: h264 (High) (avc1 / 0x31637661), yuvj420p(pc, bt470bg/bt470bg/smpte170m, progressive), 1920x1080, 20001 kb/s, SAR 1:1 DAR 16:9, 30 fps, 30 tbr, 90k tbn (default)
 Metadata:
 creation_time : 2024-07-30T17:03:10.000000Z
 handler_name : VideoHandle
 vendor_id : [0][0][0][0]
 Side data:
 displaymatrix: rotation of -90.00 degrees
 Stream #0:1[0x2](eng): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 96 kb/s (default)
 Metadata:
 creation_time : 2024-07-30T17:03:10.000000Z
 handler_name : SoundHandle
 vendor_id : [0][0][0][0]