
Recherche avancée
Médias (91)
-
#3 The Safest Place
16 octobre 2011, par
Mis à jour : Février 2013
Langue : English
Type : Audio
-
#4 Emo Creates
15 octobre 2011, par
Mis à jour : Février 2013
Langue : English
Type : Audio
-
#2 Typewriter Dance
15 octobre 2011, par
Mis à jour : Février 2013
Langue : English
Type : Audio
-
#1 The Wires
11 octobre 2011, par
Mis à jour : Février 2013
Langue : English
Type : Audio
-
ED-ME-5 1-DVD
11 octobre 2011, par
Mis à jour : Octobre 2011
Langue : English
Type : Audio
-
Revolution of Open-source and film making towards open film making
6 octobre 2011, par
Mis à jour : Juillet 2013
Langue : English
Type : Texte
Autres articles (112)
-
Script d’installation automatique de MediaSPIP
25 avril 2011, parAfin de palier aux difficultés d’installation dues principalement aux dépendances logicielles coté serveur, un script d’installation "tout en un" en bash a été créé afin de faciliter cette étape sur un serveur doté d’une distribution Linux compatible.
Vous devez bénéficier d’un accès SSH à votre serveur et d’un compte "root" afin de l’utiliser, ce qui permettra d’installer les dépendances. Contactez votre hébergeur si vous ne disposez pas de cela.
La documentation de l’utilisation du script d’installation (...) -
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 à (...) -
La sauvegarde automatique de canaux SPIP
1er avril 2010, parDans le cadre de la mise en place d’une plateforme ouverte, il est important pour les hébergeurs de pouvoir disposer de sauvegardes assez régulières pour parer à tout problème éventuel.
Pour réaliser cette tâche on se base sur deux plugins SPIP : Saveauto qui permet une sauvegarde régulière de la base de donnée sous la forme d’un dump mysql (utilisable dans phpmyadmin) mes_fichiers_2 qui permet de réaliser une archive au format zip des données importantes du site (les documents, les éléments (...)
Sur d’autres sites (11876)
-
FFMPEG error with avformat_open_input returning -135
28 avril 2015, par LawfulEvilI have a DLL one of my applications uses to receive video from RTSP cameras. Under the hood, the DLL uses FFMPEG libs from this release zip :
ffmpeg-20141022-git-6dc99fd-win64-shared.7z
We have a wide variety of cameras in house and most of them work just fine. However, on one particular Pelco Model Number : IXE20DN-OCP, I am unable to connect. I tested the camera and rtsp connection string on VLC and it connects to the camera just fine.
I found the connection string here : http://www.ispyconnect.com/man.aspx?n=Pelco
rtsp://IPADDRESS:554/1/stream1
Oddly, even if I leave the port off of VLC, it connects, so I’m guessing its the default RTSP port or that VLC tries a variety of things based on your input.
In any case, when I attempt to connect, I get an error from av_format_open_input. It returns a code of -135. When I looked in the error code list I didn’t see that listed. For good measure, I printed out all the errors in error.h just to see what their values were.
DumpErrorCodes - Error Code : AVERROR_BSF_NOT_FOUND = -1179861752
DumpErrorCodes - Error Code : AVERROR_BUG = -558323010
DumpErrorCodes - Error Code : AVERROR_BUFFER_TOO_SMALL = -1397118274
DumpErrorCodes - Error Code : AVERROR_DECODER_NOT_FOUND = -1128613112
DumpErrorCodes - Error Code : AVERROR_DEMUXER_NOT_FOUND = -1296385272
DumpErrorCodes - Error Code : AVERROR_ENCODER_NOT_FOUND = -1129203192
DumpErrorCodes - Error Code : AVERROR_EOF = -541478725
DumpErrorCodes - Error Code : AVERROR_EXIT = -1414092869
DumpErrorCodes - Error Code : AVERROR_EXTERNAL = -542398533
DumpErrorCodes - Error Code : AVERROR_FILTER_NOT_FOUND = -1279870712
DumpErrorCodes - Error Code : AVERROR_INVALIDDATA = -1094995529
DumpErrorCodes - Error Code : AVERROR_MUXER_NOT_FOUND = -1481985528
DumpErrorCodes - Error Code : AVERROR_OPTION_NOT_FOUND = -1414549496
DumpErrorCodes - Error Code : AVERROR_PATCHWELCOME = -1163346256
DumpErrorCodes - Error Code : AVERROR_PROTOCOL_NOT_FOUND = -1330794744
DumpErrorCodes - Error Code : AVERROR_STREAM_NOT_FOUND = -1381258232
DumpErrorCodes - Error Code : AVERROR_BUG2 = -541545794
DumpErrorCodes - Error Code : AVERROR_UNKNOWN = -1313558101
DumpErrorCodes - Error Code : AVERROR_EXPERIMENTAL = -733130664
DumpErrorCodes - Error Code : AVERROR_INPUT_CHANGED = -1668179713
DumpErrorCodes - Error Code : AVERROR_OUTPUT_CHANGED = -1668179714
DumpErrorCodes - Error Code : AVERROR_HTTP_BAD_REQUEST = -808465656
DumpErrorCodes - Error Code : AVERROR_HTTP_UNAUTHORIZED = -825242872
DumpErrorCodes - Error Code : AVERROR_HTTP_FORBIDDEN = -858797304
DumpErrorCodes - Error Code : AVERROR_HTTP_NOT_FOUND = -875574520
DumpErrorCodes - Error Code : AVERROR_HTTP_OTHER_4XX = -1482175736
DumpErrorCodes - Error Code : AVERROR_HTTP_SERVER_ERROR = -1482175992Nothing even close to -135. I did find this error, sort of on stack overflow, here runtime error when linking ffmpeg libraries in qt creator where the author claims it is a DLL loading problem error. I’m not sure what led him to think that, but I followed the advice and used the dependency walker (http://www.dependencywalker.com/) to checkout what dependencies it thought my DLL needed. It listed a few, but they were already provided in my install package.
To make sure it was picking them up, I manually removed them from the install and observed a radical change in program behavior(that being my DLL didn’t load and start to run at all).
So, I’ve got a bit of init code :
void FfmpegInitialize()
{
av_lockmgr_register(&LockManagerCb);
av_register_all();
LOG_DEBUG0("av_register_all returned\n");
}Then I’ve got my main open connection routine ...
int RTSPConnect(const char *URL, int width, int height, frameReceived callbackFunction)
{
int errCode =0;
if ((errCode = avformat_network_init()) != 0)
{
LOG_ERROR1("avformat_network_init returned error code %d\n", errCode);
}
LOG_DEBUG0("avformat_network_init returned\n");
//Allocate space and setup the the object to be used for storing all info needed for this connection
fContextReadFrame = avformat_alloc_context(); // free'd in the Close method
if (fContextReadFrame == 0)
{
LOG_ERROR1("Unable to set rtsp_transport options. Error code = %d\n", errCode);
return FFMPEG_OPTION_SET_FAILURE;
}
LOG_DEBUG1("avformat_alloc_context returned %p\n", fContextReadFrame);
AVDictionary *opts = 0;
if ((errCode = av_dict_set(&opts, "rtsp_transport", "tcp", 0)) < 0)
{
LOG_ERROR1("Unable to set rtsp_transport options. Error code = %d\n", errCode);
return FFMPEG_OPTION_SET_FAILURE;
}
LOG_DEBUG1("av_dict_set returned %d\n", errCode);
//open rtsp
DumpErrorCodes();
if ((errCode = avformat_open_input(&fContextReadFrame, URL, NULL, &opts)) < 0)
{
LOG_ERROR2("Unable to open avFormat RF inputs. URL = %s, and Error code = %d\n", URL, errCode);
LOG_ERROR2("Error Code %d = %s\n", errCode, errMsg(errCode));
// NOTE context is free'd on failure.
return FFMPEG_FORMAT_OPEN_FAILURE;
}
...To be sure I didn’t misunderstand the error code I printed the error message from ffmpeg but the error isn’t found and my canned error message is returned instead.
My next step was going to be hooking up wireshark on my connection attempt and on the VLC connection attempt and trying to figure out what differences(if any) are causing the problem and what I can do to ffmpeg to make it work. As I said, I’ve got a dozen other cameras in house that use RTSP and they work with my DLL. Some utilize usernames/passwords/etc as well(so I know that isn’t the problem).
Also, my run logs :
FfmpegInitialize - av_register_all returned
Open - Open called. Pointers valid, passing control.
Rtsp::RtspInterface::Open - Rtsp::RtspInterface::Open called
Rtsp::RtspInterface::Open - VideoSourceString(35) = rtsp://192.168.14.60:554/1/stream1
Rtsp::RtspInterface::Open - Base URL = (192.168.14.60:554/1/stream1)
Rtsp::RtspInterface::Open - Attempting to open (rtsp://192.168.14.60:554/1/stream1) for WxH(320x240) video
RTSPSetFormatH264 - RTSPSetFormatH264
RTSPConnect - Called
LockManagerCb - LockManagerCb invoked for op 1
LockManagerCb - LockManagerCb invoked for op 2
RTSPConnect - avformat_network_init returned
RTSPConnect - avformat_alloc_context returned 019E6000
RTSPConnect - av_dict_set returned 0
DumpErrorCodes - Error Code : AVERROR_BSF_NOT_FOUND = -1179861752
...
DumpErrorCodes - Error Code : AVERROR_HTTP_SERVER_ERROR = -1482175992
RTSPConnect - Unable to open avFormat RF inputs. URL = rtsp://192.168.14.60:554/1/stream1, and Error code = -135
RTSPConnect - Error Code -135 = No Error Message AvailableI’m going to move forward with wireshark but would like to know the origin of the -135 error code from ffmpeg. When I look at the code if ’ret’ is getting set to -135, it must be happening as a result of the return code from a helper method and not directly in the avformat_open_input method.
https://www.ffmpeg.org/doxygen/2.5/libavformat_2utils_8c_source.html#l00398
After upgrading to the latest daily ffmpeg build, I get data on wireshark. Real Time Streaming Protocol :
Request: SETUP rtsp://192.168.14.60/stream1/track1 RTSP/1.0\r\n
Method: SETUP
URL: rtsp://192.168.14.60/stream1/track1
Transport: RTP/AVP/TCP;unicast;interleaved=0-1
CSeq: 3\r\n
User-Agent: Lavf56.31.100\r\n
\r\nThe response to that is the first ’error’ that I can detect in the initiation.
Response: RTSP/1.0 461 Unsupported Transport\r\n
Status: 461
CSeq: 3\r\n
Date: Sun, Jan 04 1970 16:03:05 GMT\r\n
\r\nI’m going to guess that... it means the transport we selected was unsupported. I quick check of the code reveals I picked ’tcp’. Looking through the reply to the DESCRIBE command, it appears :
Media Protocol: RTP/AVP
Further, when SETUP is issued by ffmpeg, it specifies :
Transport: RTP/AVP/TCP;unicast;interleaved=0-1
I’m going to try, on failure here to pick another transport type and see how that works. Still don’t know where the -135 comes from.
-
How to repair a raw H.264 stream using FFmpeg
13 janvier 2020, par Chris KennedyI apologize if I start rambling or seem incoherent.
Preface : My house caught on fire last week.
I have been trying to get the footage off my security camera system (Zmodo, don’t ever buy this crap) to share with the fire marshal and my insurance. I can’t get it off the "proper" way because the box doesn’t detect any drive or any file system I throw at it, and none of their viewing apps (for Android or Windows) allow video downloads.
I was able to get the files directly from the system’s hard drive, but they’re (of course) messed up in such a way that I can’t just open up VLC (or even Zmodo’s own viewing software !) and view them. I have spent several hours scouring the web for various ways to run it through FFmpeg to see if it can repair the file, but I’ve had no luck so far and my mind is already stretched thin with everything else.
This is the output from ffprobe :
ffprobe version 4.2.1 Copyright (c) 2007-2019 the FFmpeg developers
built with gcc 9.1.1 (GCC) 20190807
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-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-libvorbis --enable-libvo-amrwbenc --enable-libmysofa --enable-libspeex --enable-libxvid --enable-libaom --enable-libmfx --enable-amf --enable-ffnvcodec --enable-cuvid --enable-d3d11va --enable-nvenc --enable-nvdec --enable-dxva2 --enable-avisynth --enable-libopenmpt
libavutil 56. 31.100 / 56. 31.100
libavcodec 58. 54.100 / 58. 54.100
libavformat 58. 29.100 / 58. 29.100
libavdevice 58. 8.100 / 58. 8.100
libavfilter 7. 57.100 / 7. 57.100
libswscale 5. 5.100 / 5. 5.100
libswresample 3. 5.100 / 3. 5.100
libpostproc 55. 5.100 / 55. 5.100
[h264 @ 000002479ee1c180] Format h264 detected only with low score of 1, misdetection possible!Then this repeats several dozen times :
Last message repeated 1 times
[h264 @ 000002479ee1de40] decode_slice_header error
[h264 @ 000002479ee1de40] no frame!
[h264 @ 000002479ee1de40] non-existing PPS 0 referencedAnd it finishes off with this :
[h264 @ 000002479ee1c180] Could not find codec parameters for stream 0 (Video: h264, none): unspecified size
Consider increasing the value for the 'analyzeduration' and 'probesize' options
Input #0, h264, from '.\recfile_-200102-130000-135959-00001100.264':
Duration: N/A, bitrate: N/A
Stream #0:0: Video: h264, none, 25 fps, 25 tbr, 1200k tbn, 50 tbcI have tried several options with ffmpeg, including force_key_frames, setting the analyzeduration and probesize options to max_int, tried a -c copy, forcibly specified x264, tried to force a specific resolution (which it should all be standard HD video), and several others that I can’t recall at the moment.
The video files are also accompanied by a .IDX file, but I haven’t figured out how important they are if they are at all to the video file.
I can provide links to the smallest video and its associated IDX if needed, but if anyone can think of anything else to try on these files I’d greatly appreciate it.
-
ffmpeg :how to apply animation in multiple images that will me merged in a video template in android
1er mars 2023, par Pavan GhanateI am trying to merge number of selected images from gallery to a video template in order to make video status or short video in a android app, I am able to merge the selected images in the video using below cammand now i want to add animation


ArrayList<string> cmd2 = new ArrayList<>();
 cmd2.add("-y");
 cmd2.add("-i");
 if (video_temp_path!= null){
 cmd2.add(video_temp_path);
 }else {
 cmd2.add(Environment.getExternalStorageDirectory().getPath()
 + "/Download/happy.mp4");
 }


 for (int no = 0; no < paths.length; no++) {
 cmd2.add("-i");

 cmd2.add(paths[no]);

 }

 cmd2.add("-filter_complex");



 cmd2.add("[0][1]overlay=x=100:y=200:enable='between(t,3,8)'[v1];" +
 "[v1][2]overlay=x=100:y=200:enable='between(t,10,15)'[v2];" +
 "[v2][3]overlay=x=100:y=200:enable='gt(t,17)'[v3]");
 cmd2.add("-map");
 cmd2.add("[v3]");
 cmd2.add("-map");
 cmd2.add( "0:a");
 cmd2.add(Environment.getExternalStorageDirectory().getPath()
 + "/Download/output.mp4");
</string>


but now i want to add fade in out animation to images so I am using this cammand generated by chatgpt but its giving me error


ArrayList<string> cmd2 = new ArrayList<>();
 cmd2.add("-y");
 cmd2.add("-i");

 if (video_temp_path != null) {
 cmd2.add(video_temp_path);
 } else {
 cmd2.add(Environment.getExternalStorageDirectory().getPath() +
 "/Download/happy.mp4");
}

for (int no = 0; no < paths.length; no++) {
 cmd2.add("-loop");
 cmd2.add("1"); // loop the image

 cmd2.add("-t");
 cmd2.add("5"); // duration of the image

 cmd2.add("-i");
 cmd2.add(paths[no]);

 cmd2.add("-filter_complex");
 cmd2.add("[1:v]fade=in:st=0:d=1[tin];" +
 "[1:v]fade=out:st=4:d=1[tout];" +
 "[0:v][tin]overlay=x=100:y=200" +
 "[v1];" +
 "[v1][tout]overlay=x=100:y=200:enable='between(t,10,15)'[v2];" +
 "[v2][2:v]overlay=x=100:y=200:enable='gt(t,17)'[v3]");

 cmd2.add("-map");
 cmd2.add("[v3]");
 cmd2.add("-map");
 cmd2.add("0:a");
}

cmd2.add(Environment.getExternalStorageDirectory().getPath() +
 "/Download/output.mp4");
</string>


error is


Option map (set input stream mapping) cannot be applied to input url /storage/emulated/0/Pictures/temp/1677570327312.jpg -- you are trying to apply an input option to an output file or vice versa. Move this option before the file it belongs to.



2023-03-01 12:50:50.707 5950-6326/com.android.mergevideo E/mobile-ffmpeg : Error parsing options for input file /storage/emulated/0/Pictures/temp/1677570327312.jpg.
2023-03-01 12:50:50.707 5950-6326/com.android.mergevideo E/mobile-ffmpeg : Error opening input files :
2023-03-01 12:50:50.707 5950-6326/com.android.mergevideo E/mobile-ffmpeg : Invalid argument