
Recherche avancée
Médias (1)
-
Carte de Schillerkiez
13 mai 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Texte
Autres articles (27)
-
Keeping control of your media in your hands
13 avril 2011, parThe vocabulary used on this site and around MediaSPIP in general, aims to avoid reference to Web 2.0 and the companies that profit from media-sharing.
While using MediaSPIP, you are invited to avoid using words like "Brand", "Cloud" and "Market".
MediaSPIP is designed to facilitate the sharing of creative media online, while allowing authors to retain complete control of their work.
MediaSPIP aims to be accessible to as many people as possible and development is based on expanding the (...) -
HTML5 audio and video support
13 avril 2011, parMediaSPIP uses HTML5 video and audio tags to play multimedia files, taking advantage of the latest W3C innovations supported by modern browsers.
The MediaSPIP player used has been created specifically for MediaSPIP and can be easily adapted to fit in with a specific theme.
For older browsers the Flowplayer flash fallback is used.
MediaSPIP allows for media playback on major mobile platforms with the above (...) -
De l’upload à la vidéo finale [version standalone]
31 janvier 2010, parLe chemin d’un document audio ou vidéo dans SPIPMotion est divisé en trois étapes distinctes.
Upload et récupération d’informations de la vidéo source
Dans un premier temps, il est nécessaire de créer un article SPIP et de lui joindre le document vidéo "source".
Au moment où ce document est joint à l’article, deux actions supplémentaires au comportement normal sont exécutées : La récupération des informations techniques des flux audio et video du fichier ; La génération d’une vignette : extraction d’une (...)
Sur d’autres sites (4851)
-
How to download a part of mp3 from server ?
20 août 2020, par Sharukh MohammedUse Case


My use case is roughly equal to, adding a 15-second mp3 file to a 1 min video. All transcoding merging part will be done by FFmpeg-android so that's not the concern right now.


The flow is as follows


- 

- User can select any 15 seconds (ExoPlayer-streaming) of an mp3 (considering 192Kbps/44.1KHz of 3mins = up to 7MB)
- Then download ONLY the 15 second part and add it to the video's audio stream. (using FFmpeg)
- Use the obtained output








Tried solutions


- 

-
Extracting fragment of audio from a url


RANGE_REQUEST - I have replicated the exact same algorithm/formula in Kotlin using the exact sample file provided. But the output is not accurate
(± 1.5 secs * c) where c is proportional to startTime


-
How to crop a mp3 from x to x+n using ffmpeg ?


FFMPEG_SS - This works flawlessly with remote URLs as input, but there are two downsides,


- 

- as
startTime
increases, the size of downloaded bytes are closer to the actual size of the mp3. ffmpeg-android
does not support network requests module (at least the way we complied)






- as






So above two solutions have not been fruitful and currently, I am downloading the whole file and trimming it locally, which is definitely a bad UX.
I wonder how Instagram's music addition to story feature works because that's close to what I wanted to implement.


-
FFMPEG Compile Custom
14 décembre 2016, par Madskillz RCEI need to compile FFMPEG with version 2.1.8 of source and with the following options -
./configure --arch=x86 --target-os=mingw32 --cross-prefix=i686-w64-mingw32- --cc=i686-w64-mingw32-gcc --disable-postproc --enable-shared --disable-static --disable-decoder=libvpx --disable-encoder=aac --enable-avisynth --enable-gpl --enable-version3 --enable-pthreads --enable-avfilter --enable-runtime-cpudetect --enable-nonfree --pkg-config=pkg-config --enable-libquvi --enable-libfaac --enable-libnut --enable-libgsm --enable-libfreetype --enable-libvorbis --enable-libspeex --enable-libmp3lame --enable-zlib --enable-libtheora --enable-bzlib --enable-libvpx --enable-libxvid --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libschroedinger --enable-librtmp --enable-libass --enable-libx264 --enable-libbluray --enable-openssl --enable-libflite --enable-libsox --disable-ffplay --enable-libcdio --enable-libcelt --enable-libvo-aacenc --enable-libvo-amrwbenc --enable-libxavs --disable-outdev=sdl --disable-muxers --enable-muxer=encx --extra-cflags=-I/usr/i686-mingw32/include --extra-ldflags=-L/usr/i686-mingw32/lib --extra-libs='-lx264 -lpthread -lwinmm -llua -liconv -lcurl -lws2_32 -lssl -lcrypto -lwldap32 -lgdi32 -lwsock32'
I need to know on which system will be good to compile this ?
also some libraries might be obsolete so where can I find them ?
Please provide your input how would you compile it ?
The configuration was extracted from a custom version of avcodec-55.dll , need to demux a video using new compiled ffmpeg.
Regards
-
ffmpeg download mp3 in chunks slower than whole file
6 août 2021, par loretoparisiI'm programmatically downloading in Python mp3 file's as
wav
chunks, seeking at position withss
andt
withffmpeg
resulting in a sequence offfmpeg
commands

ffmpeg -i https://file-examples-com.github.io/uploads/2017/11/file_example_MP3_5MG.mp3 -acodec pcm_s16le -ac 1 -ar 44100 -ss 0:08:55.780000 -t 0:01:00.000000 -sn -vn -y -f wav pipe:1
ffmpeg -i https://file-examples-com.github.io/uploads/2017/11/file_example_MP3_5MG.mp3 -acodec pcm_s16le -ac 1 -ar 44100 -ss -ss 0:09:55.780000 -t 0:01:00.000000 -sn -vn -y -f wav pipe:1
ffmpeg -i https://file-examples-com.github.io/uploads/2017/11/file_example_MP3_5MG.mp3 -acodec pcm_s16le -ac 1 -ar 44100 -ss -ss -ss 0:10:55.780000 -t 0:01:00.000000 -sn -vn -y -f wav pipe:1
...



executed via
concurrent.futures.ThreadPoolExecutor
in this way :

with concurrent.futures.ThreadPoolExecutor(max_workers=NTHREADS) as executor:
 for i,cmd in enumerate(process_list):
 futures.append(executor.submit(downloader.chunk_download,(cmd,i)))

 for future in concurrent.futures.as_completed(futures):
 try:
 completed.append(future.result())
 except Exception as e:print(e)
 completed.sort() 
 for k,c in enumerate(completed):
 if not k:
 waveform = c[1]
 else:
 waveform = np.append(waveform,c[1])



where
chunk_download
is concat the chunks into the whole waveform

def chunk_download(self,args):
 cmd=args[0]
 i=args[1]
 print('Downloading chunk n° %i' % i)

 print( ' '.join(cmd))
 process = subprocess.run(cmd,
 stdout=subprocess.PIPE,
 stderr=subprocess.PIPE,
 bufsize=10**8)
 #buffer, stderr = process.communicate()
 buffer = process.stdout
 stderr = process.stderr
 print('chunk n° %i DOWNLOADED' % i)
 # convert to signal
 chunk_waveform = np.frombuffer(buffer=buffer, dtype=np.uint16, offset=8*44)
 chunk_waveform = chunk_waveform.astype(self.dtype) 
 print(len(chunk_waveform)/44100) 

 return i,chunk_waveform



this works ok, but if I download the whole mp3, executing the command in
cmd
like :

ffmpeg -i https://file-examples-com.github.io/uploads/2017/11/file_example_MP3_5MG.mp3 -acodec pcm_s16le -ac 1 -ar 44100 -sn -vn -y -f wav pipe:1



It will take less time than the concurrent chunks download for the same file length, while I would expect the opposite. Could be this related to
ffmpeg
threading option (param--thread
?). If not, why the concurrent chunks download operation is slower ?