
Recherche avancée
Autres articles (102)
-
MediaSPIP 0.1 Beta version
25 avril 2011, parMediaSPIP 0.1 beta is the first version of MediaSPIP proclaimed as "usable".
The zip file provided here only contains the sources of MediaSPIP in its standalone version.
To get a working installation, you must manually install all-software dependencies on the server.
If you want to use this archive for an installation in "farm mode", you will also need to proceed to other manual (...) -
Gestion générale des documents
13 mai 2011, parMédiaSPIP ne modifie jamais le document original mis en ligne.
Pour chaque document mis en ligne il effectue deux opérations successives : la création d’une version supplémentaire qui peut être facilement consultée en ligne tout en laissant l’original téléchargeable dans le cas où le document original ne peut être lu dans un navigateur Internet ; la récupération des métadonnées du document original pour illustrer textuellement le fichier ;
Les tableaux ci-dessous expliquent ce que peut faire MédiaSPIP (...) -
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 (12273)
-
Ffmpeg video output is 0 seconds with correct filesize when uploading to google cloud bucket
22 août 2022, par TurgutI've made a C++ program that lives in gke and takes some videos as input using ffmpeg, then does something with that input using opengl(not relevant), then finally encodes those edited videos as a single output. Normally the program works perfectly fine on my local machine, it encodes just as I want it to with no warnings or valgrind errors whatsoever. Then, after encoding the said video, I want my program to upload that video to the google cloud storage. This is where the problem comes, I have tried 2 methods for this : First, I tried using curl to upload to the cloud using a signed url. Second, I tried mounting the google storage using gcsfuse(I was already mounting the bucket to access the inputs in question). Both of those methods yielded undefined, weird behaviour's ranging from : Outputing a 0byte or 44byte file, (This is the most common one :) encoding in the correct file size 500mb but the video is 0 seconds long, outputing a 0.4 second video or just encoding the desired output normally (really rare).


From the logs I can't see anything unusual, everything seems to work fine and ffmpeg does not give any errors or warnings, so does valgrind. Everything seems to work normally, even when I use curl to upload the video to the cloud the output is perfectly fine when it first encodes it (before sending it with curl) but the video gets messed up when curl uploads it to the cloud.


I'm using the muxing.c example of ffmpeg to encode my video with the only difference being :


void video_encoder::fill_yuv_image(AVFrame *frame, struct SwsContext *sws_context) {
 const int in_linesize[1] = { 4 * width };
 //uint8_t* dest[4] = { rgb_data, NULL, NULL, NULL };
 sws_context = sws_getContext(
 width, height, AV_PIX_FMT_RGBA,
 width, height, AV_PIX_FMT_YUV420P,
 SWS_BICUBIC, 0, 0, 0);

 sws_scale(sws_context, (const uint8_t * const *)&rgb_data, in_linesize, 0,
 height, frame->data, frame->linesize);
}



rgb_data
is the data I got after editing the inputs. Again, this works fine and I don't think there are any errors here.

I'm not sure where the error is and since the code is huge I can't provide a replicable example. I'm just looking for someone to point me to the right direction.


Running the cloud's output in mplayer wields this result (This is when the video is the right size but is 0 seconds long, the most common one.) :


MPlayer 1.4 (Debian), built with gcc-11 (C) 2000-2019 MPlayer Team
do_connect: could not connect to socket
connect: No such file or directory
Failed to open LIRC support. You will not be able to use your remote control.

Playing /media/c36c2633-d4ee-4d37-825f-88ae54b86100.
libavformat version 58.76.100 (external)
libavformat file format detected.
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7f2cba1168e0]moov atom not found
LAVF_header: av_open_input_stream() failed
libavformat file format detected.
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7f2cba1168e0]moov atom not found
LAVF_header: av_open_input_stream() failed
RAWDV file format detected.
VIDEO: [DVSD] 720x480 24bpp 29.970 fps 0.0 kbps ( 0.0 kbyte/s)
X11 error: BadMatch (invalid parameter attributes)
Failed to open VDPAU backend libvdpau_nvidia.so: cannot open shared object file: No such file or directory
[vdpau] Error when calling vdp_device_create_x11: 1
==========================================================================
Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family
libavcodec version 58.134.100 (external)
[dvvideo @ 0x7f2cb987a380]Requested frame threading with a custom get_buffer2() implementation which is not marked as thread safe. This is not supported anymore, make your callback thread-safe.
Selected video codec: [ffdv] vfm: ffmpeg (FFmpeg DV)
==========================================================================
Load subtitles in /media/
==========================================================================
Opening audio decoder: [libdv] Raw DV Audio Decoder
Unknown/missing audio format -> no sound
ADecoder init failed :(
Opening audio decoder: [ffmpeg] FFmpeg/libavcodec audio decoders
[dvaudio @ 0x7f2cb987a380]Decoder requires channel count but channels not set
Could not open codec.
ADecoder init failed :(
ADecoder init failed :(
Cannot find codec for audio format 0x56444152.
Audio: no sound
Starting playback...
[dvvideo @ 0x7f2cb987a380]could not find dv frame profile
Error while decoding frame!
[dvvideo @ 0x7f2cb987a380]could not find dv frame profile
Error while decoding frame!
V: 0.0 2/ 2 ??% ??% ??,?% 0 0 


Exiting... (End of file)





Edit : Since the code runs on a VM, I'm using xvfb-run ro start my application, but again even when using xvfb-run it works completely fine on when not encoding to the cloud.


-
Creating a reflection
Here is a simple example of creating a reflection of an image. The reflection is created by flipping the image and overlaying a gradient on it. Then both, the original image and the reflection is overlayed on a canvas.
This example is created for Imagick 2.1.x but with a little tuning it should work with earlier versions.
-
< ?php
-
-
/* Read the image */
-
$im = new Imagick( "strawberry.png" ) ;
-
-
/* Thumbnail the image */
-
$im->thumbnailImage( 200, null ) ;
-
-
/* Create a border for the image */
-
$im->borderImage( "white", 5, 5 ) ;
-
-
/* Clone the image and flip it */
-
$reflection = $im->clone() ;
-
$reflection->flipImage() ;
-
-
/* Create gradient. It will be overlayd on the reflection */
-
$gradient = new Imagick() ;
-
-
/* Gradient needs to be large enough for the image
-
and the borders */
-
$gradient->newPseudoImage( $reflection->getImageWidth() + 10,
-
$reflection->getImageHeight() + 10,
-
"gradient:transparent-black"
-
) ;
-
-
/* Composite the gradient on the reflection */
-
$reflection->compositeImage( $gradient, imagick: :COMPOSITE_OVER, 0, 0 ) ;
-
-
/* Add some opacity */
-
$reflection->setImageOpacity( 0.3 ) ;
-
-
/* Create empty canvas */
-
$canvas = new Imagick() ;
-
-
/* Canvas needs to be large enough to hold the both images */
-
$width = $im->getImageWidth() + 40 ;
-
$height = ( $im->getImageHeight() * 2 ) + 30 ;
-
$canvas->newImage( $width, $height, "black", "png" ) ;
-
-
/* Composite the original image and the reflection on the canvas */
-
$canvas->compositeImage( $im, imagick: :COMPOSITE_OVER, 20, 10 ) ;
-
$canvas->compositeImage( $reflection, imagick: :COMPOSITE_OVER,
-
20, $im->getImageHeight() + 10 ) ;
-
-
/* Output the image*/
-
header( "Content-Type : image/png" ) ;
-
echo $canvas ;
-
-
?>
The source image :
And the result :
P.S. Please send me some new images which I can use in these examples
-
-
Xuggle mp4 output (isom mp41 codec ?) issues
19 mai 2017, par JonSidesWe’re using Xuggler to create an mp4 from pictures, with no audio at this point. The mp4 we’re getting is playable locally, but cannot be embedded in a webpage or chromecast. I suspect the issue is that we’re getting an older ISOM mp41 codec that’s not supported by HTML5 and chromecast. That’s a guess based on this snippet of header info :
Internet media type : video/mp4
Codec ID : isom
Codec ID : isom (isom/iso2/mp41)
Codec ID/Url :
http://www.apple.com/quicktime/download/standalone.html
CodecID_Compatible : isom/iso2/mp41
Codec : MPEG-4
Codec : MPEG-4
Codec/Extensions usually used : mov mp4 m4v m4a m4b m4p 3ga 3gpa
3gpp 3gp 3gpp2 3g2 k3g jpm jpx mqv ismv isma ismt f4a f4b f4vI can embed and chromecast mp42 type files. So the first part of my question is Am I on the right track in looking at isom and mp41 ? And if so, can I get Xuggler to output using a newer codec ?
I can post the full header if that would be helpful.
The above snippet is from mediainfo. Here’s the whole thing, which is too long for a comment :
General
Count : 325
Count of stream of this kind : 1
Kind of stream : General
Kind of stream : General
Stream identifier : 0
Inform : MPEG-4 (Base Media) : 377 KiB, 12 s 301 ms
Count of video streams : 1
Video_Format_List : MPEG-4 Visual
Video_Format_WithHint_List : MPEG-4 Visual
Codecs Video : MPEG-4 Visual
Complete name : C :\Users\Jon\Desktop\vid-1.mp4
Folder name : C :\Users\Jon\Desktop
File name : vid-1
File extension : mp4
Format : MPEG-4
Format : MPEG-4
Format/Extensions usually used : mov mp4 m4v m4a m4b m4p 3ga 3gpa 3gpp 3gp 3gpp2 3g2 k3g jpm jpx mqv ismv isma ismt f4a f4b f4v
Commercial name : MPEG-4
Format profile : Base Media
Internet media type : video/mp4
Codec ID : isom
Codec ID : isom (isom/iso2/mp41)
Codec ID/Url :
http://www.apple.com/quicktime/download/standalone.html
CodecID_Compatible : isom/iso2/mp41
Codec : MPEG-4
Codec : MPEG-4
Codec/Extensions usually used : mov mp4 m4v m4a m4b m4p 3ga 3gpa 3gpp 3gp 3gpp2 3g2 k3g jpm jpx mqv ismv isma ismt f4a f4b f4v
File size : 386063
File size : 377 KiB
File size : 377 KiB
File size : 377 KiB
File size : 377 KiB
File size : 377.0 KiB
Duration : 12301
Duration : 12 s 301 ms
Duration : 12 s 301 ms
Duration : 12 s 301 ms
Duration : 00:00:12.301
Duration : 00:00:14:00
Duration : 00:00:12.301 (00:00:14:00)
Overall bit rate mode : CBR
Overall bit rate mode : Constant
Overall bit rate : 251077
Overall bit rate : 251 kb/s
Frame rate : 3.415
Frame rate : 3.415 FPS
Frame count : 42
Stream size : 1368
Stream size : 1.34 KiB (0%)
Stream size : 1 KiB
Stream size : 1.3 KiB
Stream size : 1.34 KiB
Stream size : 1.336 KiB
Stream size : 1.34 KiB (0%)
Proportion of this stream : 0.00354
HeaderSize : 36
DataSize : 384703
FooterSize : 1324
IsStreamable : No
File creation date : UTC 2017-05-05 19:49:25.209
File creation date (local) : 2017-05-05 15:49:25.209
File last modification date : UTC 2017-01-04 19:04:53.000
File last modification date (local) : 2017-01-04 15:04:53.000
Writing application : Lavf54.3.100
Writing application : Lavf54.3.100Video
Count : 338
Count of stream of this kind : 1
Kind of stream : Video
Kind of stream : Video
Stream identifier : 0
StreamOrder : 0
Inform : 250 kb/s, 200*200 (1.000), at
3.415 FPS, MPEG-4 Visual (Simple@L1)
ID : 1
ID : 1
Format : MPEG-4 Visual
Commercial name : MPEG-4 Visual
Format profile : Simple@L1
Format settings, BVOP : No
Format settings, BVOP : No
Format settings, QPel : No
Format settings, QPel : No
Format settings, GMC : 0
Format settings, GMC : No warppoints
Format settings, Matrix : Default (H.263)
Format settings, Matrix : Default (H.263)
Internet media type : video/MP4V-ES
Codec ID : 20
Codec : MPEG-4V
Codec : MPEG-4 Visual
Codec/Family : MPEG-4V
Codec/CC : 20
Codec profile : Simple@L1
Codec settings, Packet bitstream : No
Codec settings, BVOP : No
Codec settings, QPel : No
Codec settings, GMC : 0
Codec settings, GMC : No warppoints
Codec settings, Matrix : Default (H.263)
Duration : 12301
Duration : 12 s 301 ms
Duration : 12 s 301 ms
Duration : 12 s 301 ms
Duration : 00:00:12.301
Duration : 00:00:14:00
Duration : 00:00:12.301 (00:00:14:00)
Bit rate mode : CBR
Bit rate mode : Constant
Bit rate : 250207
Bit rate : 250 kb/s
Width : 200
Width : 200 pixels
Height : 200
Height : 200 pixels
Sampled_Width : 200
Sampled_Height : 200
Pixel aspect ratio : 1.000
Display aspect ratio : 1.000
Display aspect ratio : 1.000
Rotation : 0.000
Frame rate mode : VFR
Frame rate mode : Variable
Frame rate : 3.415
Frame rate : 3.415 FPS
Minimum frame rate : 3.333
Minimum frame rate : 3.333 FPS
Maximum frame rate : 65535.000
Maximum frame rate : 65 535.000 FPS
Frame count : 42
Resolution : 8
Resolution : 8 bits
Colorimetry : 4:2:0
Color space : YUV
Chroma subsampling : 4:2:0
Chroma subsampling : 4:2:0
Bit depth : 8
Bit depth : 8 bits
Scan type : Progressive
Scan type : Progressive
Interlacement : PPF
Interlacement : Progressive
Compression mode : Lossy
Compression mode : Lossy
Bits/(Pixel*Frame) : 1.832
Stream size : 384695
Stream size : 376 KiB (100%)
Stream size : 376 KiB
Stream size : 376 KiB
Stream size : 376 KiB
Stream size : 375.7 KiB
Stream size : 376 KiB (100%)
Proportion of this stream : 0.99646
Writing library : Lavc54.14.101
Writing library : Lavc54.14.101