
Recherche avancée
Autres articles (70)
-
Les autorisations surchargées par les plugins
27 avril 2010, parMediaspip core
autoriser_auteur_modifier() afin que les visiteurs soient capables de modifier leurs informations sur la page d’auteurs -
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. -
Support audio et vidéo HTML5
10 avril 2011MediaSPIP utilise les balises HTML5 video et audio pour la lecture de documents multimedia en profitant des dernières innovations du W3C supportées par les navigateurs modernes.
Pour les navigateurs plus anciens, le lecteur flash Flowplayer est utilisé.
Le lecteur HTML5 utilisé a été spécifiquement créé pour MediaSPIP : il est complètement modifiable graphiquement pour correspondre à un thème choisi.
Ces technologies permettent de distribuer vidéo et son à la fois sur des ordinateurs conventionnels (...)
Sur d’autres sites (9464)
-
Python script doesn't work properly when ran through terminal, but works fine in Jupyter and Visual Studio
21 octobre 2018, par Ivan NovikovI have a script to extract the audio from all video files in a folder.
The folder with videos is located at : /Users/MyName/Downloads/Video_Audio_files
When I try to run it through terminal and I’m prompted for the folder path
folder = input("Path to folder:")
, I drag and drop it there (which is how I got the above path), but the script doesn’t seem to be working (stuck at 0 out of 7 and no output files).When I input exactly the same path when prompted in Jupyter Notebook or in Visual Studio it works perfectly !
Edit : I think I have found the issue, when I drag and drop the folder, there is an extra space (’Downloads/folder ’ instead of ’Downloads/folder’).
pbar = ProgressBar()
files = []
extensions = []
folder = input("Path to folder:")
#folder = 'Video_Audio_files'
pathlist = Path(folder).glob('**/*.mp4')
for path in pathlist:
path_in_str = str(path)
name = path_in_str.split("/")[1]
files.append(path_in_str.split(".")[0])
extensions.append(path_in_str.split(".")[1])
os.system('cd ' + folder)
for i in pbar(range(len(files))):
video_format = extensions[i]
video_name = files[i]
output_format = 'flac'
output_name = video_name + '_audio'
bashCommand = 'ffmpeg -i ' + video_name + '.' + video_format + ' -f ' + output_format + ' -ab 192000 -vn ' + output_name + '.' + output_format
#should be of this format: bashCommand = 'ffmpeg -i Video.mp4 -f flac -ab 192000 -vn ExtractedAudio.flac'
os.system(bashCommand) -
Decoding with FFMPEG on Visual Studio 2010
20 décembre 2018, par user2439801I just started using FFMPEG with C++ and try to code an audio decoder then write the decoded audio into a file.
However i’m not sure about which data to write to the output file. As far as i know from looking at the sample codes it seems to be the
AVFrame -> data[0]
.
But when i try to print it on the consoles, i get some random numbers that are different each time i run the program. And when i try to write thisAVFrame->data[0]
into a file i keep getting an error.So my question is how can I write the decoded audio after I call the function
av_codec_decode_audio4
?Below I attached my code and I pass the argument "C :\02.mp3" which is a path for a valid mp3 file on my PC.
Thank you for your help.
// TestFFMPEG.cpp : Audio Decoder
//
#include "stdafx.h"
#include <iostream>
#include <fstream>
#include <sstream>
extern "C" {
#include
#include
#include
}
using namespace std;
int main(int argc, char* argv[])
{
int audioStream = -1;
AVCodec *aCodec;
AVPacket avPkt;
AVFrame *decode_frame = avcodec_alloc_frame();
AVCodecContext *aCodecCtxt;
AVFormatContext *pFormatCtxt = NULL;
if(argc != 2) { // Checking whether there is enough argument
return -1;
}
av_register_all(); //Initialize CODEC
avformat_network_init();
av_init_packet (&avPkt);
if (avformat_open_input (&pFormatCtxt, argv[1],NULL,NULL)!= 0 ){ //Opening File
return -2;
}
if(avformat_find_stream_info (pFormatCtxt,NULL) < 0){ //Get Streams Info
return -3;
}
AVStream *stream = NULL;
//av_read_play (pFormatCtxt); //open streams
for (int i = 0; i < pFormatCtxt->nb_streams ; i++) { //Find Audio Stream
if (pFormatCtxt->streams[i]->codec->codec_type == AVMEDIA_TYPE_AUDIO){
audioStream =i;
}
}
aCodecCtxt = pFormatCtxt ->streams [audioStream]->codec; // opening decoder
aCodec = avcodec_find_decoder( pFormatCtxt->streams [audioStream] ->codec->codec_id);
if (!aCodec) {
return -8;
}
if (avcodec_open2(aCodecCtxt,aCodec,NULL)!=0) {
return -9;
}
int cnt = 0;
while(av_read_frame(pFormatCtxt,&avPkt) >= 0 ){
if (avPkt.stream_index == audioStream){
int check = 0;
int result = avcodec_decode_audio4 (aCodecCtxt,decode_frame,&check, &avPkt);
cout << "Decoded : "<< (int) decode_frame->data[0] <<", "<< "Check : " << check << ", Format :" << decode_frame->format <<" " << decode_frame->linesize[0]<< " "<<cnt return="return" acodec="acodec">id;
}
</cnt></sstream></fstream></iostream> -
Adding FFmpeg library as dependency in Visual studio project to get rid of LNK2019 error
13 mars 2019, par MSD PaulWhile compiling a project on Microsoft visual studio (to generate dll), I am getting the following linking errors (LNK2019)
Severity Code Description Project File Line Suppression State
Error LNK2019 unresolved external symbol av_strerror referenced in function "private : void __cdecl DecoderFFmpeg::printErrorMsg(int)" (?printErrorMsg@DecoderFFmpeg@@AEAAXH@Z)
Severity Code Description Project File Line Suppression State
Error LNK2019 unresolved external symbol av_get_channel_layout_nb_channels referenced in function "private : int __cdecl DecoderFFmpeg::initSwrContext(void)"several other functions like av_dict_set, av_dict_free, avcodec_decode2 which is related to the ffmpeg libraries. Can anyone please tell me how to properly add "ffmpeg" as dependenciesto this project and link it properly ?