
Recherche avancée
Autres articles (54)
-
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 -
MediaSPIP v0.2
21 juin 2013, parMediaSPIP 0.2 is the first MediaSPIP stable release.
Its official release date is June 21, 2013 and is announced here.
The zip file provided here only contains the sources of MediaSPIP in its standalone version.
To get a working installation, you must manually install all-software dependencies on the server.
If you want to use this archive for an installation in "farm mode", you will also need to proceed to other manual (...) -
Pas question de marché, de cloud etc...
10 avril 2011Le vocabulaire utilisé sur ce site essaie d’éviter toute référence à la mode qui fleurit allègrement
sur le web 2.0 et dans les entreprises qui en vivent.
Vous êtes donc invité à bannir l’utilisation des termes "Brand", "Cloud", "Marché" etc...
Notre motivation est avant tout de créer un outil simple, accessible à pour tout le monde, favorisant
le partage de créations sur Internet et permettant aux auteurs de garder une autonomie optimale.
Aucun "contrat Gold ou Premium" n’est donc prévu, aucun (...)
Sur d’autres sites (9632)
-
What is wrong with the following ffmpeg command
9 juin 2017, par BradWhat is wrong with the following ffmpeg command ? Originally this had
-sameq
instead of the-qscale:a 0
Command :
ffmpeg -loglevel debug -threads 4 -i sample-in.mpg -ss 00:00:01 -t 00:00:05 -f image2 -y sample-frames/frame%d.png -acodec copy -qscale:a 0 -y sample.mp3
Output
ffmpeg version 1.2.1 Copyright (c) 2000-2013 the FFmpeg developers
built on Jul 9 2013 04:36:42 with Apple clang version 4.1 (tags/Apple/clang-421.11.66) (based on LLVM 3.1svn)
configuration: --prefix=/usr/local/Cellar/ffmpeg/1.2.1 --enable-shared --enable-pthreads --enable-gpl --enable-version3 --enable-nonfree --enable-hardcoded-tables --enable-avresample --enable-vda --cc=cc --host-cflags= --host-ldflags= --enable-libx264 --enable-libfaac --enable-libmp3lame --enable-libxvid --enable-ffplay
libavutil 52. 18.100 / 52. 18.100
libavcodec 54. 92.100 / 54. 92.100
libavformat 54. 63.104 / 54. 63.104
libavdevice 54. 3.103 / 54. 3.103
libavfilter 3. 42.103 / 3. 42.103
libswscale 2. 2.100 / 2. 2.100
libswresample 0. 17.102 / 0. 17.102
libpostproc 52. 2.100 / 52. 2.100
Splitting the commandline.
Reading option '-loglevel' ... matched as option 'loglevel' (set libav* logging level) with argument 'debug'.
Reading option '-threads' ... matched as AVOption 'threads' with argument '4'.
Reading option '-i' ... matched as input file with argument 'sample-in.mpg'.
Reading option '-ss' ... matched as option 'ss' (set the start time offset) with argument '00:00:01'.
Reading option '-t' ... matched as option 't' (record or transcode "duration" seconds of audio/video) with argument '00:00:05'.
Reading option '-f' ... matched as option 'f' (force format) with argument 'image2'.
Reading option '-y' ... matched as option 'y' (overwrite output files) with argument '1'.
Reading option 'sample-frames/frame%d.png' ... matched as output file.
Reading option '-acodec' ... matched as option 'acodec' (force audio codec ('copy' to copy stream)) with argument 'copy'.
Reading option '-qscale:a' ... matched as option 'qscale' (use fixed quality scale (VBR)) with argument '0'.
Reading option '-y' ... matched as option 'y' (overwrite output files) with argument '1'.
Reading option 'sample.mp3' ... matched as output file.
Finished splitting the commandline.
Parsing a group of options: global .
Applying option loglevel (set libav* logging level) with argument debug.
Applying option y (overwrite output files) with argument 1.
Last message repeated 1 times
Successfully parsed a group of options.
Parsing a group of options: input file sample-in.mpg.
Successfully parsed a group of options.
Opening an input file: sample-in.mpg.
[mpeg @ 0x7ffb4a80f200] Format mpeg probed with size=16384 and score=52
[mpeg @ 0x7ffb4a80f200] File position before avformat_find_stream_info() is 0
[mpeg @ 0x7ffb4a80f200] probing stream 0 pp:2500
[mpeg @ 0x7ffb4a80f200] Probe with size=2002, packets=1 detected mpegvideo with score=25
[mpeg @ 0x7ffb4a80f200] probing stream 0 pp:2499
[mpeg @ 0x7ffb4a80f200] Probe with size=4043, packets=2 detected mpegvideo with score=25
[mpeg @ 0x7ffb4a80f200] probing stream 0 pp:2498
[mpeg @ 0x7ffb4a80f200] Probe with size=6084, packets=3 detected mpegvideo with score=25
[mpeg @ 0x7ffb4a80f200] probing stream 0 pp:2497
[mpeg @ 0x7ffb4a80f200] probing stream 0 pp:2496
[mpeg @ 0x7ffb4a80f200] Probe with size=10166, packets=5 detected mpegvideo with score=25
[mpeg @ 0x7ffb4a80f200] probing stream 0 pp:2495
[mpeg @ 0x7ffb4a80f200] probing stream 0 pp:2494
[mpeg @ 0x7ffb4a80f200] probing stream 0 pp:2493
[mpeg @ 0x7ffb4a80f200] probing stream 0 pp:2492
[mpeg @ 0x7ffb4a80f200] Probe with size=18330, packets=9 detected mpegvideo with score=25
[mpeg @ 0x7ffb4a80f200] probing stream 0 pp:2491
[mpeg @ 0x7ffb4a80f200] probing stream 0 pp:2490
[mpeg @ 0x7ffb4a80f200] probing stream 0 pp:2489
[mpeg @ 0x7ffb4a80f200] probing stream 0 pp:2488
[mpeg @ 0x7ffb4a80f200] probing stream 0 pp:2487
[mpeg @ 0x7ffb4a80f200] probing stream 0 pp:2486
[mpeg @ 0x7ffb4a80f200] probing stream 0 pp:2485
[mpeg @ 0x7ffb4a80f200] probing stream 0 pp:2484
[mpeg @ 0x7ffb4a80f200] Probe with size=34658, packets=17 detected mpegvideo with score=25
[mpeg @ 0x7ffb4a80f200] probing stream 0 pp:2483
[mpeg @ 0x7ffb4a80f200] probing stream 0 pp:2482
[mpeg @ 0x7ffb4a80f200] probing stream 0 pp:2481
[mpeg @ 0x7ffb4a80f200] probing stream 0 pp:2480
[mpeg @ 0x7ffb4a80f200] probing stream 0 pp:2479
[mpeg @ 0x7ffb4a80f200] probing stream 0 pp:2478
[mpeg @ 0x7ffb4a80f200] probing stream 0 pp:2477
[mpeg @ 0x7ffb4a80f200] probing stream 0 pp:2476
[mpeg @ 0x7ffb4a80f200] probing stream 0 pp:2475
[mpeg @ 0x7ffb4a80f200] probing stream 0 pp:2474
[mpeg @ 0x7ffb4a80f200] probing stream 0 pp:2473
[mpeg @ 0x7ffb4a80f200] probing stream 0 pp:2472
[mpeg @ 0x7ffb4a80f200] probing stream 0 pp:2471
[mpeg @ 0x7ffb4a80f200] probing stream 0 pp:2470
[mpeg @ 0x7ffb4a80f200] probing stream 0 pp:2469
[mpeg @ 0x7ffb4a80f200] probing stream 0 pp:2468
[mpeg @ 0x7ffb4a80f200] Probe with size=67266, packets=33 detected mpegvideo with score=51
[mpeg @ 0x7ffb4a80f200] probed stream 0
[mpeg @ 0x7ffb4a80f200] first_dts 86997 not matching first dts 93003 in the queue
Last message repeated 3 times
[mpeg @ 0x7ffb4a80f200] first_dts 86997 not matching first dts 108018 in the queue
Last message repeated 3 times
[mpeg @ 0x7ffb4a80f200] first_dts 90000 not matching first dts 111600 in the queue
Last message repeated 9 times
[mpeg @ 0x7ffb4a80f200] first_dts 90000 not matching first dts 135360 in the queue
Last message repeated 8 times
[mpeg @ 0x7ffb4a80f200] first_dts 90000 not matching first dts 156960 in the queue
Last message repeated 9 times
[mpeg @ 0x7ffb4a80f200] first_dts 90000 not matching first dts 180720 in the queue
Last message repeated 8 times
[mpeg @ 0x7ffb4a80f200] first_dts 90000 not matching first dts 202320 in the queue
Last message repeated 9 times
[mpeg @ 0x7ffb4a80f200] first_dts 90000 not matching first dts 226080 in the queue
Last message repeated 8 times
[mpeg @ 0x7ffb4a80f200] first_dts 90000 not matching first dts 247680 in the queue
Last message repeated 9 times
[mpeg @ 0x7ffb4a80f200] first_dts 90000 not matching first dts 271440 in the queue
Last message repeated 9 times
[mpeg @ 0x7ffb4a80f200] first_dts 90000 not matching first dts 295200 in the queue
Last message repeated 8 times
[mpeg @ 0x7ffb4a80f200] first_dts 90000 not matching first dts 316800 in the queue
Last message repeated 9 times
[mpeg @ 0x7ffb4a80f200] first_dts 90000 not matching first dts 340560 in the queue
Last message repeated 8 times
[mpeg @ 0x7ffb4a80f200] first_dts 90000 not matching first dts 362160 in the queue
Last message repeated 9 times
[mpeg @ 0x7ffb4a80f200] first_dts 90000 not matching first dts 385920 in the queue
Last message repeated 8 times
[mpeg @ 0x7ffb4a80f200] first_dts 90000 not matching first dts 407520 in the queue
Last message repeated 9 times
[mpeg @ 0x7ffb4a80f200] first_dts 90000 not matching first dts 431280 in the queue
Last message repeated 8 times
[mpeg @ 0x7ffb4a80f200] first_dts 90000 not matching first dts 452880 in the queue
Last message repeated 9 times
[mpeg @ 0x7ffb4a80f200] first_dts 90000 not matching first dts 476640 in the queue
Last message repeated 8 times
[mpeg @ 0x7ffb4a80f200] first_dts 90000 not matching first dts 498240 in the queue
Last message repeated 9 times
[mpeg @ 0x7ffb4a80f200] first_dts 90000 not matching first dts 522000 in the queue
Last message repeated 9 times
[mpeg @ 0x7ffb4a80f200] max_analyze_duration 5000000 reached at 5005000 microseconds
[mpeg @ 0x7ffb4a80f200] File position after avformat_find_stream_info() is 0
Input #0, mpeg, from 'sample-in.mpg':
Duration: 00:00:05.97, start: 1.000000, bitrate: 6827 kb/s
Stream #0:0[0x1e0], 152, 1/90000: Video: mpeg1video, yuv420p, 704x480 [SAR 200:219 DAR 880:657], 1001/30000, 104857 kb/s, 29.97 fps, 29.97 tbr, 90k tbn, 29.97 tbc
Stream #0:1[0x1c0], 211, 1/90000: Audio: mp2, 48000 Hz, stereo, s16p, 64 kb/s
Successfully opened the file.
Parsing a group of options: output file sample-frames/frame%d.png.
Applying option ss (set the start time offset) with argument 00:00:01.
Applying option t (record or transcode "duration" seconds of audio/video) with argument 00:00:05.
Applying option f (force format) with argument image2.
Successfully parsed a group of options.
Opening an output file: sample-frames/frame%d.png.
Successfully opened the file.
Parsing a group of options: output file sample.mp3.
Applying option acodec (force audio codec ('copy' to copy stream)) with argument copy.
Applying option qscale:a (use fixed quality scale (VBR)) with argument 0.
Successfully parsed a group of options.
Opening an output file: sample.mp3.
Successfully opened the file.
[buffer @ 0x7ffb4a411e40] Setting entry with key 'video_size' to value '704x480'
[buffer @ 0x7ffb4a411e40] Setting entry with key 'pix_fmt' to value '0'
[buffer @ 0x7ffb4a411e40] Setting entry with key 'time_base' to value '1/90000'
[buffer @ 0x7ffb4a411e40] Setting entry with key 'pixel_aspect' to value '200/219'
[buffer @ 0x7ffb4a411e40] Setting entry with key 'sws_param' to value 'flags=2'
[buffer @ 0x7ffb4a411e40] Setting entry with key 'frame_rate' to value '30000/1001'
[graph 0 input from stream 0:0 @ 0x7ffb4a411de0] w:704 h:480 pixfmt:yuv420p tb:1/90000 fr:30000/1001 sar:200/219 sws_param:flags=2
[scale @ 0x7ffb4a414800] Setting 'w' to value '0'
[scale @ 0x7ffb4a414800] Setting 'h' to value '0'
[scale @ 0x7ffb4a414800] Setting 'flags' to value '0x4'
[auto-inserted scaler 0 @ 0x7ffb4a414740] w:0 h:0 flags:'0x4' interl:0
[format @ 0x7ffb4a42aa20] auto-inserting filter 'auto-inserted scaler 0' between the filter 'Parsed_null_0' and the filter 'format'
[auto-inserted scaler 0 @ 0x7ffb4a414740] picking rgb24 out of 7 ref:yuv420p alpha:0
[auto-inserted scaler 0 @ 0x7ffb4a414740] w:704 h:480 fmt:yuv420p sar:200/219 -> w:704 h:480 fmt:rgb24 sar:200/219 flags:0x4
[png @ 0x7ffb4a831000] detected 4 logical cores
[mp3 @ 0x7ffb4a831600] Invalid audio stream. Exactly one MP3 audio stream is required.
Output #0, image2, to 'sample-frames/frame%d.png':
Metadata:
encoder : Lavf54.63.104
Stream #0:0, 0, 1/90000: Video: png, rgb24, 704x480 [SAR 200:219 DAR 880:657], 1001/30000, q=2-31, 200 kb/s, 90k tbn, 29.97 tbc
Output #1, mp3, to 'sample.mp3':
Metadata:
encoder : Lavf54.63.104
Stream #1:0, 0, 1/90000: Audio: mp2, 48000 Hz, stereo, 64 kb/s
Stream mapping:
Stream #0:0 -> #0:0 (mpeg1video -> png)
Stream #0:1 -> #1:0 (copy)
Could not write header for output file #1 (incorrect codec parameters ?): Invalid argument
Statistics: 4542608 bytes read, 2 seeksI found the code above from : http://kwlug.org/node/854
I did a few edits removing the-sameq
and replacing it with-qscale:a 0
which probably is wrong. -
FFMPEG TimeCode synchronization
14 juin 2017, par SpadieriI have a problem with the length of a TS video file.
Use Hauppauge QuadTV HD video capture card,
ffprobe TS file
{
[STREAM]
index=0
codec_name=mpeg2video
codec_long_name=MPEG-2 video
profile=Main
codec_type=video
codec_time_base=1/25
codec_tag_string=[2][0][0][0]
codec_tag=0x0002
width=720
height=576
coded_width=0
coded_height=0
has_b_frames=1
sample_aspect_ratio=64:45
display_aspect_ratio=16:9
pix_fmt=yuv420p
level=8
color_range=tv
color_space=unknown
color_transfer=unknown
color_primaries=unknown
chroma_location=left
field_order=tt
timecode=N/A
refs=1
id=0x201
r_frame_rate=25/1
avg_frame_rate=25/1
time_base=1/90000
start_pts=4090681690
start_time=45452.018778
duration_ts=323618400
duration=3595.760000
bit_rate=N/A
max_bit_rate=N/A
bits_per_raw_sample=N/A
nb_frames=N/A
nb_read_frames=N/A
nb_read_packets=N/A
DISPOSITION:default=0
DISPOSITION:dub=0
DISPOSITION:original=0
DISPOSITION:comment=0
DISPOSITION:lyrics=0
DISPOSITION:karaoke=0
DISPOSITION:forced=0
DISPOSITION:hearing_impaired=0
DISPOSITION:visual_impaired=0
DISPOSITION:clean_effects=0
DISPOSITION:attached_pic=0
DISPOSITION:timed_thumbnails=0
[/STREAM]
[STREAM]
index=1
codec_name=mp2
codec_long_name=MP2 (MPEG audio layer 2)
profile=unknown
codec_type=audio
codec_time_base=1/48000
codec_tag_string=[4][0][0][0]
codec_tag=0x0004
sample_fmt=s16p
sample_rate=48000
channels=2
channel_layout=stereo
bits_per_sample=0
id=0x28b
r_frame_rate=0/0
avg_frame_rate=0/0
time_base=1/90000
start_pts=4090672903
start_time=45451.921144
duration_ts=323585280
duration=3595.392000
bit_rate=192000
max_bit_rate=N/A
bits_per_raw_sample=N/A
nb_frames=N/A
nb_read_frames=N/A
nb_read_packets=N/A
DISPOSITION:default=0
DISPOSITION:dub=0
DISPOSITION:original=0
DISPOSITION:comment=0
DISPOSITION:lyrics=0
DISPOSITION:karaoke=0
DISPOSITION:forced=0
DISPOSITION:hearing_impaired=0
DISPOSITION:visual_impaired=0
DISPOSITION:clean_effects=0
DISPOSITION:attached_pic=0
DISPOSITION:timed_thumbnails=0
TAG:language=ita
[/STREAM]
[STREAM]
index=2
codec_name=dvb_teletext
codec_long_name=DVB teletext
profile=unknown
codec_type=subtitle
codec_tag_string=[6][0][0][0]
codec_tag=0x0006
width=N/A
height=N/A
id=0x241
r_frame_rate=0/0
avg_frame_rate=0/0
time_base=1/90000
start_pts=4090655137
start_time=45451.723744
duration_ts=323611200
duration=3595.680000
bit_rate=N/A
max_bit_rate=N/A
bits_per_raw_sample=N/A
nb_frames=N/A
nb_read_frames=N/A
nb_read_packets=N/A
DISPOSITION:default=0
DISPOSITION:dub=0
DISPOSITION:original=0
DISPOSITION:comment=0
DISPOSITION:lyrics=0
DISPOSITION:karaoke=0
DISPOSITION:forced=0
DISPOSITION:hearing_impaired=0
DISPOSITION:visual_impaired=0
DISPOSITION:clean_effects=0
DISPOSITION:attached_pic=0
DISPOSITION:timed_thumbnails=0
TAG:language=ita
[/STREAM]
[STREAM]
index=3
codec_name=mp2
codec_long_name=MP2 (MPEG audio layer 2)
profile=unknown
codec_type=audio
codec_time_base=1/48000
codec_tag_string=[4][0][0][0]
codec_tag=0x0004
sample_fmt=s16p
sample_rate=48000
channels=1
channel_layout=mono
bits_per_sample=0
id=0x2b7
r_frame_rate=0/0
avg_frame_rate=0/0
time_base=1/90000
start_pts=4090668157
start_time=45451.868411
duration_ts=323589600
duration=3595.440000
bit_rate=64000
max_bit_rate=N/A
bits_per_raw_sample=N/A
nb_frames=N/A
nb_read_frames=N/A
nb_read_packets=N/A
DISPOSITION:default=0
DISPOSITION:dub=0
DISPOSITION:original=0
DISPOSITION:comment=0
DISPOSITION:lyrics=0
DISPOSITION:karaoke=0
DISPOSITION:forced=0
DISPOSITION:hearing_impaired=0
DISPOSITION:visual_impaired=0
DISPOSITION:clean_effects=0
DISPOSITION:attached_pic=0
DISPOSITION:timed_thumbnails=0
TAG:language=Oth
[/STREAM]
[STREAM]
index=4
codec_name=mp2
codec_long_name=MP2 (MPEG audio layer 2)
profile=unknown
codec_type=audio
codec_time_base=1/48000
codec_tag_string=[4][0][0][0]
codec_tag=0x0004
sample_fmt=s16p
sample_rate=48000
channels=2
channel_layout=stereo
bits_per_sample=0
id=0x2b8
r_frame_rate=0/0
avg_frame_rate=0/0
time_base=1/90000
start_pts=4090663971
start_time=45451.821900
duration_ts=323585280
duration=3595.392000
bit_rate=192000
max_bit_rate=N/A
bits_per_raw_sample=N/A
nb_frames=N/A
nb_read_frames=N/A
nb_read_packets=N/A
DISPOSITION:default=0
DISPOSITION:dub=0
DISPOSITION:original=0
DISPOSITION:comment=0
DISPOSITION:lyrics=0
DISPOSITION:karaoke=0
DISPOSITION:forced=0
DISPOSITION:hearing_impaired=0
DISPOSITION:visual_impaired=0
DISPOSITION:clean_effects=0
DISPOSITION:attached_pic=0
DISPOSITION:timed_thumbnails=0
TAG:language=eng
[/STREAM]
[STREAM]
index=5
codec_name=unknown
codec_long_name=unknown
profile=unknown
codec_type=unknown
codec_tag_string=[5][0][0][0]
codec_tag=0x0005
id=0x7d2
r_frame_rate=0/0
avg_frame_rate=0/0
time_base=1/90000
start_pts=4090655137
start_time=45451.723744
duration_ts=323644953
duration=3596.055033
bit_rate=N/A
max_bit_rate=N/A
bits_per_raw_sample=N/A
nb_frames=N/A
nb_read_frames=N/A
nb_read_packets=N/A
DISPOSITION:default=0
DISPOSITION:dub=0
DISPOSITION:original=0
DISPOSITION:comment=0
DISPOSITION:lyrics=0
DISPOSITION:karaoke=0
DISPOSITION:forced=0
DISPOSITION:hearing_impaired=0
DISPOSITION:visual_impaired=0
DISPOSITION:clean_effects=0
DISPOSITION:attached_pic=0
DISPOSITION:timed_thumbnails=0
[/STREAM]
[STREAM]
index=6
codec_name=unknown
codec_long_name=unknown
profile=unknown
codec_type=unknown
codec_tag_string=[11][0][0][0]
codec_tag=0x000b
id=0xbb9
r_frame_rate=0/0
avg_frame_rate=0/0
time_base=1/90000
start_pts=4090655137
start_time=45451.723744
duration_ts=323644953
duration=3596.055033
bit_rate=N/A
max_bit_rate=N/A
bits_per_raw_sample=N/A
nb_frames=N/A
nb_read_frames=N/A
nb_read_packets=N/A
DISPOSITION:default=0
DISPOSITION:dub=0
DISPOSITION:original=0
DISPOSITION:comment=0
DISPOSITION:lyrics=0
DISPOSITION:karaoke=0
DISPOSITION:forced=0
DISPOSITION:hearing_impaired=0
DISPOSITION:visual_impaired=0
DISPOSITION:clean_effects=0
DISPOSITION:attached_pic=0
DISPOSITION:timed_thumbnails=0
[/STREAM]
}steps :
1°- demux con ProjectX
output :
video.m2v (25 fps)
audio.mp2ffmprobe video.m2v
{
[STREAM]
index=0
codec_name=mpeg2video
codec_long_name=MPEG-2 video
profile=Main
codec_type=video
codec_time_base=1/25
codec_tag_string=[0][0][0][0]
codec_tag=0x0000
width=720
height=576
coded_width=0
coded_height=0
has_b_frames=1
sample_aspect_ratio=64:45
display_aspect_ratio=16:9
pix_fmt=yuv420p
level=8
color_range=tv
color_space=unknown
color_transfer=unknown
color_primaries=unknown
chroma_location=left
field_order=progressive
timecode=N/A
refs=1
id=0x1e0
r_frame_rate=25/1
avg_frame_rate=25/1
time_base=1/90000
start_pts=48600
start_time=0.540000
duration_ts=322970400
duration=3588.560000
bit_rate=N/A
max_bit_rate=N/A
bits_per_raw_sample=N/A
nb_frames=N/A
nb_read_frames=N/A
nb_read_packets=N/A
DISPOSITION:default=0
DISPOSITION:dub=0
DISPOSITION:original=0
DISPOSITION:comment=0
DISPOSITION:lyrics=0
DISPOSITION:karaoke=0
DISPOSITION:forced=0
DISPOSITION:hearing_impaired=0
DISPOSITION:visual_impaired=0
DISPOSITION:clean_effects=0
DISPOSITION:attached_pic=0
DISPOSITION:timed_thumbnails=0
[/STREAM]
}2° - Burn TimeCode with ffmpeg
CL : "
ffmpeg -i video.m2v -c:v mpeg2video -vf "drawtext=fontfile=courier.ttf: timecode='00\:00\:00\:00': r=25: x=10: y=10: fontcolor=white: box=1: fontsize=50: boxcolor=0x00000099" output.mpeg
"ffmpeg output:
{
ffmpeg version N-85604-g207e6de Copyright (c) 2000-2017 the FFmpeg developers
built with gcc 6.3.0 (GCC)
configuration: --enable-gpl --enable-version3 --enable-cuda --enable-cuvid --enable-d3d11va --enable-dxva2 --enable-libmfx --enable-nvenc --enable-avisynth --enable-bzlib --enable-fontconfig --enable-frei0r --enable-gnutls --enable-iconv --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libfreetype --enable-libgme --enable-libgsm --enable-libilbc --enable-libmodplug --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenh264 --enable-libopenjpeg --enable-libopus --enable-librtmp --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxavs --enable-libxvid --enable-libzimg --enable-lzma --enable-zlib
libavutil 55. 61.100 / 55. 61.100
libavcodec 57. 93.100 / 57. 93.100
libavformat 57. 72.101 / 57. 72.101
libavdevice 57. 7.100 / 57. 7.100
libavfilter 6. 86.100 / 6. 86.100
libswscale 4. 7.101 / 4. 7.101
libswresample 2. 8.100 / 2. 8.100
libpostproc 54. 6.100 / 54. 6.100
Input #0, mpegvideo, from 'R2_TG2_20170607_13001.m2v':
Duration: N/A, bitrate: N/A
Stream #0:0: Video: mpeg2video (Main), yuv420p(tv, top first), 720x576 [SAR 64:45 DAR 16:9], 25 fps, 25 tbr, 1200k tbn, 50 tbc
Stream mapping:
Stream #0:0 -> #0:0 (mpeg2video (native) -> mpeg2video (native))
Press [q] to stop, [?] for help
[mpeg @ 00000000025eb760] VBV buffer size not set, using default size of 130KB
If you want the mpeg file to be compliant to some specification
Like DVD, VCD or others, make sure you set the correct buffer size
Output #0, mpeg, to 'output.mpeg':
Metadata:
encoder : Lavf57.72.101
Stream #0:0: Video: mpeg2video (Main), yuv420p, 720x576 [SAR 64:45 DAR 16:9], q=2-31, 200 kb/s, 25 fps, 90k tbn, 25 tbc
Metadata:
encoder : Lavc57.93.100 mpeg2video
Side data:
cpb: bitrate max/min/avg: 0/0/200000 buffer size: 0 vbv_delay: -1
[mpeg2video @ 0000000002625020] ac-tex damaged at 1 3027.24 bitrate= 879.1kbits/s speed= 39x
[mpeg2video @ 0000000002625020] Warning MVs not available
[mpeg2video @ 0000000002625020] concealing 45 DC, 45 AC, 45 MV errors in I frame
[mpeg2video @ 0000000002625020] Warning MVs not available56 bitrate= 846.8kbits/s speed=39.1x
[mpeg2video @ 0000000002625020] concealing 1 DC, 1 AC, 1 MV errors in B frame
frame=89714 fps=974 q=31.0 Lsize= 332412kB time=00:59:48.52 bitrate= 758.8kbits/s speed= 39x
video:329859kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.774119%
}As seen from the screenshots there are 14 frames of difference, and later rise to 35
Can frames be damaged and ffmpeg skip them ?
The video for the first 13 minutes is perfectly synchronized
3° - remux [output.mmpeg] with original audio [audio.mp2]
CL: "ffmpeg -i output.mpeg -i originalAudio.mp2 -c:a copy -c:v copy finalOutput.mpeg"
ffmpeg output:
{
ffmpeg version N-85604-g207e6de Copyright (c) 2000-2017 the FFmpeg developers
built with gcc 6.3.0 (GCC)
configuration: --enable-gpl --enable-version3 --enable-cuda --enable-cuvid --enable-d3d11va --enable-dxva2 --enable-libmfx --enable-nvenc --enable-avisynth --enable-bzlib --enable-fontconfig --enable-frei0r --enable-gnutls --enable-iconv --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libfreetype --enable-libgme --enable-libgsm --enable-libilbc --enable-libmodplug --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenh264 --enable-libopenjpeg --enable-libopus --enable-librtmp --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxavs --enable-libxvid --enable-libzimg --enable-lzma --enable-zlib
libavutil 55. 61.100 / 55. 61.100
libavcodec 57. 93.100 / 57. 93.100
libavformat 57. 72.101 / 57. 72.101
libavdevice 57. 7.100 / 57. 7.100
libavfilter 6. 86.100 / 6. 86.100
libswscale 4. 7.101 / 4. 7.101
libswresample 2. 8.100 / 2. 8.100
libpostproc 54. 6.100 / 54. 6.100
Input #0, mpeg, from 'output.mpeg':
Duration: 00:59:48.56, start: 0.540000, bitrate: 758 kb/s
Stream #0:0[0x1e0]: Video: mpeg2video (Main), yuv420p(tv, progressive), 720x576 [SAR 64:45 DAR 16:9], 25 fps, 25 tbr, 90k tbn, 50 tbc
[mp3 @ 0000000002894980] Estimating duration from bitrate, this may be inaccurate
Input #1, mp3, from 'R2_TG2_20170607_13001.mp2':
Duration: 00:59:48.55, start: 0.000000, bitrate: 192 kb/s
Stream #1:0: Audio: mp2, 48000 Hz, stereo, s16p, 192 kb/s
[mpeg @ 000000000289a880] VBV buffer size not set, using default size of 130KB
If you want the mpeg file to be compliant to some specification
Like DVD, VCD or others, make sure you set the correct buffer size
Output #0, mpeg, to 'finalOutput.mpeg':
Metadata:
encoder : Lavf57.72.101
Stream #0:0: Video: mpeg2video (Main), yuv420p(tv, progressive), 720x576 [SAR 64:45 DAR 16:9], q=2-31, 25 fps, 25 tbr, 90k tbn, 25 tbc
Stream #0:1: Audio: mp2, 48000 Hz, stereo, s16p, 192 kb/s
Stream mapping:
Stream #0:0 -> #0:0 (copy)
Stream #1:0 -> #0:1 (copy)
Press [q] to stop, [?] for help
[mpeg @ 000000000289a880] Timestamps are unset in a packet for stream 0. This is deprecated and will stop working in the future. Fix your code to set the timestamps properly
frame=89714 fps=26872 q=-1.0 Lsize= 417232kB time=00:59:48.52 bitrate= 952.5kbits/s speed=1.07e+003x
video:329859kB audio:84107kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.789151%
}FinalOutput.mpeg has the same frames as output.mpeg
I have several TransportStreams to process and everyone has a frame differencesomeone can help me to solve the problem ?
I need FinalOutput.mpeg to be aligned frame by frame with the original and necessarily the video must impress the timecode.
a possible solution would also be a replace "damaged" frame but I can not find out how to replace the skipped frames
EDIT :
i’ve tried to work from OriginalVideo.ts and extracted video with -map directly with FFMPEG but the result is the same
CL :
ffmpeg -i OriginalVideo.ts -map 0:0 -c:v copy output.h264
ffmpeg version N-85604-g207e6de Copyright (c) 2000-2017 the FFmpeg developers
built with gcc 6.3.0 (GCC)
configuration: --enable-gpl --enable-version3 --enable-cuda --enable-cuvid --enable-d3d11va --enable-dxva2 --enable-libmfx --enable-nvenc --enable-avisynth --enable-bzlib --enable-fontconfig --enable-frei0r --enable-gnutls --enable-iconv --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libfreetype --enable-libgme --enable-libgsm --enable-libilbc --enable-libmodplug --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenh264 --enable-libopenjpeg --enable-libopus --enable-librtmp --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxavs --enable-libxvid --enable-libzimg --enable-lzma --enable-zlib
libavutil 55. 61.100 / 55. 61.100
libavcodec 57. 93.100 / 57. 93.100
libavformat 57. 72.101 / 57. 72.101
libavdevice 57. 7.100 / 57. 7.100
libavfilter 6. 86.100 / 6. 86.100
libswscale 4. 7.101 / 4. 7.101
libswresample 2. 8.100 / 2. 8.100
libpostproc 54. 6.100 / 54. 6.100
[mpeg2video @ 0000000000dd4c20] Invalid frame dimensions 0x0.
Last message repeated 5 times
[mp2 @ 0000000000dd7e00] Header missing
[mp2 @ 0000000000dd8f20] Header missing
[mpeg2video @ 0000000000dd4c20] Invalid frame dimensions 0x0.
[mp2 @ 0000000000dd5b60] Header missing
[mpegts @ 0000000000dd25a0] PES packet size mismatch
Last message repeated 1 times
[mpegts @ 0000000000dd25a0] Could not find codec parameters for stream 5 (Unknown: none ([5][0][0][0] / 0x0005)): unknown codec
Consider increasing the value for the 'analyzeduration' and 'probesize' options
[mpegts @ 0000000000dd25a0] 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
Input #0, mpegts, from 'R2_TG2_20170607_13001.ts':
Duration: 00:59:56.06, start: 45451.723744, bitrate: 5901 kb/s
Program 3402
Stream #0:0[0x201]: Video: mpeg2video (Main) ([2][0][0][0] / 0x0002), yuv420p(tv, top first), 720x576 [SAR 64:45 DAR 16:9], 25 fps, 25 tbr, 90k tbn, 50 tbc
Stream #0:1[0x28b](ita): Audio: mp2 ([4][0][0][0] / 0x0004), 48000 Hz, stereo, s16p, 192 kb/s
Stream #0:2[0x241](ita): Subtitle: dvb_teletext ([6][0][0][0] / 0x0006)
Stream #0:3[0x2b7](Oth): Audio: mp2 ([4][0][0][0] / 0x0004), 48000 Hz, mono, s16p, 64 kb/s
Stream #0:4[0x2b8](eng): Audio: mp2 ([4][0][0][0] / 0x0004), 48000 Hz, stereo, s16p, 192 kb/s
Stream #0:5[0x7d2]: Unknown: none ([5][0][0][0] / 0x0005)
Stream #0:6[0xbb9]: Unknown: none ([11][0][0][0] / 0x000B)
Output #0, h264, to 'output.h264':
Metadata:
encoder : Lavf57.72.101
Stream #0:0: Video: mpeg2video (Main) ([2][0][0][0] / 0x0002), yuv420p(tv, top first), 720x576 [SAR 64:45 DAR 16:9], q=2-31, 25 fps, 25 tbr, 25 tbn, 25 tbc
Stream mapping:
Stream #0:0 -> #0:0 (copy)
Press [q] to stop, [?] for help
frame=89746 fps=6083 q=-1.0 Lsize= 2131869kB time=00:59:55.64 bitrate=4857.1kbits/s speed= 244x
video:2131869kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.000000%if i try to extract video in mpeg format FFMPEG retrive me following errors :
ffmpeg version N-85604-g207e6de Copyright (c) 2000-2017 the FFmpeg developers
built with gcc 6.3.0 (GCC)
configuration: --enable-gpl --enable-version3 --enable-cuda --enable-cuvid --enable-d3d11va --enable-dxva2 --enable-libmfx --enable-nvenc --enable-avisynth --enable-bzlib --enable-fontconfig --enable-frei0r --enable-gnutls --enable-iconv --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libfreetype --enable-libgme --enable-libgsm --enable-libilbc --enable-libmodplug --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenh264 --enable-libopenjpeg --enable-libopus --enable-librtmp --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxavs --enable-libxvid --enable-libzimg --enable-lzma --enable-zlib
libavutil 55. 61.100 / 55. 61.100
libavcodec 57. 93.100 / 57. 93.100
libavformat 57. 72.101 / 57. 72.101
libavdevice 57. 7.100 / 57. 7.100
libavfilter 6. 86.100 / 6. 86.100
libswscale 4. 7.101 / 4. 7.101
libswresample 2. 8.100 / 2. 8.100
libpostproc 54. 6.100 / 54. 6.100
[mpeg2video @ 0000000002824c20] Invalid frame dimensions 0x0.
Last message repeated 5 times
[mp2 @ 0000000002827e00] Header missing
[mp2 @ 0000000002828f20] Header missing
[mpeg2video @ 0000000002824c20] Invalid frame dimensions 0x0.
[mp2 @ 0000000002825b60] Header missing
[mpegts @ 00000000028225a0] PES packet size mismatch
Last message repeated 1 times
[mpegts @ 00000000028225a0] Could not find codec parameters for stream 5 (Unknown: none ([5][0][0][0] / 0x0005)): unknown codec
Consider increasing the value for the 'analyzeduration' and 'probesize' options
[mpegts @ 00000000028225a0] 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
Input #0, mpegts, from 'R2_TG2_20170607_13001.ts':
Duration: 00:59:56.06, start: 45451.723744, bitrate: 5901 kb/s
Program 3402
Stream #0:0[0x201]: Video: mpeg2video (Main) ([2][0][0][0] / 0x0002), yuv420p(tv, top first), 720x576 [SAR 64:45 DAR 16:9], 25 fps, 25 tbr, 90k tbn, 50 tbc
Stream #0:1[0x28b](ita): Audio: mp2 ([4][0][0][0] / 0x0004), 48000 Hz, stereo, s16p, 192 kb/s
Stream #0:2[0x241](ita): Subtitle: dvb_teletext ([6][0][0][0] / 0x0006)
Stream #0:3[0x2b7](Oth): Audio: mp2 ([4][0][0][0] / 0x0004), 48000 Hz, mono, s16p, 64 kb/s
Stream #0:4[0x2b8](eng): Audio: mp2 ([4][0][0][0] / 0x0004), 48000 Hz, stereo, s16p, 192 kb/s
Stream #0:5[0x7d2]: Unknown: none ([5][0][0][0] / 0x0005)
Stream #0:6[0xbb9]: Unknown: none ([11][0][0][0] / 0x000B)
File 'output.mpeg' already exists. Overwrite ? [y/N] y
[mpeg @ 000000000072bc80] VBV buffer size not set, using default size of 130KB
If you want the mpeg file to be compliant to some specification
Like DVD, VCD or others, make sure you set the correct buffer size
Output #0, mpeg, to 'output.mpeg':
Metadata:
encoder : Lavf57.72.101
Stream #0:0: Video: mpeg2video (Main) ([2][0][0][0] / 0x0002), yuv420p(tv, top first), 720x576 [SAR 64:45 DAR 16:9], q=2-31, 25 fps, 25 tbr, 90k tbn, 25 tbc
Stream mapping:
Stream #0:0 -> #0:0 (copy)
Press [q] to stop, [?] for help
[mpeg @ 000000000072bc80] buffer underflow st=0 bufi=1218 size=11754=4752.0kbits/s speed= 229x
[mpeg @ 000000000072bc80] buffer underflow st=0 bufi=3247 size=11754
[mpeg @ 000000000072bc80] buffer underflow st=0 bufi=5288 size=11754
[mpeg @ 000000000072bc80] buffer underflow st=0 bufi=7329 size=11754
[mpeg @ 000000000072bc80] buffer underflow st=0 bufi=9370 size=11754
[mpeg @ 000000000072bc80] buffer underflow st=0 bufi=11411 size=11754
[mpeg @ 000000000072bc80] buffer underflow st=0 bufi=1862 size=17826
[mpeg @ 000000000072bc80] buffer underflow st=0 bufi=3891 size=17826
[mpeg @ 000000000072bc80] buffer underflow st=0 bufi=5932 size=17826
[mpeg @ 000000000072bc80] buffer underflow st=0 bufi=7973 size=17826
[mpeg @ 000000000072bc80] buffer underflow st=0 bufi=10014 size=17826
[mpeg @ 000000000072bc80] buffer underflow st=0 bufi=12055 size=17826
[mpeg @ 000000000072bc80] buffer underflow st=0 bufi=14096 size=17826
[mpeg @ 000000000072bc80] buffer underflow st=0 bufi=16137 size=17826
[mpeg @ 000000000072bc80] buffer underflow st=0 bufi=875 size=88109e=4684.9kbits/s speed= 239x
[mpeg @ 000000000072bc80] buffer underflow st=0 bufi=2904 size=88109
[mpeg @ 000000000072bc80] buffer underflow st=0 bufi=4945 size=88109
[mpeg @ 000000000072bc80] buffer underflow st=0 bufi=6986 size=88109
[mpeg @ 000000000072bc80] buffer underflow st=0 bufi=9027 size=88109
[mpeg @ 000000000072bc80] buffer underflow st=0 bufi=11068 size=88109
[mpeg @ 000000000072bc80] buffer underflow st=0 bufi=13109 size=88109
[mpeg @ 000000000072bc80] buffer underflow st=0 bufi=15150 size=88109
[mpeg @ 000000000072bc80] buffer underflow st=0 bufi=17191 size=88109
[mpeg @ 000000000072bc80] buffer underflow st=0 bufi=19232 size=88109
[mpeg @ 000000000072bc80] buffer underflow st=0 bufi=21273 size=88109
[mpeg @ 000000000072bc80] buffer underflow st=0 bufi=23314 size=88109
[mpeg @ 000000000072bc80] buffer underflow st=0 bufi=25355 size=88109
[mpeg @ 000000000072bc80] buffer underflow st=0 bufi=27396 size=88109
[mpeg @ 000000000072bc80] buffer underflow st=0 bufi=29437 size=88109
[mpeg @ 000000000072bc80] buffer underflow st=0 bufi=31478 size=88109
[mpeg @ 000000000072bc80] buffer underflow st=0 bufi=33519 size=88109
[mpeg @ 000000000072bc80] buffer underflow st=0 bufi=35560 size=88109
[mpeg @ 000000000072bc80] buffer underflow st=0 bufi=37601 size=88109
[mpeg @ 000000000072bc80] buffer underflow st=0 bufi=39642 size=88109
[mpeg @ 000000000072bc80] buffer underflow st=0 bufi=41683 size=88109
[mpeg @ 000000000072bc80] buffer underflow st=0 bufi=43724 size=88109
[mpeg @ 000000000072bc80] buffer underflow st=0 bufi=45765 size=88109
[mpeg @ 000000000072bc80] buffer underflow st=0 bufi=47806 size=88109
[mpeg @ 000000000072bc80] buffer underflow st=0 bufi=49847 size=88109
[mpeg @ 000000000072bc80] buffer underflow st=0 bufi=51888 size=88109
[mpeg @ 000000000072bc80] buffer underflow st=0 bufi=53929 size=88109
[mpeg @ 000000000072bc80] buffer underflow st=0 bufi=55970 size=88109
[mpeg @ 000000000072bc80] buffer underflow st=0 bufi=58011 size=88109
[mpeg @ 000000000072bc80] buffer underflow st=0 bufi=60052 size=88109
[mpeg @ 000000000072bc80] buffer underflow st=0 bufi=62093 size=88109
[mpeg @ 000000000072bc80] buffer underflow st=0 bufi=64134 size=88109
[mpeg @ 000000000072bc80] buffer underflow st=0 bufi=66175 size=88109
[mpeg @ 000000000072bc80] buffer underflow st=0 bufi=68216 size=88109
[mpeg @ 000000000072bc80] buffer underflow st=0 bufi=70257 size=88109
[mpeg @ 000000000072bc80] buffer underflow st=0 bufi=72298 size=88109
[mpeg @ 000000000072bc80] buffer underflow st=0 bufi=74339 size=88109
[mpeg @ 000000000072bc80] buffer underflow st=0 bufi=76380 size=88109
[mpeg @ 000000000072bc80] buffer underflow st=0 bufi=78421 size=88109
[mpeg @ 000000000072bc80] buffer underflow st=0 bufi=80462 size=88109
[mpeg @ 000000000072bc80] buffer underflow st=0 bufi=82503 size=88109
[mpeg @ 000000000072bc80] buffer underflow st=0 bufi=84544 size=88109
[mpeg @ 000000000072bc80] buffer underflow st=0 bufi=86585 size=88109
frame=89746 fps=5348 q=-1.0 Lsize= 2140734kB time=00:59:55.60 bitrate=4877.3kbits/s speed= 214x
video:2131869kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.415814% -
Opencv crosscompile with ffmpeg and other 3rdparty for arm board
16 juin 2017, par Little ToothAfter buliding Qt5.5.1 for my arm board sucessfully, I am taking up to crosscompile opencv. Here are the steps :
First, I crosscompile 3rdparty :
a.libz
lmk@lmk-virtual-machine:/home/newdisk$ sudo tar -zvxf zlib-1.2.8.tar.gz
lmk@lmk-virtual-machine:/home/newdisk$ cd zlib-1.2.8
lmk@lmk-virtual-machine:/home/newdisk/zlib-1.2.8$ sudo ./configure --prefix=/home/newdisk/optnew/opencv-rely -shared
lmk@lmk-virtual-machine:/home/newdisk/zlib-1.2.8$ sudo vi Makefileand etit Makefile in some details :
#Makefile
CC=/home/newdisk/optnew/opt/FriendlyARM/toolschain/4.5.1/bin/arm-none-linux-gnueabi-gcc
LDSHARED= /home/newdisk/optnew/opt/FriendlyARM/toolschain/4.5.1/bin/arm-none-linux-gnueabi-gcc -shared -Wl,-soname,libz.so.1,--version-script,zlib.map
AR=/home/newdisk/optnew/opt/FriendlyARM/toolschain/4.5.1/bin/arm-none-linux-gnueabi-ar
RANLIB=arm-linux-ranlibthe last step is run make and make install :
lmk@lmk-virtual-machine:/home/newdisk/zlib-1.2.8$ sudo make
lmk@lmk-virtual-machine:/home/newdisk/zlib-1.2.8$ sudo make installb.libjpeg
lmk@lmk-virtual-machine:/home/newdisk$ sudo tar -zvxf jpegsrc.v9.tar.gz
lmk@lmk-virtual-machine:/home/newdisk$ cd jpeg-9
lmk@lmk-virtual-machine:/home/newdisk/jpeg-9$ sudo CC=/home/newdisk/optnew/opt/FriendlyARM/toolschain/4.5.1/bin/arm-none-linux-gnueabi-gcc ./configure --host=arm-linux --prefix=/home/newdisk/optnew/opencv-rely --enable-shared --enable-static
lmk@lmk-virtual-machine:/home/newdisk/jpeg-9$ sudo make
lmk@lmk-virtual-machine:/home/newdisk/jpeg-9$ sudo make installc.libpng
lmk@lmk-virtual-machine:/home/newdisk$ sudo xz -d libpng-1.6.29.tar.xz
lmk@lmk-virtual-machine:/home/newdisk$ sudo tar -xvf libpng-1.6.29.tar
lmk@lmk-virtual-machine:/home/newdisk$ cd libpng-1.6.29
lmk@lmk-virtual-machine:/home/newdisk/libpng-1.6.29$ sudo CC=/home/newdisk/optnew/opt/FriendlyARM/toolschain/4.5.1/bin/arm-none-linux-gnueabi-gcc ./configure --host=arm-linux --prefix=/home/newdisk/optnew/opencv-rely --enable-shared --enable-static
lmk@lmk-virtual-machine:/home/newdisk/libpng-1.6.29$ sudo make
lmk@lmk-virtual-machine:/home/newdisk/libpng-1.6.29$ sudo make installd.yasm
lmk@lmk-virtual-machine:/home/newdisk$ sudo tar -zvxf yasm-1.3.0.tar.gz
lmk@lmk-virtual-machine:/home/newdisk$ cd yasm-1.3.0
lmk@lmk-virtual-machine:/home/newdisk/yasm-1.3.0$ sudo CC=/home/newdisk/optnew/opt/FriendlyARM/toolschain/4.5.1/bin/arm-none-linux-gnueabi-gcc ./configure --prefix=/home/newdisk/optnew/opencv-rely --host=arm-linux
lmk@lmk-virtual-machine:/home/newdisk/yasm-1.3.0$ sudo make
lmk@lmk-virtual-machine:/home/newdisk/yasm-1.3.0$ sudo make installe.libx264
lmk@lmk-virtual-machine:/home/newdisk$ sudo tar -jxvf last_x264.tar.bz2
lmk@lmk-virtual-machine:/home/newdisk$ cd x264-snapshot-20170612-2245
lmk@lmk-virtual-machine:/home/newdisk/x264-snapshot-20170612-2245$ sudo CC=/home/newdisk/optnew/opt/FriendlyARM/toolschain/4.5.1/bin/arm-none-linux-gnueabi-gcc ./configure --enable-shared --host=arm-linux --disable-asm --prefix=/home/newdisk/optnew/opencv-rely
lmk@lmk-virtual-machine:/home/newdisk/x264-snapshot-20170612-2245$ sudo make
lmk@lmk-virtual-machine:/home/newdisk/x264-snapshot-20170612-2245$ sudo make installf.libxvid
lmk@lmk-virtual-machine:/home/newdisk$ cd xvidcore-1.3.3
lmk@lmk-virtual-machine:/home/newdisk/xvidcore-1.3.3$ cd build/generic
lmk@lmk-virtual-machine:/home/newdisk/xvidcore-1.3.3/build/generic$ sudo CC=/home/newdisk/optnew/opt/FriendlyARM/toolschain/4.5.1/bin/arm-none-linux-gnueabi-gcc ./configure --prefix=/home/newdisk/optnew/opencv-rely --host=arm-linux --disable-assembly
lmk@lmk-virtual-machine:/home/newdisk/xvidcore-1.3.3/build/generic$ sudo make
lmk@lmk-virtual-machine:/home/newdisk/xvidcore-1.3.3/build/generic$ sudo make installg.ffmpeg
lmk@lmk-virtual-machine:/home/newdisk$ sudo tar -jvxf ffmpeg-3.3.2.tar.bz2
lmk@lmk-virtual-machine:/home/newdisk$ cd ffmpeg-3.3.2
lmk@lmk-virtual-machine:/home/newdisk/ffmpeg-3.3.2$
sudo ./configure --prefix=/home/newdisk/optnew/opencv-rely --enable-shared --disable-static --enable-gpl --enable-cross-compile --arch=arm --disable-stripping --target-os=linux --enable-libx264 --enable-libxvid --cc=/home/newdisk/optnew/opt/FriendlyARM/toolschain/4.5.1/bin/arm-none-linux-gnueabi-gcc --enable-swscale --extra-ldflags=-L/home/newdisk/optnew/opencv-rely/lib --extra-cflags=-I/home/newdisk/optnew/opencv-rely/include
lmk@lmk-virtual-machine:/home/newdisk/ffmpeg-3.3.2$ sudo make
lmk@lmk-virtual-machine:/home/newdisk/ffmpeg-3.3.2$ sudo make installThere is no problem in 3rdparty crosscompile.
Next, opencv crosscompile :lmk@lmk-virtual-machine:/home/newdisk$ sudo unzip opencv-3.1.0.zip
lmk@lmk-virtual-machine:/home/newdisk$ cd opencv-3.1.0
lmk@lmk-virtual-machine:/home/newdisk/opencv-3.1.0$ sudo mkdir BuildOpencv
lmk@lmk-virtual-machine:/home/newdisk/opencv-3.1.0$ cd BuildOpencv
lmk@lmk-virtual-machine:/home/newdisk/opencv-3.1.0/BuildOpencv$ sudo vim toolchain.cmake
#toolchain.cmake
###########user defined#############
set( CMAKE_SYSTEM_NAME Linux )
set( CMAKE_SYSTEM_PROCESSOR arm )
set( CMAKE_C_COMPILER /home/newdisk/optnew/opt/FriendlyARM/toolschain/4.5.1/bin/arm-linux-gcc )
set( CMAKE_CXX_COMPILER /home/newdisk/optnew/opt/FriendlyARM/toolschain/4.5.1/bin/arm-linux-g++ )
###########user defined#############
set( CMAKE_FIND_ROOT_PATH /home/newdisk/optnew/opencv-rely)
set( CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER )
set( CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
set( CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
######################################Then I run cmake :
lmk@lmk-virtual-machine:/home/newdisk/opencv-3.1.0/BuildOpencv$ sudo cmake -DCMAKE_TOOLCHAIN_FILE=toolchain.cmake ../
Here is the result:
-- Detected version of GNU GCC: 45 (405)
-- Found ZLIB: /home/newdisk/optnew/opencv-rely/lib/libz.so (found suitable version "1.2.8", minimum required is "1.2.3")
-- Could NOT find TIFF (missing: TIFF_LIBRARY TIFF_INCLUDE_DIR)
-- Could NOT find Jasper (missing: JASPER_LIBRARIES) (found version "1.900.1")
-- Found ZLIB: /home/newdisk/optnew/opencv-rely/lib/libz.so (found version "1.2.8")
-- checking for module 'gtk+-3.0'
-- package 'gtk+-3.0' not found
-- checking for module 'gstreamer-base-1.0'
-- package 'gstreamer-base-1.0' not found
-- checking for module 'gstreamer-video-1.0'
-- package 'gstreamer-video-1.0' not found
-- checking for module 'gstreamer-app-1.0'
-- package 'gstreamer-app-1.0' not found
-- checking for module 'gstreamer-riff-1.0'
-- package 'gstreamer-riff-1.0' not found
-- checking for module 'gstreamer-pbutils-1.0'
-- package 'gstreamer-pbutils-1.0' not found
-- checking for module 'gstreamer-base-0.10'
-- package 'gstreamer-base-0.10' not found
-- checking for module 'gstreamer-video-0.10'
-- package 'gstreamer-video-0.10' not found
-- checking for module 'gstreamer-app-0.10'
-- package 'gstreamer-app-0.10' not found
-- checking for module 'gstreamer-riff-0.10'
-- package 'gstreamer-riff-0.10' not found
-- checking for module 'gstreamer-pbutils-0.10'
-- package 'gstreamer-pbutils-0.10' not found
-- Looking for linux/videodev.h
-- Looking for linux/videodev.h - found
-- Looking for linux/videodev2.h
-- Looking for linux/videodev2.h - found
-- Looking for sys/videoio.h
-- Looking for sys/videoio.h - not found
-- checking for module 'libavresample'
-- package 'libavresample' not found
-- Looking for libavformat/avformat.h
-- Looking for libavformat/avformat.h - not found
-- Looking for ffmpeg/avformat.h
-- Looking for ffmpeg/avformat.h - not found
-- checking for module 'libgphoto2'
-- package 'libgphoto2' not found
-- Could NOT find Doxygen (missing: DOXYGEN_EXECUTABLE)
-- To enable PlantUML support, set PLANTUML_JAR environment variable or pass -DPLANTUML_JAR=<filepath> option to cmake
-- Found PythonInterp: /usr/bin/python2.7 (found suitable version "2.7.6", minimum required is "2.7")
-- Could NOT find PythonLibs (missing: PYTHON_LIBRARIES) (found suitable version "2.7.6", minimum required is "2.7")
-- Cannot probe for Python/Numpy support (because we are cross-compiling OpenCV)
-- If you want to enable Python/Numpy support, set the following variables:
-- PYTHON2_INCLUDE_PATH
-- PYTHON2_LIBRARIES
-- PYTHON2_NUMPY_INCLUDE_DIRS
-- PYTHON3_INCLUDE_PATH
-- PYTHON3_LIBRARIES
-- PYTHON3_NUMPY_INCLUDE_DIRS
-- Found PythonInterp: /usr/bin/python3.4 (found suitable version "3.4.3", minimum required is "3.4")
-- Could NOT find PythonLibs (missing: PYTHON_LIBRARIES) (Required is at least version "3.4")
-- Cannot probe for Python/Numpy support (because we are cross-compiling OpenCV)
-- If you want to enable Python/Numpy support, set the following variables:
-- PYTHON2_INCLUDE_PATH
-- PYTHON2_LIBRARIES
-- PYTHON2_NUMPY_INCLUDE_DIRS
-- PYTHON3_INCLUDE_PATH
-- PYTHON3_LIBRARIES
-- PYTHON3_NUMPY_INCLUDE_DIRS
-- Could NOT find JNI (missing: JAVA_AWT_LIBRARY JAVA_JVM_LIBRARY JAVA_INCLUDE_PATH JAVA_INCLUDE_PATH2 JAVA_AWT_INCLUDE_PATH)
-- Could NOT find Matlab (missing: MATLAB_MEX_SCRIPT MATLAB_INCLUDE_DIRS MATLAB_ROOT_DIR MATLAB_LIBRARIES MATLAB_LIBRARY_DIRS MATLAB_MEXEXT MATLAB_ARCH MATLAB_BIN)
--
-- General configuration for OpenCV 3.1.0
=====================================
-- Version control: unknown
--
-- Platform:
-- Host: Linux 3.16.0-77-generic i686
-- Target: Linux arm
-- CMake: 2.8.12.2
-- CMake generator: Unix Makefiles
-- CMake build tool: /usr/bin/make
-- Configuration: Release
--
-- C/C++:
-- Built as dynamic libs?: YES
-- C++ Compiler: /home/newdisk/optnew/opt/FriendlyARM/toolschain/4.5.1/bin/arm-linux-g++ (ver 4.5.1)
-- C++ flags (Release): -fsigned-char -W -Wall -Werror=return-type -Werror=non-virtual-dtor -Werror=address -Werror=sequence-point -Wformat -Werror=format-security -Wmissing-declarations -Wundef -Winit-self -Wpointer-arith -Wshadow -Wsign-promo -fdiagnostics-show-option -pthread -fomit-frame-pointer -ffunction-sections -fvisibility=hidden -fvisibility-inlines-hidden -O3 -DNDEBUG -DNDEBUG
-- C++ flags (Debug): -fsigned-char -W -Wall -Werror=return-type -Werror=non-virtual-dtor -Werror=address -Werror=sequence-point -Wformat -Werror=format-security -Wmissing-declarations -Wundef -Winit-self -Wpointer-arith -Wshadow -Wsign-promo -fdiagnostics-show-option -pthread -fomit-frame-pointer -ffunction-sections -fvisibility=hidden -fvisibility-inlines-hidden -g -O0 -DDEBUG -D_DEBUG
-- C Compiler: /home/newdisk/optnew/opt/FriendlyARM/toolschain/4.5.1/bin/arm-linux-gcc
-- C flags (Release): -fsigned-char -W -Wall -Werror=return-type -Werror=non-virtual-dtor -Werror=address -Werror=sequence-point -Wformat -Werror=format-security -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Wundef -Winit-self -Wpointer-arith -Wshadow -fdiagnostics-show-option -pthread -fomit-frame-pointer -ffunction-sections -fvisibility=hidden -O3 -DNDEBUG -DNDEBUG
-- C flags (Debug): -fsigned-char -W -Wall -Werror=return-type -Werror=non-virtual-dtor -Werror=address -Werror=sequence-point -Wformat -Werror=format-security -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Wundef -Winit-self -Wpointer-arith -Wshadow -fdiagnostics-show-option -pthread -fomit-frame-pointer -ffunction-sections -fvisibility=hidden -g -O0 -DDEBUG -D_DEBUG
-- Linker flags (Release):
-- Linker flags (Debug):
-- Precompiled headers: YES
-- Extra dependencies: /home/newdisk/optnew/opencv-rely/lib/libjpeg.so /home/newdisk/optnew/opencv-rely/lib/libpng.so /home/newdisk/optnew/opencv-rely/lib/libz.so gtk-x11-2.0 gdk-x11-2.0 atk-1.0 gio-2.0 pangoft2-1.0 pangocairo-1.0 gdk_pixbuf-2.0 cairo pango-1.0 fontconfig gobject-2.0 freetype gthread-2.0 glib-2.0 dc1394 v4l1 v4l2 avcodec avformat avutil swscale dl m pthread rt
-- 3rdparty dependencies: libwebp libtiff libjasper IlmImf
--
-- OpenCV modules:
-- To be built: core flann imgproc ml photo video imgcodecs shape videoio highgui objdetect superres ts features2d calib3d stitching videostab
-- Disabled: world
-- Disabled by dependency: -
-- Unavailable: cudaarithm cudabgsegm cudacodec cudafeatures2d cudafilters cudaimgproc cudalegacy cudaobjdetect cudaoptflow cudastereo cudawarping cudev java python2 python3 viz
--
-- GUI:
-- QT: NO
-- GTK+ 2.x: YES (ver 2.24.23)
-- GThread : YES (ver 2.40.2)
-- GtkGlExt: NO
-- OpenGL support: NO
-- VTK support: NO
--
-- Media I/O:
-- ZLib: /home/newdisk/optnew/opencv-rely/lib/libz.so (ver 1.2.8)
-- JPEG: /home/newdisk/optnew/opencv-rely/lib/libjpeg.so (ver 90)
-- WEBP: build (ver 0.3.1)
-- PNG: /home/newdisk/optnew/opencv-rely/lib/libpng.so (ver 1.6.29)
-- TIFF: build (ver 42 - 4.0.2)
-- JPEG 2000: build (ver 1.900.1)
-- OpenEXR: build (ver 1.7.1)
-- GDAL: NO
--
-- Video I/O:
-- DC1394 1.x: NO
-- DC1394 2.x: YES (ver 2.2.1)
-- FFMPEG: YES
-- codec: YES (ver 54.35.1)
-- format: YES (ver 54.20.4)
-- util: YES (ver 52.3.0)
-- swscale: YES (ver 2.1.1)
-- resample: NO
-- gentoo-style: YES
-- GStreamer: NO
-- OpenNI: NO
-- OpenNI PrimeSensor Modules: NO
-- OpenNI2: NO
-- PvAPI: NO
-- GigEVisionSDK: NO
-- UniCap: NO
-- UniCap ucil: NO
-- V4L/V4L2: Using libv4l1 (ver 0.8.8) / libv4l2 (ver 0.8.8)
-- XIMEA: NO
-- Xine: NO
-- gPhoto2: NO
--
-- Parallel framework: pthreads
--
-- Other third-party libraries:
-- Use IPP: NO
-- Use VA: NO
-- Use Intel VA-API/OpenCL: NO
-- Use Eigen: NO
-- Use Cuda: NO
-- Use OpenCL: YES
-- Use custom HAL: NO
--
-- OpenCL:
-- Version: dynamic
-- Include path: /home/newdisk/opencv-3.1.0/3rdparty/include/opencl/1.2
-- Use AMDFFT: NO
-- Use AMDBLAS: NO
--
-- Python 2:
-- Interpreter: /usr/bin/python2.7 (ver 2.7.6)
--
-- Python 3:
-- Interpreter: /usr/bin/python3.4 (ver 3.4.3)
--
-- Python (for build): /usr/bin/python2.7
--
-- Java:
-- ant: NO
-- JNI: NO
-- Java wrappers: NO
-- Java tests: NO
--
-- Matlab: Matlab not found or implicitly disabled
--
-- Documentation:
-- Doxygen: NO
-- PlantUML: NO
--
-- Tests and samples:
-- Tests: YES
-- Performance tests: YES
-- C/C++ Examples: NO
--
-- Install path: /home/newdisk/opencv-3.1.0/BuildOpencv/install
--
-- cvconfig.h is in: /home/newdisk/opencv-3.1.0/BuildOpencv
-- -----------------------------------------------------------------
--
-- Configuring done
-- Generating done
-- Build files have been written to: /home/newdisk/opencv-3.1.0/BuildOpencv
</filepath>After configuring and generating, run cmake-gui :
lmk@lmk-virtual-machine:/home/newdisk/opencv-3.1.0/BuildOpencv$ sudo cmake-gui
Src:/home/newdisk/opencv-3.1.0
Build:/home/newdisk/opencv-3.1.0/BuildOpencv
CMAKE_INSTALL_PREFIX:/home/newdisk/optnew/opencv-arm
Don't choose these items:
WITH_CUDA
WITH_GTK
WITH_1394
WITH_GSTREAMER
WITH_LIBV4L
WITH_TIFF
BUILD_OPENEXR
WITH_OPENEXR
WITH_OPENCL
Configure and generate.
lmk@lmk-virtual-machine:/home/newdisk/opencv-3.1.0/BuildOpencv$ sudo vi CMakeCache.txt
#CMakeCache.txt
//Flags used by the linker.
CMAKE_EXE_LINKER_FLAGS:STRING=-lpthread -lrt
lmk@lmk-virtual-machine:/home/newdisk/opencv-3.1.0/BuildOpencv$ sudo makeFianlly,I got these errors :
[ 27%] Building CXX object modules/videoio/CMakeFiles/opencv_videoio.dir/src/cap_mjpeg_decoder.cpp.o
[ 27%] Building CXX object modules/videoio/CMakeFiles/opencv_videoio.dir/src/cap_v4l.cpp.o
[ 27%] Building CXX object modules/videoio/CMakeFiles/opencv_videoio.dir/src/cap_ffmpeg.cpp.o
In file included from /home/newdisk/opencv-3.1.0/modules/videoio/src/cap_ffmpeg_impl.hpp:65:0,
from /home/newdisk/opencv-3.1.0/modules/videoio/src/cap_ffmpeg.cpp:45:
/home/newdisk/opencv-3.1.0/modules/videoio/src/ffmpeg_codecs.hpp:77:36: fatal error: libavformat/avformat.h: No such file or directory
compilation terminated.
make[2]: *** [modules/videoio/CMakeFiles/opencv_videoio.dir/src/cap_ffmpeg.cpp.o] Error 1
make[1]: *** [modules/videoio/CMakeFiles/opencv_videoio.dir/all] Error 2
make: *** [all] Error 2While the file libavformat/avformat.h does exits in my directory
/home/newdisk/optnew/opencv-rely/includeWhy can cmake find lib directory
-- Found ZLIB: /home/newdisk/optnew/opencv-rely/lib/libz.so (found suitable version "1.2.8", minimum required is "1.2.3")
but cannot find include directory ?
/home/newdisk/optnew/opencv-rely/include
Do you have any idea ?