
Recherche avancée
Autres articles (41)
-
Les formats acceptés
28 janvier 2010, parLes commandes suivantes permettent d’avoir des informations sur les formats et codecs gérés par l’installation local de ffmpeg :
ffmpeg -codecs ffmpeg -formats
Les format videos acceptés en entrée
Cette liste est non exhaustive, elle met en exergue les principaux formats utilisés : h264 : H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10 m4v : raw MPEG-4 video format flv : Flash Video (FLV) / Sorenson Spark / Sorenson H.263 Theora wmv :
Les formats vidéos de sortie possibles
Dans un premier temps on (...) -
Submit bugs and patches
13 avril 2011Unfortunately a software is never perfect.
If you think you have found a bug, report it using our ticket system. Please to help us to fix it by providing the following information : the browser you are using, including the exact version as precise an explanation as possible of the problem if possible, the steps taken resulting in the problem a link to the site / page in question
If you think you have solved the bug, fill in a ticket and attach to it a corrective patch.
You may also (...) -
Le plugin : Podcasts.
14 juillet 2010, parLe problème du podcasting est à nouveau un problème révélateur de la normalisation des transports de données sur Internet.
Deux formats intéressants existent : Celui développé par Apple, très axé sur l’utilisation d’iTunes dont la SPEC est ici ; Le format "Media RSS Module" qui est plus "libre" notamment soutenu par Yahoo et le logiciel Miro ;
Types de fichiers supportés dans les flux
Le format d’Apple n’autorise que les formats suivants dans ses flux : .mp3 audio/mpeg .m4a audio/x-m4a .mp4 (...)
Sur d’autres sites (7154)
-
Ignore streams when finding stream info
17 mars 2018, par CSNewmanI’m trying to speed up the start of ffmpeg when processing my live stream, and have narrowed down the issue to the ‘avformat_find_stream_info’ function. The source I’m trying to process seems to have a number of streams that ffmpeg is unable to determine what they are and therefore spends a while trying to find information about them (The entire analyse window). I know ahead of time that I only want to find information about stream #0:0 and #0:1, and I will be disregarding the other streams anyways.
I managed to work around this using the API by setting the number of streams before the find information call and then restoring the value afterwards.
inputContext->nb_streams = (uint) 2;
if (ffmpeg.avformat_find_stream_info(inputContext, null) < 0)
{
throw new InvalidOperationException("Could not read stream information.");
}
inputContext->nb_streams = oldSize;However, I would prefer to use the CLI interface of ffmpeg.
My current command
ffmpeg -find_stream_info false -i http://192.168.1.112:5004/auto/v1 -c copy -map 0:v:0 -map 0:a:0 -ignore_unknown -f hls -hls_flags delete_segments -segment_list playlist.m3u8 -segment_list_type hls -segment_list_size 10 -segment_list_flags +live -segment_time 10 -f segment stream%%05d.ts
Giving the following input (Unneeded logging removed)
[mpeg2video @ 000001ce79423440] Invalid frame dimensions 0x0.
Last message repeated 9 times
[mpegts @ 000001ce7941b740] Could not find codec parameters for stream 5 (Unknown: none ([11][0][0][0] / 0x000B)): unknown codec
Consider increasing the value for the 'analyzeduration' and 'probesize' options
[mpegts @ 000001ce7941b740] Could not find codec parameters for stream 6 (Unknown: none ([11][0][0][0] / 0x000B)): unknown codec
Consider increasing the value for the 'analyzeduration' and 'probesize' options
[mpegts @ 000001ce7941b740] Could not find codec parameters for stream 7
(Unknown: none ([5][0][0][0] / 0x0005)): unknown codec
Consider increasing the value for the 'analyzeduration' and 'probesize' options
[mpegts @ 000001ce7941b740] Could not find codec parameters for stream 8
(Unknown: none ([5][0][0][0] / 0x0005)): unknown codec
Consider increasing the value for the 'analyzeduration' and 'probesize' options
Input #0, mpegts, from 'http://192.168.1.112:5004/auto/v1':
Duration: N/A, start: 91296.182311, bitrate: N/A
Program 4165
Stream #0:0[0x65]: Video: mpeg2video (Main) ([2][0][0][0] / 0x0002), yuv420p(tv, top first), 704x576 [SAR 16:11 DAR 16:9], 25 fps, 25 tbr, 90k tbn, 50 tbc
Stream #0:1[0x66](eng): Audio: mp2 ([3][0][0][0] / 0x0003), 48000 Hz, stereo, s16p, 256 kb/s
Stream #0:2[0x6a](eng): Audio: mp2 ([3][0][0][0] / 0x0003), 48000 Hz, mono, s16p, 64 kb/s (visual impaired) (dependent)
Stream #0:3[0x69](eng): Subtitle: dvb_subtitle ([6][0][0][0] / 0x0006)
Stream #0:4[0x98]: Audio: mp2 ([6][0][0][0] / 0x0006), 48000 Hz, stereo, s16p, 128 kb/s
Stream #0:5[0x1c21]: Unknown: none ([11][0][0][0] / 0x000B)
Stream #0:6[0x1c33]: Unknown: none ([11][0][0][0] / 0x000B)
Stream #0:7[0x1bbf]: Unknown: none ([5][0][0][0] / 0x0005)
Stream #0:8[0x1bc1]: Unknown: none ([5][0][0][0] / 0x0005)I’m unsure if there’s a way to achieve the same functionality with the CLI, however I’m open changing how my setup works.
One idea that I considered was running two ffmpeg instances, one to strip the unneeded streams (and not find the stream info) and then have another that takes that stripped stream and performs the rest of the functionality.
Any insight here would be grateful, thanks in advance.
-
create Accord.Video.FFMPEG object intial error
14 mars 2018, par lokcyiI create an project with C# Visual studio 2013 and reference Accord.Video.FFMPEG.dll.
The Configure of projects Target Platforms is set to x86.
It is ok while compileing.
But,It would throw run time error when application running.
The exception is below. showing =>This application cannot be run in 64-bits
I have no idea what wrong with the error ?System.TypeInitializationException IsTransient=false
Message='<module>' 的型別初始設定式發生例外狀況。
Source=VideoMarkerAccord
TypeName=<module>
StackTrace:
於 VideoMarker.Form1.test()
於 VideoMarker.Form1.ConvertVedio(Int32 iFps, Int32 bitrate, Int32 width, Int32 height, Int32 iSpeed, String sOutputPath, String xml, String sVCode) 於 d:\Projects\AForge\VideoMarkerAccord\VideoMarker\Form1.cs: 行 201
於 VideoMarker.Form1.btnConvertVedio_Click(Object sender, EventArgs e) 於 d:\Projects\AForge\VideoMarkerAccord\VideoMarker\Form1.cs: 行 181
於 System.Windows.Forms.Control.OnClick(EventArgs e)
於 System.Windows.Forms.Button.OnClick(EventArgs e)
於 System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
於 System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
於 System.Windows.Forms.Control.WndProc(Message& m)
於 System.Windows.Forms.ButtonBase.WndProc(Message& m)
於 System.Windows.Forms.Button.WndProc(Message& m)
於 System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
於 System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
於 System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
於 System.Windows.Forms.UnsafeNativeMethods.DispatchMessageW(MSG& msg)
於 System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(Int32 dwComponentID, Int32 reason, Int32 pvLoopData)
於 System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(Int32 reason, ApplicationContext context)
於 System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context)
於 System.Windows.Forms.Application.Run(Form mainForm)
於 VideoMarker.Program.Main() 於 d:\Projects\AForge\VideoMarkerAccord\VideoMarker\Program.cs: 行 18
於 System.AppDomain._nExecuteAssembly(Assembly assembly, String[] args)
於 System.AppDomain.nExecuteAssembly(Assembly assembly, String[] args)
於 System.Runtime.Hosting.ManifestRunner.Run(Boolean checkAptModel)
於 System.Runtime.Hosting.ManifestRunner.ExecuteAsAssembly()
於 System.Runtime.Hosting.ApplicationActivator.CreateInstance(ActivationContext activationContext, String[] activationCustomData)
於 System.Runtime.Hosting.ApplicationActivator.CreateInstance(ActivationContext activationContext)
於 System.Activator.CreateInstance(ActivationContext activationContext)
於 Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssemblyDebugInZone()
於 System.Threading.ThreadHelper.ThreadStart_Context(Object state)
於 System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
於 System.Threading.ThreadHelper.ThreadStart()
InnerException: <crtimplementationdetails>.ModuleLoadException
_HResult=-2146233088
_message=The C++ module failed to load during process initialization.
IsTransient=false
Message=The C++ module failed to load during process initialization.
Source=msvcm90
StackTrace:
於 <crtimplementationdetails>.ThrowModuleLoadException(String errorMessage, Exception innerException)
於 <crtimplementationdetails>.ThrowModuleLoadException(String , Exception )
於 <crtimplementationdetails>.LanguageSupport.Initialize(LanguageSupport* )
於 .cctor()
InnerException: System.InvalidOperationException
_HResult=-2146233079
_message=This application cannot be run in 64-bits.
IsTransient=false
Message=This application cannot be run in 64-bits.
Source=Accord.Video.FFMPEG
StackTrace:
於 _init.{ctor}(_init* )
於 ?A0xbe509209.??__E?A0xbe509209@_initializer@@YMXXZ()
於 _initterm_m((fnptr)* pfbegin, (fnptr)* pfend)
於 <crtimplementationdetails>.LanguageSupport.InitializePerProcess(LanguageSupport* )
於 <crtimplementationdetails>.LanguageSupport._Initialize(LanguageSupport* )
於 <crtimplementationdetails>.LanguageSupport.Initialize(LanguageSupport* )
InnerException:
</crtimplementationdetails></crtimplementationdetails></crtimplementationdetails></crtimplementationdetails></crtimplementationdetails></crtimplementationdetails></crtimplementationdetails></module></module> -
Python animation ffmpeg error - ValueError : I/O operation on closed file
27 février 2018, par RobI’m trying to follow this example here to do a simple animation : https://matplotlib.org/examples/animation/basic_example_writer.html
I get this error :
ValueError Traceback (most recent call last)
/fsr/rfs07/ELEGANCE/work/code/python/s5p/animation_test.py in <module>()
25 line_ani = animation.FuncAnimation(fig1, update_line, 25, fargs=(data, l),
26 interval=50, blit=True)
---> 27 line_ani.save('lines.mp4', writer=writer)
28
29 fig2 = plt.figure()
/software/local/apps/python/2.7.9/lib/python2.7/site-packages/matplotlib/animation.pyc in save(self, filename, writer, fps, dpi, codec, bitrate, extra_args, metadata, extra_anim, savefig_kwargs)
1061 # TODO: See if turning off blit is really necessary
1062 anim._draw_next_frame(d, blit=False)
-> 1063 writer.grab_frame(**savefig_kwargs)
1064
1065 # Reconnect signal for first draw if necessary
/software/local/apps/python/2.7.9/lib/python2.7/contextlib.pyc in __exit__(self, type, value, traceback)
33 value = type()
34 try:
---> 35 self.gen.throw(type, value, traceback)
36 raise RuntimeError("generator didn't stop after throw()")
37 except StopIteration, exc:
/software/local/apps/python/2.7.9/lib/python2.7/site-packages/matplotlib/animation.pyc in saving(self, *args, **kw)
287 yield self
288 finally:
--> 289 self.finish()
290
291 def _run(self):
/software/local/apps/python/2.7.9/lib/python2.7/site-packages/matplotlib/animation.pyc in finish(self)
307 def finish(self):
308 'Finish any processing for writing the movie.'
--> 309 self.cleanup()
310
311 def grab_frame(self, **savefig_kwargs):
/software/local/apps/python/2.7.9/lib/python2.7/site-packages/matplotlib/animation.pyc in cleanup(self)
346 def cleanup(self):
347 'Clean-up and collect the process used to write the movie file.'
--> 348 out, err = self._proc.communicate()
349 self._frame_sink().close()
350 verbose.report('MovieWriter -- '
/software/local/apps/python/2.7.9/lib/python2.7/site-packages/subprocess32.pyc in communicate(self, input, timeout)
925
926 try:
--> 927 stdout, stderr = self._communicate(input, endtime, timeout)
928 finally:
929 self._communication_started = True
/software/local/apps/python/2.7.9/lib/python2.7/site-packages/subprocess32.pyc in _communicate(self, input, endtime, orig_timeout)
1711 if _has_poll:
1712 stdout, stderr = self._communicate_with_poll(input, endtime,
-> 1713 orig_timeout)
1714 else:
1715 stdout, stderr = self._communicate_with_select(input, endtime,
/software/local/apps/python/2.7.9/lib/python2.7/site-packages/subprocess32.pyc in _communicate_with_poll(self, input, endtime, orig_timeout)
1767 select_POLLIN_POLLPRI = select.POLLIN | select.POLLPRI
1768 if self.stdout:
-> 1769 register_and_append(self.stdout, select_POLLIN_POLLPRI)
1770 stdout = self._fd2output[self.stdout.fileno()]
1771 if self.stderr:
/software/local/apps/python/2.7.9/lib/python2.7/site-packages/subprocess32.pyc in register_and_append(file_obj, eventmask)
1746 poller = select.poll()
1747 def register_and_append(file_obj, eventmask):
-> 1748 poller.register(file_obj.fileno(), eventmask)
1749 self._fd2file[file_obj.fileno()] = file_obj
1750
ValueError: I/O operation on closed file
</module>ffmpeg on it’s own outside of python seems to work ok so I’m not really sure how to get this working ?
I’ve tried using imagemagick as an alternative
e.g.
line_ani.save(’lines.gif’, writer=’imagemagick’)but this results in the gif jumping around between frames