Hi Moritz, Thanks a lot for your answer! I'm only replying now as I only had access to a software able to read files with KLV this morning.
On Thu, May 03, 2018 at 14:21:29 +0000, Claire Mantel wrote: >> I have a videostream with klv metadata that I want to edit while keeping the >> metadata. >> I'm wondering if it's possible with ffmpeg? >I assume you mean that which ffmpeg identifies as a KLV data stream? (I have >no knowledge of KLV, by the way.) Yes, KLV is a standard for encoding data (https://en.wikipedia.org/wiki/KLV) I believe it's quite commonly used in commercial UAVs (drones) to tag the video with info like timestamp, GPS coordinates and pitch, roll and yaw of the camera. >ffmpeg isn't even considering copying the data stream. By implementation, >ffmpeg by default extracts/maps exactly one of each type of stream (video, >audio, subtitles, data). >For data, I see the restriction "Data only if codec >id match" in the code, which I don't quite understand. >Anyway, you can either explicitly map both streams: > -map 0:v -map 0:d >or just ask ffmpeg to map all streams: > -map 0 I tried the first command and it works, so thanks a lot! (command ffmpeg -ss 00:02:15.0 -i video_out_2018_05_01_14_11_53.ts -c:v copy -c:d copy -map 0:v -map 0:d testCopy.ts) So I guess it means ffmpeg is able to tell which KLV data is associated with which frame as the editing also edited the KLV stream properly. I'm also trying to output the KLV data in some text file, I tried ffmpeg -i video_out_2018_05_01_14_11_53.ts -f ffmetadata testMetadata.txt ffmpeg -i video_out_2018_05_01_14_11_53.ts -map 0:d -f ffmetadata testMetadata.txt ffmpeg -i video_out_2018_05_01_14_11_53.ts -c:d copy -map 0:d -f ffmetadata testMetadata.txt but I only get " ;FFMETADATA1 encoder=Lavf58.13.100 [STREAM]" in my testMetadata.txt file Even though in the console output there is " Stream mapping: Stream #0:1 -> #0:0 (copy)" (complete console output below) Would you have any input? Thanks in advance! Claire Complete console of ffmpeg -i video_out_2018_05_01_14_11_53.ts -c:d copy -map 0:d -f ffmetadata testMetadata.txt ffmpeg version N-90926-gbad42e9b40 Copyright (c) 2000-2018 the FFmpeg developers built with gcc 7.3.0 (GCC) configuration: --enable-gpl --enable-version3 --enable-sdl2 --enable-bzlib --enable-fontconfig --enable-gnutls --enable-iconv --enable-libass --enable-libbluray --enable-libfreetype --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libtheora --enable-libtwolame --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libzimg --enable-lzma --enable-zlib --enable-gmp --enable-libvidstab --enable-libvorbis --enable-libvo-amrwbenc --enable-libmysofa --enable-libspeex --enable-libxvid --enable-libaom --enable-libmfx --enable-amf --enable-ffnvcodec --enable-cuvid --enable-d3d11va --enable-nvenc --enable-nvdec --enable-dxva2 --enable-avisynth libavutil 56. 18.100 / 56. 18.100 libavcodec 58. 19.100 / 58. 19.100 libavformat 58. 13.100 / 58. 13.100 libavdevice 58. 4.100 / 58. 4.100 libavfilter 7. 21.100 / 7. 21.100 libswscale 5. 2.100 / 5. 2.100 libswresample 3. 2.100 / 3. 2.100 libpostproc 55. 2.100 / 55. 2.100 [mpegts @ 00000224e8eb9f00] PES packet size mismatch Input #0, mpegts, from 'video_out_2018_05_01_14_11_53.ts': Duration: 00:08:14.40, start: 3600.000000, bitrate: 6676 kb/s Program 1 Stream #0:0[0x41]: Video: h264 (Constrained Baseline) (HDMV / 0x564D4448), yuv420p(progressive), 1280x720, 22.17 tbr, 90k tbn, 180k tbc Stream #0:1[0x42]: Data: klv (KLVA / 0x41564C4B) File 'testMetadata.txt' already exists. Overwrite ? [y/N] y Output #0, ffmetadata, to 'testMetadata.txt': Metadata: encoder : Lavf58.13.100 Stream #0:0: Data: klv (KLVA / 0x41564C4B) Stream mapping: Stream #0:1 -> #0:0 (copy) Press [q] to stop, [?] for help size= 0kB time=00:08:14.34 bitrate= 0.0kbits/s speed=13.8x video:0kB audio:0kB subtitle:0kB other streams:1727kB global headers:0kB muxing overhead: unknown _______________________________________________ ffmpeg-user mailing list [email protected] http://ffmpeg.org/mailman/listinfo/ffmpeg-user To unsubscribe, visit link above, or email [email protected] with subject "unsubscribe".
