
Recherche avancée
Autres articles (81)
-
Installation en mode ferme
4 février 2011, parLe mode ferme permet d’héberger plusieurs sites de type MediaSPIP en n’installant qu’une seule fois son noyau fonctionnel.
C’est la méthode que nous utilisons sur cette même plateforme.
L’utilisation en mode ferme nécessite de connaïtre un peu le mécanisme de SPIP contrairement à la version standalone qui ne nécessite pas réellement de connaissances spécifique puisque l’espace privé habituel de SPIP n’est plus utilisé.
Dans un premier temps, vous devez avoir installé les mêmes fichiers que l’installation (...) -
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 (...) -
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.
Sur d’autres sites (6576)
-
Can ffmpeg write metadata encoder when transcoding alac/flac to aac audio file ?
11 juin 2022, par David II have a collection of alac and flac files from Bandcamp and an ffmpeg instance compiled with libfdk_aac https://trac.ffmpeg.org/wiki/CompilationGuide/Centos#libfdk_aac and am trying to convert these to lossy audio aac files for non-critical listening.


With
ffmpeg -i Liholesie\ -\ Shamanic\ Twilight\ -\ 09\ Gray\ Wings.m4a -c:a libfdk_aac -vbr 4 -c:v copy 09_Gray_wings_vbr4.m4a
an expected aac .m4a audio file is produced, album art included, works well. There's one slight detail missing :

During the ffmpeg conversion process ffmpeg says :


Output #0, ipod, to '09_Gray_wings_vbr4.m4a':
 Metadata:
 major_brand : M4A 
 minor_version : 512
 compatible_brands: M4A isomiso2
 title : Gray Wings
 artist : Liholesie
 album_artist : Liholesie
 album : Shamanic Twilight
 comment : Visit https://liholesie.bandcamp.com
 date : 2021
 track : 9
 encoder : Lavf59.24.100
 Stream #0:0: Video: mjpeg (Baseline), yuvj444p(pc, bt470bg/unknown/unknown), 700x700 [SAR 72:72 DAR 1:1], q=2-31, 90k tbr, 90k tbn (attached pic)
 Stream #0:1(und): Audio: aac (mp4a / 0x6134706D), 44100 Hz, stereo, s16 (default)
 Metadata:
 handler_name : SoundHandler
 vendor_id : [0][0][0][0]
 encoder : Lavc59.33.100 libfdk_aac 
..





and the file produced looks like that when ffprobed except that the Metadata : encoder field is missing :


Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '09_Gray_wings_vbr4.m4a':
 Metadata:
 major_brand : M4A 
 minor_version : 512
 compatible_brands: M4A isomiso2
 title : Gray Wings
 artist : Liholesie
 album_artist : Liholesie
 album : Shamanic Twilight
 date : 2021
 encoder : Lavf59.24.100
 comment : Visit https://liholesie.bandcamp.com
 track : 9
 Duration: 00:06:57.78, start: 0.000000, bitrate: 155 kb/s
 Stream #0:0[0x2](und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 152 kb/s (default)
 Metadata:
 handler_name : SoundHandler
 vendor_id : [0][0][0][0]
 Stream #0:1[0x0]: Video: mjpeg (Baseline), yuvj444p(pc, bt470bg/unknown/unknown), 700x700 [SAR 72:72 DAR 1:1], 90k tbr, 90k tbn (attached pic)



Is there a way to write the encoder field in the Metadata section when transcoding (or is "encoder" not supported for aac m4a ? That would be weird since ffmpeg says what it says when specifying output during transcoding) .


Any hints on how to write a self-defined text to said tag during transcoding are also welcome.


-
Filename in android rejected by ffmpeg command
28 avril 2020, par ark1974Planning to use ffmpeg in Android for A/V conversion. Installed Android Studio 3.5.3. I am fairly new to Android development and the folder names, unlike in windows system, is fairly confusing to me. I am able to build the gradle without any error but the fetched pathname is rejected by ffmpeg commandline.



Questions :



1) Resulting path_name shows both pathname and filename which is cool. Is the resulting path_name correct or expected ? However, ffmpeg raised error flag citing that directory/file do not exist corresponding to the resulting path_name.



2) Inside android properties, the path starts with "Device storage/..." but Android Studio command starts with "/document/". Why I see this variation ?



3)
onActivityResult()
do not work with@override private
prefix but works with@override public
, is it expected ? Many examples on internet, however use private though.


4)
MediaStore.Audio.Media.DATA
code do not work at all, is it deprecated in Android 3.5.5 ?


Java code :



@Override public void onActivityResult(int requestCode, int resultCode, Intent data) {
 if(requestCode == 7 && resultCode == RESULT_OK){ 
 path_name = data.getData().getPath(); 
 }
 }




Result :



path_name = "/document/primary:WhatsApp/Media/WhatsApp Audio/AUD-20200402-WA0006.mp3" **strong text**



-
FFmpeg massive data loss when writing large data and swapping segments
25 avril 2023, par Bohdan PetrenkoI have an ffmpeg process running which continiously writes audio data to two 30 seconds (for testing, I'm actually planning to use 5 minutes) segments. The problem is that when I write some audio data with length more than size of two segments (60 seconds), 8-17 seconds of audio is lost. Here is how I run FFmpeg and write data :


_ffmpeg = Process.Start(new ProcessStartInfo
 {
 FileName = "ffmpeg",
 Arguments = 
 $"-y -f s16le -ar 48000 -ac {Channels} -i pipe:0 -c:a libmp3lame -f segment -segment_time {BufferDuration} -segment_format mp3 -segment_wrap 2 -reset_timestamps 1 -segment_list \"{_segmentListPath}\" \"{segmentName}\"",
 UseShellExecute = false,
 RedirectStandardInput = true
 })!;
 // Channels is usually 1, BufferDuration is 30



And here is how I write data :


public async Task WriteSilenceAsync(int amount)
{
 if (amount > _size) amount = _size; // _size is 48000 * 1 * 2 * 30 * 2 = 5760000 (size of 1 minute of audio)
 
 var silence = _silenceBuffer.AsMemory(0, amount);
 await _ffmpeg.StandardInput.BaseStream.WriteAsync(silence);
}



I tried to change the ffmpeg parameters and ways I write data. But I haven't found the solution.


I'm sure that the problem is caused by ffmpeg segments, because if I disable segmenting and write audio to a single file, there are no problems with data loss or audio missmatch. I also sure that
amount
of silence to add inWriteSilenceAsync()
method is calculated right. I'm not sure if the problem appears with data length more than 30 seconds but less then 1 minute, but I think it doesn't.

I don't know how to solve this problem and would be glad to see any suggestions or solutions.