
Recherche avancée
Médias (1)
-
The pirate bay depuis la Belgique
1er avril 2013, par
Mis à jour : Avril 2013
Langue : français
Type : Image
Autres articles (82)
-
Publier sur MédiaSpip
13 juin 2013Puis-je poster des contenus à partir d’une tablette Ipad ?
Oui, si votre Médiaspip installé est à la version 0.2 ou supérieure. Contacter au besoin l’administrateur de votre MédiaSpip pour le savoir -
Demande de création d’un canal
12 mars 2010, parEn fonction de la configuration de la plateforme, l’utilisateur peu avoir à sa disposition deux méthodes différentes de demande de création de canal. La première est au moment de son inscription, la seconde, après son inscription en remplissant un formulaire de demande.
Les deux manières demandent les mêmes choses fonctionnent à peu près de la même manière, le futur utilisateur doit remplir une série de champ de formulaire permettant tout d’abord aux administrateurs d’avoir des informations quant à (...) -
Librairies et binaires spécifiques au traitement vidéo et sonore
31 janvier 2010, parLes logiciels et librairies suivantes sont utilisées par SPIPmotion d’une manière ou d’une autre.
Binaires obligatoires FFMpeg : encodeur principal, permet de transcoder presque tous les types de fichiers vidéo et sonores dans les formats lisibles sur Internet. CF ce tutoriel pour son installation ; Oggz-tools : outils d’inspection de fichiers ogg ; Mediainfo : récupération d’informations depuis la plupart des formats vidéos et sonores ;
Binaires complémentaires et facultatifs flvtool2 : (...)
Sur d’autres sites (7576)
-
How to concat videos using ffmpeg ?
5 septembre 2021, par schissmanticsI'm trying to concat several videos using ffmpeg on macOS BigSur. I tried :


ffmpeg -i concat:"01-vid.mov|02-vid.mov|03-vid.mov|04-vid.mov" out.mov



which results in only
01-vid.mov
being re-encoded for some reason and saved toout.mov
.

and :


cat '01-vid.mov' > vid.txt
cat '02-vid.mov' > vid.txt
cat '03-vid.mov' > vid.txt
cat '04-vid.mov' > vid.txt
ffmpeg -f concat -safe 0 -i vid.txt -c copy out.mp4



Which results in the same outcome.


and :


cat 01-vid.mov 02-vid.mov 03-vid.mov 04-vid.mov > out.mov



which results in
out.mov
having the size of the 4 combined but a duration of only the first one.

and :


I join the vids using quicktime but whenever I try to re-encode the resulting vid using ffmpeg, it produces a corrupt video despite the input seemingly ok.


-
FFMPEG/C++ How to simply write out/passthrough h264 stream ?
11 août 2021, par SchuertaIm trying to learn the basics of ffmpeg writing (reading already works), so im just trying to take in an input .ts file and write out/passthrough the exact same h264 stream to a new output file. I dont get any compilation errors, but for some reason i cant figure out why my output file's framerate is very wrong. Also when i read in my output file, i get printouts saying "Packet corrupt (stream = 0, dts = #)"


I followed the instructions in the ffmpeg library comments so im not sure what im missing. I call initOutStream(), then initH264encoder(), then during the reading/decoding readH264Packet() is called repeatedly. (Removed code for readability sake, left relevant sections below) ;


Edit : If i put my output file through the actuall ffmpeg cmd app, the framerate issue seems to get fixed. Wonder where im messing up


void test::initOutStream() {

//create muxing context
outstreamContext = avformat_alloc_context();

//oformat
AVOutputFormat *guessFormat; //Populate oformat
guessFormat = av_guess_format(NULL, inputVideoUrl.c_str(), NULL);
outstreamContext->oformat = guessFormat; 
outstreamContext->oformat->video_codec = AV_CODEC_ID_H264; 
//outstreamContext->bit_rate = 400000; //No affect; 

//pb
AVIOContext *outAVIOContext = nullptr;
//int result = avio_open(&outAVIOContext, outputVideoUrl.c_str(), AVIO_FLAG_WRITE);
int result = avio_open2(&outAVIOContext, outputVideoUrl.c_str(), AVIO_FLAG_WRITE, NULL, NULL); //Documentain said to use this method
outstreamContext->pb = outAVIOContext;
}



.


void test::initH264encoder() { //Frame -> packet
int result;

h264OutCodec = avcodec_find_encoder(AV_CODEC_ID_H264);

h264OutStream = avformat_new_stream(outstreamContext, h264OutCodec);
h264OutStream->codecpar->codec_type = AVMEDIA_TYPE_VIDEO;
h264OutStream->codecpar->codec_id = AV_CODEC_ID_H264;
h264OutStream->codecpar->width = 640;
h264OutStream->codecpar->height = 480;
h264OutStream->id = H264_STREAM_ID;
h264OutStream->codecpar->color_range = AVCOL_RANGE_MPEG;
//h264OutStream->codecpar->bit_rate = 400000;

h264OutContext = avcodec_alloc_context3(h264OutCodec);

h264OutContext->width = 640;
h264OutContext->height = 480;
h264OutContext->time_base = (AVRational){1,static_cast<int>(29.97)};
h264OutContext->pix_fmt = AV_PIX_FMT_YUV420P;

result = avcodec_open2(h264OutContext, h264OutCodec, nullptr);

//Alloc packet + finish
outPacket = av_packet_alloc();

//Write header
result = avformat_write_header(outstreamContext, NULL);
}
</int>


Assume that reading was set up correctly


void test::readH264Packet(__unused uint64_t tick) {
//...av_read_frame(streamContext, inPacket);
//...avcodec_send_packet(h264Context, inPacket);
//...avcodec_receive_frame(h264Context, yuvFrame)
//My passthrough:
if(shouldOutputH264Stream){
 result = avcodec_send_frame(h264OutContext, yuvFrame); //1. Encode frame to packet
 result = avcodec_receive_packet(h264OutContext, outPacket2); //2. get encoded packet
 result = av_interleaved_write_frame(outstreamContext, outPacket2); //3. write packet
 //Write trailer and free happens later
 }
}



-
PyDub : ffmpeg header missing
7 février 2024, par Ray SiplaoI made a simple Python program that add short pauses at the start of mp3 files


import os

from pydub import AudioSegment

AUDIO_DIR = 'C:\\Users\\Ray\\Downloads\\sentence-audio'
OUT_DIR = 'C:\\Users\\Ray\\Downloads\\out-audio'

pause = AudioSegment.silent(duration=400)

for fname in os.listdir(AUDIO_DIR):
 print(f'Processing {fname}')
 newf = os.path.join(OUT_DIR, os.path.basename(fname))
 if os.path.isfile(newf):
 print(f'{fname} exists')
 continue
 audio = AudioSegment.from_mp3(os.path.join(AUDIO_DIR, fname))
 new = pause + audio
 new.export(newf, format='mp3')
 print(f'{fname} lengthened')



While running this program, I received the below error message for a particular mp3 file


Traceback (most recent call last):
 File "C:\Users\Ray\Downloads\lengthen.py", line 16, in <module>
 audio = AudioSegment.from_mp3(os.path.join(AUDIO_DIR, fname))
 File "C:\Python39\lib\site-packages\pydub\audio_segment.py", line 796, in from_mp3
 return cls.from_file(file, 'mp3', parameters=parameters)
 File "C:\Python39\lib\site-packages\pydub\audio_segment.py", line 773, in from_file
 raise CouldntDecodeError(
pydub.exceptions.CouldntDecodeError: Decoding failed. ffmpeg returned error code: 1

Output from ffmpeg/avlib:

ffmpeg version git-2020-04-03-52523b6 Copyright (c) 2000-2020 the FFmpeg developers
 built with gcc 9.3.1 (GCC) 20200328
 configuration: --enable-gpl --enable-version3 --enable-sdl2 --enable-fontconfig --enable-gnutls --enable-iconv --enable-libass --enable-libdav1d --enable-libbluray --enable-libfreetype --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libsrt --enable-libtheora --enable-libtwolame --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libzimg --enable-lzma --enable-zlib --enable-gmp --enable-libvidstab --enable-libvmaf --enable-libvorbis --enable-libvo-amrwbenc --enable-libmysofa --enable-libspeex --enable-libxvid --enable-libaom --enable-libmfx --enable-ffnvcodec --enable-cuda-llvm --enable-cuvid --enable-d3d11va --enable-nvenc --enable-nvdec --enable-dxva2 --enable-avisynth --enable-libopenmpt --enable-amf
 libavutil 56. 42.102 / 56. 42.102
 libavcodec 58. 77.101 / 58. 77.101
 libavformat 58. 42.100 / 58. 42.100
 libavdevice 58. 9.103 / 58. 9.103
 libavfilter 7. 77.101 / 7. 77.101
 libswscale 5. 6.101 / 5. 6.101
 libswresample 3. 6.100 / 3. 6.100
 libpostproc 55. 6.100 / 55. 6.100
[mp3float @ 0000016489995380] Header missing
 Last message repeated 71 times
[mp3 @ 000001648998b500] decoding for stream 0 failed
[mp3 @ 000001648998b500] Could not find codec parameters for stream 0 (Audio: mp3 (mp3float), 0 channels, fltp): unspecified frame size
Consider increasing the value for the 'analyzeduration' and 'probesize' options
Input #0, mp3, from 'C:\Users\Ray\Downloads\sentence-audio\354.mp3':
 Duration: N/A, start: 0.000000, bitrate: N/A
 Stream #0:0: Audio: mp3, 0 channels, fltp
Stream mapping:
 Stream #0:0 -> #0:0 (mp3 (mp3float) -> pcm_s16le (native))
Press [q] to stop, [?] for help
[mp3float @ 0000016489995800] Header missing
Error while decoding stream #0:0: Invalid data found when processing input
[mp3float @ 0000016489995800] Header missing
Error while decoding stream #0:0: Invalid data found when processing input
[mp3float @ 0000016489995800] Header missing
Error while decoding stream #0:0: Invalid data found when processing input
[mp3float @ 0000016489995800] Header missing
Error while decoding stream #0:0: Invalid data found when processing input
[mp3float @ 0000016489995800] Header missing
Error while decoding stream #0:0: Invalid data found when processing input
[mp3float @ 0000016489995800] Header missing
Error while decoding stream #0:0: Invalid data found when processing input
[mp3float @ 0000016489995800] Header missing
Error while decoding stream #0:0: Invalid data found when processing input
[mp3float @ 0000016489995800] Header missing
Error while decoding stream #0:0: Invalid data found when processing input
[mp3float @ 0000016489995800] Header missing
Error while decoding stream #0:0: Invalid data found when processing input
[mp3float @ 0000016489995800] Header missing
Error while decoding stream #0:0: Invalid data found when processing input
[mp3float @ 0000016489995800] Header missing
Error while decoding stream #0:0: Invalid data found when processing input
[mp3float @ 0000016489995800] Header missing
Error while decoding stream #0:0: Invalid data found when processing input
[mp3float @ 0000016489995800] Header missing
Error while decoding stream #0:0: Invalid data found when processing input
[mp3float @ 0000016489995800] Header missing
Error while decoding stream #0:0: Invalid data found when processing input
[mp3float @ 0000016489995800] Header missing
Error while decoding stream #0:0: Invalid data found when processing input
[mp3float @ 0000016489995800] Header missing
Error while decoding stream #0:0: Invalid data found when processing input
[mp3float @ 0000016489995800] Header missing
Error while decoding stream #0:0: Invalid data found when processing input
...
</module>


I thought at first that the mp3 file is corrupt, thus it is unplayable. But, when I played the file in a media player, it was fine.


I don't know how to resolve this issue. Is there any workarounds ?