
Recherche avancée
Médias (1)
-
The Great Big Beautiful Tomorrow
28 octobre 2011, par
Mis à jour : Octobre 2011
Langue : English
Type : Texte
Autres articles (83)
-
Récupération d’informations sur le site maître à l’installation d’une instance
26 novembre 2010, parUtilité
Sur le site principal, une instance de mutualisation est définie par plusieurs choses : Les données dans la table spip_mutus ; Son logo ; Son auteur principal (id_admin dans la table spip_mutus correspondant à un id_auteur de la table spip_auteurs)qui sera le seul à pouvoir créer définitivement l’instance de mutualisation ;
Il peut donc être tout à fait judicieux de vouloir récupérer certaines de ces informations afin de compléter l’installation d’une instance pour, par exemple : récupérer le (...) -
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 (...) -
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 (...)
Sur d’autres sites (5761)
-
lavc/h265_profile_level : Add new profiles
6 mai 2019, par Mark Thompson -
Laravel Process() with FFMPEG times out for any video that is even kind of large
16 août 2024, par HunterI am creating an application that lets users upload video files, and once they do it will convert them all to .mp4's (it does some other things, but since this first part of the code is breaking before it gets a chance to reach the other stuff, and the process for each is pretty similar, lets just discuss this issue).



Once a user submits, it gets sent to GameController@store. Below is a code sample (the one that keeps getting sent back to me as problematic) from the controller :



$process = new Process(env('APP_FFMPEG', 'ffmpeg') . ' -i ' . $fileURL . ' -f mp4 -vcodec libx264 -preset medium -profile:v main -c:a aac -movflags +faststart ' . $newFileName . ' -hide_banner');
 $process->setTimeout(360);
 $process->setIdleTimeout(60);
 $process->run();
 if (!$process->isSuccessful()) {
 throw new ProcessFailedException($process);
 }




I am using the Symfony Process() class to run the FFMpeg conversion. The weird thing is, when I run this with a 1 or 2 second video, it goes without a hitch. This, to me, rules out issues like path problems, permission problems, etc. Multiple file types work with this, as long as they are very short. As soon as I put in a video that is even around 1min, it returns with this :



The process "/usr/local/bin/ffmpeg -i http://localhost/storage/team_1_folder/game_26/team_1_game_26_vid_1.mp4 -f mp4 -vcodec libx264 -preset medium -profile:v main -c:a aac -movflags +faststart storage/team_1_folder/game_26/convertedVideo_1.mp4 -hide_banner" exceeded the timeout of 360 seconds.




Now, notice that it says 'timeout of 360 seconds'. That is because I have also edited ALL of the possible timeout constraints, as well as the file size constraints that I can think of. Here is what I have done :



-Changed php.ini (in my MAMP installation) values :

—max_execution_time = 300 (default was 30)

—memory_limit = 1280M (default was 128)

—post_max_size = 800M

—upload_max_filesize = 3200M

-max_input_time=300


-In the GameController (code above)

—$process->setTimeout(360) ;

—$process->setTimeout(360) ;


After all that, with a big file, the thing will just stall for the 6 minutes that I have set on the timeout thing, and then send an error. Is FFmpeg just stalling, or is this a process issue ? Who knows. Errors surrounding these things are just beautifully vague.



I have tagged Laravel, PHP, and FFmpeg in hopes that someone will recognize this issue. I know that Process() is sending me the error, but since it is sending me a timeout, I don't know what is at fault.



I'm not ruling anything out, so hit me with ideas, even crazy ones !



Edit
Here is the output of the -report. I cut some of it off because the end part gets repetitive and goes for literally 1000 lines :



ffmpeg started on 2019-06-24 at 18:50:23
Report written to "ffmpeg-20190624-185023.log"
Command line:
/usr/local/bin/ffmpeg -i http://localhost/storage/team_1_folder/game_31/team_1_game_31_vid_1.mp4 -f mp4 -vcodec libx264 -preset medium -profile:v main -c:a aac -movflags +faststart storage/team_1_folder/game_31/convertedVideo_1.mp4 -report
ffmpeg version 4.1.3 Copyright (c) 2000-2019 the FFmpeg developers
 built with Apple LLVM version 10.0.1 (clang-1001.0.46.4)
 configuration: --prefix=/usr/local/Cellar/ffmpeg/4.1.3_1 --enable-shared --enable-pthreads --enable-version3 --enable-hardcoded-tables --enable-avresample --cc=clang --host-cflags='-I/Library/Java/JavaVirtualMachines/adoptopenjdk-11.0.2.jdk/Contents/Home/include -I/Library/Java/JavaVirtualMachines/adoptopenjdk-11.0.2.jdk/Contents/Home/include/darwin' --host-ldflags= --enable-ffplay --enable-gnutls --enable-gpl --enable-libaom --enable-libbluray --enable-libmp3lame --enable-libopus --enable-librubberband --enable-libsnappy --enable-libtesseract --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libx265 --enable-libxvid --enable-lzma --enable-libfontconfig --enable-libfreetype --enable-frei0r --enable-libass --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-librtmp --enable-libspeex --enable-videotoolbox --disable-libjack --disable-indev=jack --enable-libaom --enable-libsoxr
 libavutil 56. 22.100 / 56. 22.100
 libavcodec 58. 35.100 / 58. 35.100
 libavformat 58. 20.100 / 58. 20.100
 libavdevice 58. 5.100 / 58. 5.100
 libavfilter 7. 40.101 / 7. 40.101
 libavresample 4. 0. 0 / 4. 0. 0
 libswscale 5. 3.100 / 5. 3.100
 libswresample 3. 3.100 / 3. 3.100
 libpostproc 55. 3.100 / 55. 3.100
Splitting the commandline.
Reading option '-i' ... matched as input url with argument 'http://localhost/storage/team_1_folder/game_31/team_1_game_31_vid_1.mp4'.
Reading option '-f' ... matched as option 'f' (force format) with argument 'mp4'.
Reading option '-vcodec' ... matched as option 'vcodec' (force video codec ('copy' to copy stream)) with argument 'libx264'.
Reading option '-preset' ... matched as AVOption 'preset' with argument 'medium'.
Reading option '-profile:v' ... matched as option 'profile' (set profile) with argument 'main'.
Reading option '-c:a' ... matched as option 'c' (codec name) with argument 'aac'.
Reading option '-movflags' ... matched as AVOption 'movflags' with argument '+faststart'.
Reading option 'storage/team_1_folder/game_31/convertedVideo_1.mp4' ... matched as output url.
Reading option '-report' ... matched as option 'report' (generate a report) with argument '1'.
Finished splitting the commandline.
Parsing a group of options: global .
Applying option report (generate a report) with argument 1.
Successfully parsed a group of options.
Parsing a group of options: input url http://localhost/storage/team_1_folder/game_31/team_1_game_31_vid_1.mp4.
Successfully parsed a group of options.
Opening an input file: http://localhost/storage/team_1_folder/game_31/team_1_game_31_vid_1.mp4.
[NULL @ 0x7f9ad480ae00] Opening 'http://localhost/storage/team_1_folder/game_31/team_1_game_31_vid_1.mp4' for reading
[http @ 0x7f9ad3c6b540] Setting default whitelist 'http,https,tls,rtp,tcp,udp,crypto,httpproxy'
[tcp @ 0x7f9ad3e00400] Original list of addresses:
[tcp @ 0x7f9ad3e00400] Address ::1 port 80
[tcp @ 0x7f9ad3e00400] Address 127.0.0.1 port 80
[tcp @ 0x7f9ad3e00400] Interleaved list of addresses:
[tcp @ 0x7f9ad3e00400] Address ::1 port 80
[tcp @ 0x7f9ad3e00400] Address 127.0.0.1 port 80
[tcp @ 0x7f9ad3e00400] Starting connection attempt to ::1 port 80
[tcp @ 0x7f9ad3e00400] Successfully connected to ::1 port 80
[http @ 0x7f9ad3c6b540] request: GET /storage/team_1_folder/game_31/team_1_game_31_vid_1.mp4 HTTP/1.1
User-Agent: Lavf/58.20.100
Accept: */*
Range: bytes=0-
Connection: close
Host: localhost
Icy-MetaData: 1


[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7f9ad480ae00] Format mov,mp4,m4a,3gp,3g2,mj2 probed with size=2048 and score=100
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7f9ad480ae00] ISO: File Type Major Brand: isom
[tcp @ 0x7f9ad3c6b840] Original list of addresses:
[tcp @ 0x7f9ad3c6b840] Address ::1 port 80
[tcp @ 0x7f9ad3c6b840] Address 127.0.0.1 port 80
[tcp @ 0x7f9ad3c6b840] Interleaved list of addresses:
[tcp @ 0x7f9ad3c6b840] Address ::1 port 80
[tcp @ 0x7f9ad3c6b840] Address 127.0.0.1 port 80
[tcp @ 0x7f9ad3c6b840] Starting connection attempt to ::1 port 80
[tcp @ 0x7f9ad3c6b840] Successfully connected to ::1 port 80
[http @ 0x7f9ad3c6b540] request: GET /storage/team_1_folder/game_31/team_1_game_31_vid_1.mp4 HTTP/1.1
User-Agent: Lavf/58.20.100
Accept: */*
Range: bytes=170169585-
Connection: close
Host: localhost
Icy-MetaData: 1


[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7f9ad480ae00] Unknown dref type 0x206c7275 size 12
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7f9ad480ae00] Processing st: 0, edit list 0 - media time: 0, duration: 10584600
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7f9ad480ae00] stts: 0 ctts: 0, ctts_index: 0, ctts_count: 10575
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7f9ad480ae00] stts: 1 ctts: 4002, ctts_index: 1, ctts_count: 10575
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7f9ad480ae00] stts: 1000 ctts: 0, ctts_index: 2, ctts_count: 10575
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7f9ad480ae00] stts: 2001 ctts: 0, ctts_index: 3, ctts_count: 10575
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7f9ad480ae00] stts: 3002 ctts: 0, ctts_index: 4, ctts_count: 10575
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7f9ad480ae00] stts: 4003 ctts: 4004, ctts_index: 5, ctts_count: 10575
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7f9ad480ae00] stts: 5004 ctts: 0, ctts_index: 6, ctts_count: 10575




Edit 2
I also found this towards the bottom :



[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7f9ad480ae00] stts: 10582571 ctts: 0, ctts_index: 10573, ctts_count: 10575
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7f9ad480ae00] stts: 10583572 ctts: 1001, ctts_index: 10574, ctts_count: 10575
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7f9ad480ae00] Setting codecpar->delay to 1 for stream st: 0
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7f9ad480ae00] Unknown dref type 0x206c7275 size 12
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7f9ad480ae00] Processing st: 1, edit list 0 - media time: 0, duration: 15563816
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7f9ad480ae00] Before avformat_find_stream_info() pos: 170509020 bytes read:372203 seeks:1 nb_streams:2
[h264 @ 0x7f9ad4811200] nal_unit_type: 7(SPS), nal_ref_idc: 3
[h264 @ 0x7f9ad4811200] nal_unit_type: 8(PPS), nal_ref_idc: 3
[tcp @ 0x7f9ad3c72d40] Original list of addresses:
[tcp @ 0x7f9ad3c72d40] Address ::1 port 80
[tcp @ 0x7f9ad3c72d40] Address 127.0.0.1 port 80
[tcp @ 0x7f9ad3c72d40] Interleaved list of addresses:
[tcp @ 0x7f9ad3c72d40] Address ::1 port 80
[tcp @ 0x7f9ad3c72d40] Address 127.0.0.1 port 80
[tcp @ 0x7f9ad3c72d40] Starting connection attempt to ::1 port 80
[tcp @ 0x7f9ad3c72d40] Successfully connected to ::1 port 80
[http @ 0x7f9ad3c6b540] request: GET /storage/team_1_folder/game_31/team_1_game_31_vid_1.mp4 HTTP/1.1
User-Agent: Lavf/58.20.100
Accept: */*
Range: bytes=48-
Connection: close
Host: localhost
Icy-MetaData: 1


[h264 @ 0x7f9ad4811200] nal_unit_type: 5(IDR), nal_ref_idc: 1
[h264 @ 0x7f9ad4811200] Format yuv420p chosen by get_format().
[h264 @ 0x7f9ad4811200] Reinit context to 1920x1088, pix_fmt: yuv420p
[h264 @ 0x7f9ad4811200] no picture 
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7f9ad480ae00] All info found
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7f9ad480ae00] After avformat_find_stream_info() pos: 308454 bytes read:680609 seeks:2 frames:2
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'http://localhost/storage/team_1_folder/game_31/team_1_game_31_vid_1.mp4':
 Metadata:
 major_brand : isom
 minor_version : 512
 compatible_brands: isomiso2avc1mp41
 encoder : Lavf56.40.101
 Duration: 00:05:52.92, start: 0.000000, bitrate: 3865 kb/s
 Stream #0:0(und), 1, 1/30000: Video: h264 (High) (avc1 / 0x31637661), yuv420p(tv, bt709), 1920x1080 [SAR 1:1 DAR 16:9], 3730 kb/s, 29.97 fps, 29.97 tbr, 30k tbn, 59.94 tbc (default)
 Metadata:
 handler_name : VideoHandler
 Stream #0:1(und), 1, 1/44100: Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 127 kb/s (default)
 Metadata:
 handler_name : SoundHandler
Successfully opened the file.
Parsing a group of options: output url storage/team_1_folder/game_31/convertedVideo_1.mp4.
Applying option f (force format) with argument mp4.
Applying option vcodec (force video codec ('copy' to copy stream)) with argument libx264.
Applying option profile:v (set profile) with argument main.
Applying option c:a (codec name) with argument aac.
Successfully parsed a group of options.
Opening an output file: storage/team_1_folder/game_31/convertedVideo_1.mp4.
[file @ 0x7f9ad3f02740] Setting default whitelist 'file,crypto'
Successfully opened the file.
detected 4 logical cores
[h264 @ 0x7f9ad5813a00] nal_unit_type: 7(SPS), nal_ref_idc: 3
[h264 @ 0x7f9ad5813a00] nal_unit_type: 8(PPS), nal_ref_idc: 3
Stream mapping:
 Stream #0:0 -> #0:0 (h264 (native) -> h264 (libx264))
 Stream #0:1 -> #0:1 (aac (native) -> aac (native))
Press [q] to stop, [?] for help
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
[graph_1_in_0_1 @ 0x7f9ad3dbcc00] Setting 'time_base' to value '1/44100'
[graph_1_in_0_1 @ 0x7f9ad3dbcc00] Setting 'sample_rate' to value '44100'
[graph_1_in_0_1 @ 0x7f9ad3dbcc00] Setting 'sample_fmt' to value 'fltp'
[graph_1_in_0_1 @ 0x7f9ad3dbcc00] Setting 'channel_layout' to value '0x3'
[graph_1_in_0_1 @ 0x7f9ad3dbcc00] tb:1/44100 samplefmt:fltp samplerate:44100 chlayout:0x3
[format_out_0_1 @ 0x7f9ad3c71040] Setting 'sample_fmts' to value 'fltp'
[format_out_0_1 @ 0x7f9ad3c71040] Setting 'sample_rates' to value '96000|88200|64000|48000|44100|32000|24000|22050|16000|12000|11025|8000|7350'
[AVFilterGraph @ 0x7f9ad3e00440] query_formats: 4 queried, 9 merged, 0 already done, 0 delayed
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
[h264 @ 0x7f9ad5813a00] nal_unit_type: 5(IDR), nal_ref_idc: 1
[h264 @ 0x7f9ad5813a00] Format yuv420p chosen by get_format().
[h264 @ 0x7f9ad5813a00] Reinit context to 1920x1088, pix_fmt: yuv420p
[h264 @ 0x7f9ad5813a00] no picture 
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
[h264 @ 0x7f9ad5804600] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 1
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
[h264 @ 0x7f9ad5804c00] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
[h264 @ 0x7f9ad5805200] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
[h264 @ 0x7f9ad5805800] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
[h264 @ 0x7f9ad5813a00] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 1
[graph 0 input from stream 0:0 @ 0x7f9ad3dbfb80] Setting 'video_size' to value '1920x1080'
[graph 0 input from stream 0:0 @ 0x7f9ad3dbfb80] Setting 'pix_fmt' to value '0'
[graph 0 input from stream 0:0 @ 0x7f9ad3dbfb80] Setting 'time_base' to value '1/30000'
[graph 0 input from stream 0:0 @ 0x7f9ad3dbfb80] Setting 'pixel_aspect' to value '1/1'
[graph 0 input from stream 0:0 @ 0x7f9ad3dbfb80] Setting 'sws_param' to value 'flags=2'
[graph 0 input from stream 0:0 @ 0x7f9ad3dbfb80] Setting 'frame_rate' to value '30000/1001'
[graph 0 input from stream 0:0 @ 0x7f9ad3dbfb80] w:1920 h:1080 pixfmt:yuv420p tb:1/30000 fr:30000/1001 sar:1/1 sws_param:flags=2
[format @ 0x7f9ad3dc0100] Setting 'pix_fmts' to value 'yuv420p|yuvj420p|yuv422p|yuvj422p|yuv444p|yuvj444p|nv12|nv16|nv21|yuv420p10le|yuv422p10le|yuv444p10le|nv20le'
[AVFilterGraph @ 0x7f9ad3c6e880] query_formats: 4 queried, 3 merged, 0 already done, 0 delayed
[libx264 @ 0x7f9ad5811200] using mv_range_thread = 88
[libx264 @ 0x7f9ad5811200] using SAR=1/1
[libx264 @ 0x7f9ad5811200] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX FMA3 BMI2 AVX2
[libx264 @ 0x7f9ad5811200] profile Main, level 4.0
[libx264 @ 0x7f9ad5811200] 264 - core 155 r2917 0a84d98 - H.264/MPEG-4 AVC codec - Copyleft 2003-2018 - http://www.videolan.org/x264.html - options: cabac=1 ref=3 deblock=1:0:0 analyse=0x1:0x111 me=hex subme=7 psy=1 psy_rd=1.00:0.00 mixed_ref=1 me_range=16 chroma_me=1 trellis=1 8x8dct=0 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=-2 threads=6 lookahead_threads=1 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=3 b_pyramid=2 b_adapt=1 b_bias=0 direct=1 weightb=1 open_gop=0 weightp=2 keyint=250 keyint_min=25 scenecut=40 intra_refresh=0 rc_lookahead=40 rc=crf mbtree=1 crf=23.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00
Output #0, mp4, to 'storage/team_1_folder/game_31/convertedVideo_1.mp4':
 Metadata:
 major_brand : isom
 minor_version : 512
 compatible_brands: isomiso2avc1mp41
 encoder : Lavf58.20.100
 Stream #0:0(und), 0, 1/30000: Video: h264 (libx264) (avc1 / 0x31637661), yuv420p, 1920x1080 [SAR 1:1 DAR 16:9], q=-1--1, 29.97 fps, 30k tbn, 29.97 tbc (default)
 Metadata:
 handler_name : VideoHandler
 encoder : Lavc58.35.100 libx264
 Side data:
 cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: -1
 Stream #0:1(und), 0, 1/44100: Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 128 kb/s (default)
 Metadata:
 handler_name : SoundHandler
 encoder : Lavc58.35.100 aac
Clipping frame in rate conversion by 0.000008
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
[h264 @ 0x7f9ad5804600] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0
Clipping frame in rate conversion by 0.000999
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
[h264 @ 0x7f9ad5804c00] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0
Clipping frame in rate conversion by 0.000999
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
Clipping frame in rate conversion by 0.000999
[h264 @ 0x7f9ad5805200] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
Clipping frame in rate conversion by 0.000999
[h264 @ 0x7f9ad5805800] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 1
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
Clipping frame in rate conversion by 0.000999
[h264 @ 0x7f9ad5813a00] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
Clipping frame in rate conversion by 0.000999
[h264 @ 0x7f9ad5804600] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
Clipping frame in rate conversion by 0.000999
[h264 @ 0x7f9ad5804c00] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
Clipping frame in rate conversion by 0.000999
[h264 @ 0x7f9ad5805200] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 1
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
Clipping frame in rate conversion by 0.000999
[h264 @ 0x7f9ad5805800] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
Clipping frame in rate conversion by 0.000999
[h264 @ 0x7f9ad5813a00] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
Clipping frame in rate conversion by 0.000999
[h264 @ 0x7f9ad5804600] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
Clipping frame in rate conversion by 0.000999
[h264 @ 0x7f9ad5804c00] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 1
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
Clipping frame in rate conversion by 0.000999
[h264 @ 0x7f9ad5805200] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
Clipping frame in rate conversion by 0.000999
[h264 @ 0x7f9ad5805800] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
Clipping frame in rate conversion by 0.000999
[h264 @ 0x7f9ad5813a00] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
Clipping frame in rate conversion by 0.000999
[h264 @ 0x7f9ad5804600] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 1
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
Clipping frame in rate conversion by 0.000999
[h264 @ 0x7f9ad5804c00] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
Clipping frame in rate conversion by 0.000999
[h264 @ 0x7f9ad5805200] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
Clipping frame in rate conversion by 0.000999



-
FFMPEG extracting 1 second resized with copy codec
28 avril 2019, par boblapointeHow can I extract 1 second ( using fast seek ) from a video, resize it, using vp9 ? I always get the same errors. Here are the bare bone commands I’m trying :
ffmpeg -ss 00:00:10 -i test.webm -to 00:00:01 -filter:v "scale=min(iw\,1280):min(ih\,720):force_original_aspect_ratio=decrease" -c:v libvpx-vp9 -y output.webm
It returns :
"Output file is empty, nothing was encoded (check -ss / -t / -frames parameters if used)
After playing around I realize that this will work :
ffmpeg -ss 00:00:10 -i test.webm -to 00:00:01 -c copy -y output.webm
Not ideal but at least it works, so I add the filter :
ffmpeg -ss 00:00:10 -i test.webm -to 00:00:01 -filter:v "scale=min(iw\,1280):min(ih\,720):force_original_aspect_ratio=decrease" -c copy -y output.webm
Ant then I get :
"Filtering and streamcopy cannot be used together."
I’ve tried all kinds of combinations, unsuccessfully. Any hint would be appreciated. Thank you
Here is the full log of the first command :
ffmpeg version 3.4.4-0ubuntu0.18.04.1 Copyright (c) 2000-2018 the FFmpeg developers built with gcc 7 (Ubuntu 7.3.0-16ubuntu3) configuration : —prefix=/usr —extra-version=0ubuntu0.18.04.1 —toolchain=hardened —libdir=/usr/lib/x86_64-linux-gnu —incdir=/usr/include/x86_64-linux-gnu —enable-gpl —disable-stripping —enable-avresample —enable-avisynth —enable-gnutls —enable-ladspa —enable-libass —enable-libbluray —enable-libbs2b —enable-libcaca —enable-libcdio —enable-libflite —enable-libfontconfig —enable-libfreetype —enable-libfribidi —enable-libgme —enable-libgsm —enable-libmp3lame —enable-libmysofa —enable-libopenjpeg —enable-libopenmpt —enable-libopus —enable-libpulse —enable-librubberband —enable-librsvg —enable-libshine —enable-libsnappy —enable-libsoxr —enable-libspeex —enable-libssh —enable-libtheora —enable-libtwolame —enable-libvorbis —enable-libvpx —enable-libwavpack —enable-libwebp —enable-libx265 —enable-libxml2 —enable-libxvid —enable-libzmq —enable-libzvbi —enable-omx —enable-openal —enable-opengl —enable-sdl2 —enable-libdc1394 —enable-libdrm —enable-libiec61883 —enable-chromaprint —enable-frei0r —enable-libopencv —enable-libx264 —enable-shared libavutil 55. 78.100 / 55. 78.100 libavcodec 57.107.100 / 57.107.100 libavformat 57. 83.100 / 57. 83.100 libavdevice 57. 10.100 / 57. 10.100 libavfilter 6.107.100 / 6.107.100 libavresample 3. 7. 0 / 3. 7. 0 libswscale 4. 8.100 / 4. 8.100 libswresample 2. 9.100 / 2. 9.100 libpostproc 54. 7.100 / 54. 7.100 Splitting the commandline. Reading option ’-ss’ ... matched as option ’ss’ (set the start time offset) with argument ’00:00:10’. Reading option ’-i’ ... matched as input url with argument ’test.webm’. Reading option ’-to’ ... matched as option ’to’ (record or transcode stop time) with argument ’00:00:01’. Reading option ’-filter:v’ ... matched as option ’filter’ (set stream filtergraph) with argument ’scale=min(iw\,1280):min(ih\,720):force_original_aspect_ratio=decrease’. Reading option ’-c:v’ ... matched as option ’c’ (codec name) with argument ’libvpx-vp9’. Reading option ’-y’ ... matched as option ’y’ (overwrite output files) with argument ’1’. Reading option ’-v’ ... matched as option ’v’ (set logging level) with argument ’debug’. Reading option ’output.webm’ ... matched as output url. Finished splitting the commandline. Parsing a group of options : global . Applying option y (overwrite output files) with argument 1. Applying option v (set logging level) with argument debug. Successfully parsed a group of options. Parsing a group of options : input url test.webm. Applying option ss (set the start time offset) with argument 00:00:10. Successfully parsed a group of options. Opening an input file : test.webm. [NULL @ 0x55ce679f8920] Opening ’test.webm’ for reading [file @ 0x55ce679f9340] Setting default whitelist ’file,crypto’ [matroska,webm @ 0x55ce679f8920] Format matroska,webm probed with size=2048 and score=100 st:0 removing common factor 1000000 from timebase [matroska,webm @ 0x55ce679f8920] Before avformat_find_stream_info() pos : 566 bytes read:32768 seeks:0 nb_streams:1 [matroska,webm @ 0x55ce679f8920] All info found [matroska,webm @ 0x55ce679f8920] After avformat_find_stream_info() pos : 72449 bytes read:72449 seeks:0 frames:1 Input #0, matroska,webm, from ’test.webm’ : Metadata : ENCODER : Lavf57.83.100 Duration : 00:00:15.03, start : 5.016000, bitrate : 1146 kb/s Stream #0:0(eng), 1, 1/1000 : Video : vp9 (Profile 0), 1 reference frame, yuv420p(tv), 1280x720, 0/1, SAR 1:1 DAR 16:9, 23.98 fps, 23.98 tbr, 1k tbn, 1k tbc (default) Metadata : DURATION : 00:00:15.025000000 Successfully opened the file. Parsing a group of options : output url output.webm. Applying option to (record or transcode stop time) with argument 00:00:01. Applying option filter:v (set stream filtergraph) with argument scale=min(iw\,1280):min(ih\,720):force_original_aspect_ratio=decrease. Applying option c:v (codec name) with argument libvpx-vp9. Successfully parsed a group of options. Opening an output file : output.webm. [file @ 0x55ce67b1e820] Setting default whitelist ’file,crypto’ Successfully opened the file. detected 8 logical cores Stream mapping : Stream #0:0 -> #0:0 (vp9 (native) -> vp9 (libvpx-vp9)) Press [q] to stop, [?] for help cur_dts is invalid (this is harmless if it occurs once at the start per stream) Last message repeated 1 times [matroska,webm @ 0x55ce679f8920] first_dts 5016 not matching first dts 10395 (pts 10395, duration 41) in the queue cur_dts is invalid (this is harmless if it occurs once at the start per stream) Last message repeated 6 times [Parsed_scale_0 @ 0x55ce67a7c520] Setting ’w’ to value ’min(iw,1280)’ [Parsed_scale_0 @ 0x55ce67a7c520] Setting ’h’ to value ’min(ih,720)’ [Parsed_scale_0 @ 0x55ce67a7c520] Setting ’force_original_aspect_ratio’ to value ’decrease’ [Parsed_scale_0 @ 0x55ce67a7c520] Setting ’flags’ to value ’bicubic’ [Parsed_scale_0 @ 0x55ce67a7c520] w:min(iw,1280) h:min(ih,720) flags :’bicubic’ interl:0 [graph 0 input from stream 0:0 @ 0x55ce67a7cea0] Setting ’video_size’ to value ’1280x720’ [graph 0 input from stream 0:0 @ 0x55ce67a7cea0] Setting ’pix_fmt’ to value ’0’ [graph 0 input from stream 0:0 @ 0x55ce67a7cea0] Setting ’time_base’ to value ’1/1000’ [graph 0 input from stream 0:0 @ 0x55ce67a7cea0] Setting ’pixel_aspect’ to value ’1/1’ [graph 0 input from stream 0:0 @ 0x55ce67a7cea0] Setting ’sws_param’ to value ’flags=2’ [graph 0 input from stream 0:0 @ 0x55ce67a7cea0] Setting ’frame_rate’ to value ’24000/1001’ [graph 0 input from stream 0:0 @ 0x55ce67a7cea0] w:1280 h:720 pixfmt:yuv420p tb:1/1000 fr:24000/1001 sar:1/1 sws_param:flags=2 [format @ 0x55ce67ad7d60] compat : called with args=[yuv420p|yuva420p|yuv422p|yuv440p|yuv444p|gbrp] [format @ 0x55ce67ad7d60] Setting ’pix_fmts’ to value ’yuv420p|yuva420p|yuv422p|yuv440p|yuv444p|gbrp’ [AVFilterGraph @ 0x55ce67aec740] query_formats : 6 queried, 5 merged, 0 already done, 0 delayed [Parsed_scale_0 @ 0x55ce67a7c520] w:1280 h:720 fmt:yuv420p sar:1/1 -> w:1280 h:720 fmt:yuv420p sar:1/1 flags:0x4 [libvpx-vp9 @ 0x55ce67b32200] v1.7.0 [libvpx-vp9 @ 0x55ce67b32200] —prefix=/usr —enable-pic —enable-shared —disable-install-bins —disable-install-srcs —size-limit=16384x16384 —enable-postproc —enable-multi-res-encoding —enable-temporal-denoising —enable-vp9-temporal-denoising —enable-vp9-postproc —target=x86_64-linux-gcc [libvpx-vp9 @ 0x55ce67b32200] vpx_codec_enc_cfg [libvpx-vp9 @ 0x55ce67b32200] generic settings g_usage : 0 g_threads : 8 g_profile : 0 g_w : 320 g_h : 240 g_bit_depth : 8 g_input_bit_depth : 8 g_timebase : 1/30 g_error_resilient : 0 g_pass : 0 g_lag_in_frames : 25 [libvpx-vp9 @ 0x55ce67b32200] rate control settings rc_dropframe_thresh : 0 rc_resize_allowed : 0 rc_resize_up_thresh : 60 rc_resize_down_thresh : 30 rc_end_usage : 0 rc_twopass_stats_in : (nil)(0) rc_target_bitrate : 256 [libvpx-vp9 @ 0x55ce67b32200] quantizer settings rc_min_quantizer : 0 rc_max_quantizer : 63 [libvpx-vp9 @ 0x55ce67b32200] bitrate tolerance rc_undershoot_pct : 25 rc_overshoot_pct : 25 [libvpx-vp9 @ 0x55ce67b32200] decoder buffer model rc_buf_sz : 6000 rc_buf_initial_sz : 4000 rc_buf_optimal_sz : 5000 [libvpx-vp9 @ 0x55ce67b32200] 2 pass rate control settings rc_2pass_vbr_bias_pct : 50 rc_2pass_vbr_minsection_pct : 0 rc_2pass_vbr_maxsection_pct : 2000 [libvpx-vp9 @ 0x55ce67b32200] keyframing settings kf_mode : 1 kf_min_dist : 0 kf_max_dist : 128 [libvpx-vp9 @ 0x55ce67b32200] [libvpx-vp9 @ 0x55ce67b32200] vpx_codec_enc_cfg [libvpx-vp9 @ 0x55ce67b32200] generic settings g_usage : 0 g_threads : 0 g_profile : 0 g_w : 1280 g_h : 720 g_bit_depth : 8 g_input_bit_depth : 8 g_timebase : 1001/24000 g_error_resilient : 0 g_pass : 0 g_lag_in_frames : 25 [libvpx-vp9 @ 0x55ce67b32200] rate control settings rc_dropframe_thresh : 0 rc_resize_allowed : 0 rc_resize_up_thresh : 60 rc_resize_down_thresh : 30 rc_end_usage : 0 rc_twopass_stats_in : (nil)(0) rc_target_bitrate : 200 [libvpx-vp9 @ 0x55ce67b32200] quantizer settings rc_min_quantizer : 0 rc_max_quantizer : 63 [libvpx-vp9 @ 0x55ce67b32200] bitrate tolerance rc_undershoot_pct : 25 rc_overshoot_pct : 25 [libvpx-vp9 @ 0x55ce67b32200] decoder buffer model rc_buf_sz : 6000 rc_buf_initial_sz : 4000 rc_buf_optimal_sz : 5000 [libvpx-vp9 @ 0x55ce67b32200] 2 pass rate control settings rc_2pass_vbr_bias_pct : 50 rc_2pass_vbr_minsection_pct : 0 rc_2pass_vbr_maxsection_pct : 2000 [libvpx-vp9 @ 0x55ce67b32200] keyframing settings kf_mode : 1 kf_min_dist : 0 kf_max_dist : 128 [libvpx-vp9 @ 0x55ce67b32200] [libvpx-vp9 @ 0x55ce67b32200] vpx_codec_control [libvpx-vp9 @ 0x55ce67b32200] VP8E_SET_CPUUSED : 1 [libvpx-vp9 @ 0x55ce67b32200] VP8E_SET_ARNR_MAXFRAMES : 0 [libvpx-vp9 @ 0x55ce67b32200] VP8E_SET_ARNR_STRENGTH : 3 [libvpx-vp9 @ 0x55ce67b32200] VP8E_SET_ARNR_TYPE : 3 [libvpx-vp9 @ 0x55ce67b32200] VP8E_SET_STATIC_THRESHOLD : 0 [libvpx-vp9 @ 0x55ce67b32200] VP9E_SET_COLOR_SPACE : 0 [libvpx-vp9 @ 0x55ce67b32200] VP9E_SET_COLOR_RANGE : 0 [libvpx-vp9 @ 0x55ce67b32200] VP9E_SET_TARGET_LEVEL : 255 [libvpx-vp9 @ 0x55ce67b32200] Using deadline : 1000000 Output #0, webm, to ’output.webm’ : Metadata : encoder : Lavf57.83.100 Stream #0:0(eng), 0, 1/1000 : Video : vp9 (libvpx-vp9), 1 reference frame, yuv420p, 1280x720 [SAR 1:1 DAR 16:9], 0/1, q=-1—1, 200 kb/s, 23.98 fps, 1k tbn, 23.98 tbc (default) Metadata : DURATION : 00:00:15.025000000 encoder : Lavc57.107.100 libvpx-vp9 Side data : cpb : bitrate max/min/avg : 0/0/0 buffer size : 0 vbv_delay : -1 cur_dts is invalid (this is harmless if it occurs once at the start per stream) Last message repeated 120 times [out_0_0 @ 0x55ce67ac35a0] EOF on sink link out_0_0:default. No more output streams to write to, finishing. [webm @ 0x55ce67b2e2a0] get_metadata_duration returned : 15025000 [webm @ 0x55ce67b2e2a0] Write early duration from recording time = 1000 [webm @ 0x55ce67b2e2a0] end duration = 0 [webm @ 0x55ce67b2e2a0] stream 0 end duration = 0 frame= 0 fps=0.0 q=0.0 Lsize= 1kB time=00:00:00.00 bitrate=N/A speed= 0x video:0kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead : unknown Input file #0 (test.webm) : Input stream #0:0 (video) : 120 packets read (1031599 bytes) ; 112 frames decoded ; Total : 120 packets (1031599 bytes) demuxed Output file #0 (output.webm) : Output stream #0:0 (video) : 0 frames encoded ; 0 packets muxed (0 bytes) ; Total : 0 packets (0 bytes) muxed Output file is empty, nothing was encoded (check -ss / -t / -frames parameters if used) 112 frames successfully decoded, 0 decoding errors [AVIOContext @ 0x55ce67b2e9a0] Statistics : 13 seeks, 9 writeouts [AVIOContext @ 0x55ce67a01660] Statistics : 2137508 bytes read, 4 seeks