
Recherche avancée
Autres articles (67)
-
MediaSPIP v0.2
21 juin 2013, parMediaSPIP 0.2 est la première version de MediaSPIP stable.
Sa date de sortie officielle est le 21 juin 2013 et est annoncée ici.
Le fichier zip ici présent contient uniquement les sources de MediaSPIP en version standalone.
Comme pour la version précédente, il est nécessaire d’installer manuellement l’ensemble des dépendances logicielles sur le serveur.
Si vous souhaitez utiliser cette archive pour une installation en mode ferme, il vous faudra également procéder à d’autres modifications (...) -
MediaSPIP version 0.1 Beta
16 avril 2011, parMediaSPIP 0.1 beta est la première version de MediaSPIP décrétée comme "utilisable".
Le fichier zip ici présent contient uniquement les sources de MediaSPIP en version standalone.
Pour avoir une installation fonctionnelle, il est nécessaire d’installer manuellement l’ensemble des dépendances logicielles sur le serveur.
Si vous souhaitez utiliser cette archive pour une installation en mode ferme, il vous faudra également procéder à d’autres modifications (...) -
Contribute to translation
13 avril 2011You can help us to improve the language used in the software interface to make MediaSPIP more accessible and user-friendly. You can also translate the interface into any language that allows it to spread to new linguistic communities.
To do this, we use the translation interface of SPIP where the all the language modules of MediaSPIP are available. Just subscribe to the mailing list and request further informantion on translation.
MediaSPIP is currently available in French and English (...)
Sur d’autres sites (6252)
-
Continuous YouTube live stream via ffmpeg keeps failing after a while [closed]
23 octobre 2024, par dooleyoI am trying to stream a simple MP4 file as a 24/7 YouTube radio station on repeat from a virtual machine using ffmpeg. It's only a 23 minute ( 1GB) file, and runs fine for hours or even days, then hangs up. I've tried on a small Digital Ocean droplet and detaching the ssh session with
screen
. I am using-c copy
so I don't need to process or re-encode anything (even on the smallest droplet, the memory/cpu utilization is negligible, so I know that's not the issue). I have even tried some of ffmpeg's auto-restart options to no avail. Here is the command I'm currently running :

ffmpeg -stream_loop -1 -re -i file.mp4 -c copy -drop_pkts_on_overflow 1 -attempt_recovery 1 -recover_any_error 1 -recovery_wait_time 1 -f flv "rtmp://x.rtmp.youtube.com/live2/{STREAM_KEY}"


This works perfectly, for a time, then hangs up with :


aost#0:1/copy @ 0x623b201c5fc0] Error submitting a packet to the muxer: Broken pipe 
[out#0/flv @ 0x623b201a1780] Error muxing a packet
[flv @ 0x623b201c3940] Failed to update header with correct duration.
[flv @ 0x623b201c3940] Failed to update header with correct filesize.
[out#0/flv @ 0x623b201a1780] Error writing trailer: Broken pipe
[out#0/flv @ 0x623b201a1780] Error closing file: Broken pipe
[out#0/flv @ 0x623b201a1780] video:9310695kB audio:571706kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.153029%
size= 9897524kB time=03:24:40.66 bitrate=6602.3kbits/s speed= 1x



There are not many articles I've found covering the broken pipe issue, but those that do seem to involve either A) streams that won't start, or B) streams where the broken pipe occurs the first time the input tries to loop (neither of which are my problem, since it streams and loops fine for quite a while).


Thanks in advance !


-
More Cinepak Madness
20 octobre 2011, par Multimedia Mike — Codec TechnologyFellow digital archaeologist Clone2727 found a possible fifth variant of the Cinepak video codec. He asked me if I cared to investigate the sample. I assured him I wouldn’t be able to die a happy multimedia nerd unless I have cataloged all possible Cinepak variants known to exist in the wild. I’m sure there are chemistry nerds out there who are ecstatic when another element is added to the periodic table. Well, that’s me, except with weird multimedia formats.
Background
Cinepak is a video codec that saw widespread use in the early days of digital multimedia. To date, we have cataloged 4 variants of Cinepak in the wild. This distinction is useful when trying to write and maintain an all-in-one decoder. The variants are :- The standard type : Most Cinepak data falls into this category. It decodes to a modified/simplified YUV 4:2:0 planar colorspace and is often seen in AVI and QuickTime/MOV files.
- 8-bit greyscale : Essentially the same as the standard type but with only a Y plane. This has only been identified in AVI files and is distinguished by the file header’s video bits/pixel field being set to 8 instead of 24.
- 8-bit paletted : Again, this is identified by the video header specifying 8 bits/pixel for a Cinepak stream. There is essentially only a Y plane in the data, however, each 8-bit value is a palette index. The palette is transported along with the video header. To date, only one known sample of this format has even been spotted in the wild, and it’s classified as NSFW. It is also a QuickTime/MOV file.
- Sega/FILM CPK data : Sega Saturn games often used CPK files which stored a variant of Cinepak that, while very close the standard Cinepak, couldn’t be decoded with standard decoder components.
So, a flexible Cinepak decoder has to identify if the file’s video header specified 8 bits/pixel. How does it distinguish between greyscale and paletted ? If a file is paletted, a custom palette should have been included with the video header. Thus, if video bits/pixel is 8 and a palette is present, use paletted ; else, use greyscale. Beyond that, the Cinepak decoder has a heuristic to determine how to handle the standard type of data, which might deviate slightly if it comes from a Sega CPK file.
The Fifth Variant ?
Now, regarding this fifth variant– the reason this issue came up is because of that aforementioned heuristic. Basically, a Cinepak chunk is supposed to store the length of the entire chunk in its header. The data from a Sega CPK file plays fast and loose with this chunk size and the discrepancy makes it easy to determine if the data requires special handling. However, a handful of files discovered on a Macintosh game called “The Journeyman Project : Pegasus Prime” have chunk lengths which are sometimes in disagreement with the lengths reported in the containing QuickTime file’s stsz atom. This trips the heuristic and tries to apply the CPK rules against Cinepak data which, aside from the weird chunk length, is perfectly compliant.Here are the first few chunk sizes, as reported by the file header (stsz atom) and the chunk :
size from stsz = 7880 (0x1EC8) ; from header = 3940 (0xF64) size from stsz = 3940 (0xF64) ; from header = 3940 (0xF64) size from stsz = 15792 (0x3DB0) ; from header = 3948 (0xF6C) size from stsz = 11844 (0x2E44) ; from header = 3948 (0xF6C)
Hey, there’s a pattern here. If they don’t match, then the stsz size is an even multiple of the chunk size (2x, 3x, or 4x in my observation). I suppose I could revise the heuristic to state that if the stsz size is 2x, 3x, 4x, or equal to the chunk header, qualify it as compliant Cinepak data.
Of course it feels impure, but software engineering is rarely about programmatic purity. A decade of special cases in the FFmpeg / Libav codebases are a testament to that.
What’s A Variant ?
Suddenly, I find myself contemplating what truly constitutes a variant. Maybe this was just a broken encoder program making these files ? And for that, I assign it the designation of distinct variation, like some sort of special, unique showflake ?Then again, I documented Magic Carpet FLIC as being a distinct variant of the broader FLIC format (which has an enormous number of variants as well).
-
avcodec/xbmenc : Do not add last comma into output
19 janvier 2021, par Jose Da Silvaavcodec/xbmenc : Do not add last comma into output
There is a minor bug in xbm encode which adds a trailing comma at the end
of data. This isn't a big problem, but it would be nicer to be more
technically true to an array of data (by not including the last comma).This bug fixes the output from something like this (having 4 values) :
static unsigned char image_bits[] = 0x00, 0x11, 0x22,
to C code that looks like this instead (having 3 values) :
static unsigned char image_bits[] = 0x00, 0x11, 0x22
which is the intended results.
Subject : [PATCH 1/3] avcodec/xbmenc : Do not add last comma into output arrayxbm outputs c arrays of data.
Including a comma at the end means there is another value to be added.
This bug fix changes something like this :
static unsigned char image_bits[] = 0x00, 0x11, 0x22,
to C code like this :
static unsigned char image_bits[] = 0x00, 0x11, 0x22Signed-off-by : Joe Da Silva <digital@joescat.com>