[FFmpeg-user] problems with IPB Frames

Henk D. Schoneveld belcampo at zonnet.nl
Tue Jan 28 16:49:43 CET 2014


On 28 Jan 2014, at 16:03, Guido Holz <guido.holz at googlemail.com> wrote:

> The job is to cut quikly out a piece from a big videostream (MTS) and to
> stitch this piece with others together. The problem is, that I have many
> times no I-frame as my first frame what means that I have some artifacts at
> the beginning.
> 
> first I cut quick a bigger piece out of the big stream.
> 
> \>ffmpeg.exe -ss 00:07:12.0 -i 00005.MTS -vf yadif=1 -r 25 -t 00:00:20.0
> -an -y tmp.mp4
> 
> after I let run the video 4 seconds to cut after 4 seconds 12 seconds out
> of the video (to catch an I-Frame for getting a smooth start of the video)
> 
> \>ffmpeg.exe -i tmp.mp4 -ss 00:00:04.0 -t 00:00:12.0 -y out.mp4
> 
> I need to convert from mp4 to ts because after I have to concatenate the
> videos together
> 
> \>ffmpeg.exe -i out.mp4 -c copy -bsf:v h264_mp4toannexb -f mpegts -y out.ts
> 
> \>ffmpeg -i "concat:out.ts|out.ts" -i  a_sound_file.aac -c copy -bsf:a
> aac_adtstoasc -y finish.mp4
What you basically do is ‘copying’ chunks of a file. Without reencoding you’ll always have these hit/miss situations, unless the source is all-i-frames. 
> 
> the  ouptut of the source-video is
> 
> ffmpeg.exe -i 00005.MTS
> ffmpeg version N-60202-g6369766 Copyright (c) 2000-2014 the FFmpeg
> developers
>  built on Jan 27 2014 02:02:32 with gcc 4.8.2 (GCC)
>  configuration: --enable-gpl --enable-version3 --disable-w32threads
> --enable-avisynth --enable-bzlib --enable-fontconfig --enable-frei0r
> --enable-gnutls --enable-iconv --enable-libass --enable-libbluray
> --enable-libcaca --enable-libfreetype --enable-libgsm --enable-libilbc
> --enable-libmodplug --enable-libmp3lame --enable-libopencore-amrnb
> --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus
> --enable-librtmp --enable-libschroedinger --enable-libsoxr
> --enable-libspeex --enable-libtheora --enable-libtwolame
> --enable-libvidstab --enable-libvo-aacenc --enable-libvo-amrwbenc
> --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libx264
> --enable-libxavs --enable-libxvid --enable-zlib
>  libavutil      52. 63.100 / 52. 63.100
>  libavcodec     55. 49.100 / 55. 49.100
>  libavformat    55. 26.100 / 55. 26.100
>  libavdevice    55.  5.102 / 55.  5.102
>  libavfilter     4.  1.101 /  4.  1.101
>  libswscale      2.  5.101 /  2.  5.101
>  libswresample   0. 17.104 /  0. 17.104
>  libpostproc    52.  3.100 / 52.  3.100
> Input #0, mpegts, from '00005.MTS':
>  Duration: 00:16:31.57, start: 4961.872000, bitrate: 17147 kb/s
>  Program 1
>    Stream #0:0[0x1011]: Video: h264 (High) (HDMV / 0x564D4448), yuv420p,
> 1920x1080 [SAR 1:1 DAR 16:9], 25 fps, 25 tbr, 90k tbn, 50 tbc
>    Stream #0:1[0x1100]: Audio: ac3 (AC-3 / 0x332D4341), 48000 Hz, stereo,
> fltp, 256 kb/s
>    Stream #0:2[0x1200]: Subtitle: hdmv_pgs_subtitle ([144][0][0][0] /
> 0x0090), 1920x1080
> At least one output file must be specified
> 
> 
> what can I do to get no artifacts?
> 
> --
> _______________________________________________
> ffmpeg-user mailing list
> ffmpeg-user at ffmpeg.org
> http://ffmpeg.org/mailman/listinfo/ffmpeg-user



More information about the ffmpeg-user mailing list