Avidemux Forum

Avidemux => Main version 2.6 => Topic started by: M-Reimer on July 31, 2016, 03:45:04 PM

Title: How to cut DVB-S2 recording in TS format?
Post by: M-Reimer on July 31, 2016, 03:45:04 PM
I would like to cut a DVB-S2 recording. All I have is a bit TS file. I can open this with avidemux-gtk and the video stream plays, but without any audio. In the "Main Track" menu, no entries can be selected and if I open File -> Properties, there is no entry for Audio.

So for some reason the audio data is not detected.

I also tried to cut MPEG2 TS. This seems to work, but I can't choose two audio streams from the TS file. How to do this?
Title: Re: How to cut DVB-S2 recording in TS format?
Post by: eumagga0x2a on July 31, 2016, 03:52:52 PM
avidemux-gtk is long dead. Please use avidemux-qt from 2.6.10 on.
Title: Re: How to cut DVB-S2 recording in TS format?
Post by: M-Reimer on July 31, 2016, 04:11:10 PM
Thank you for your reply.

Compiling the latest release failed for me...


cd /home/manuel/tmp/pkgbuild/avidemux-2.6/src/avidemux_2.6.12/buildCore/ADM_coreUtils/src && /usr/bin/c++   -DADM_coreUtils6_EXPORTS -D_FILE_OFFSET_BITS=64 -D_LARGE_FILES -I/home/manuel/tmp/pkgbuild/avidemux-2.6/src/avidemux_2.6.12/buildCore/config -I/home/manuel/tmp/pkgbuild/avidemux-2.6/src/avidemux_2.6.12/avidemux_core/../avidemux_core -I/home/manuel/tmp/pkgbuild/avidemux-2.6/src/avidemux_2.6.12/avidemux_core/../avidemux_core/ADM_core/include -I/home/manuel/tmp/pkgbuild/avidemux-2.6/src/avidemux_2.6.12/avidemux_core/../avidemux_core/ADM_coreAudioFilter/include -I/home/manuel/tmp/pkgbuild/avidemux-2.6/src/avidemux_2.6.12/avidemux_core/../avidemux_core/ADM_coreAudioParser/include -I/home/manuel/tmp/pkgbuild/avidemux-2.6/src/avidemux_2.6.12/avidemux_core/../avidemux_core/ADM_coreAudio/include -I/home/manuel/tmp/pkgbuild/avidemux-2.6/src/avidemux_2.6.12/avidemux_core/../avidemux_core/ADM_coreAudioDevice/include -I/home/manuel/tmp/pkgbuild/avidemux-2.6/src/avidemux_2.6.12/avidemux_core/../avidemux_core/ADM_coreAudioEncoder/include -I/home/manuel/tmp/pkgbuild/avidemux-2.6/src/avidemux_2.6.12/avidemux_core/../avidemux_core/ADM_coreDemuxer/include -I/home/manuel/tmp/pkgbuild/avidemux-2.6/src/avidemux_2.6.12/avidemux_core/../avidemux_core/ADM_coreDemuxer/include/unix -I/home/manuel/tmp/pkgbuild/avidemux-2.6/src/avidemux_2.6.12/avidemux_core/../avidemux_core/ADM_coreDemuxerMpeg/include -I/home/manuel/tmp/pkgbuild/avidemux-2.6/src/avidemux_2.6.12/avidemux_core/../avidemux_core/ADM_coreImage/include -I/home/manuel/tmp/pkgbuild/avidemux-2.6/src/avidemux_2.6.12/avidemux_core/../avidemux_core/ADM_coreMuxer/include -I/home/manuel/tmp/pkgbuild/avidemux-2.6/src/avidemux_2.6.12/avidemux_core/../avidemux_core/ADM_coreScript/include -I/home/manuel/tmp/pkgbuild/avidemux-2.6/src/avidemux_2.6.12/avidemux_core/../avidemux_core/ADM_coreUI/include -I/home/manuel/tmp/pkgbuild/avidemux-2.6/src/avidemux_2.6.12/avidemux_core/../avidemux_core/ADM_coreUtils/include -I/home/manuel/tmp/pkgbuild/avidemux-2.6/src/avidemux_2.6.12/avidemux_core/../avidemux_core/ADM_coreVideoEncoder/include -I/home/manuel/tmp/pkgbuild/avidemux-2.6/src/avidemux_2.6.12/avidemux_core/../avidemux_core/ADM_coreVideoFilter/include -I/home/manuel/tmp/pkgbuild/avidemux-2.6/src/avidemux_2.6.12/avidemux_core/../avidemux_core/ADM_coreVideoCodec/include -I/home/manuel/tmp/pkgbuild/avidemux-2.6/src/avidemux_2.6.12/avidemux_core/../avidemux_core/ADM_coreImageLoader/include -I/home/manuel/tmp/pkgbuild/avidemux-2.6/src/avidemux_2.6.12/avidemux_core/../avidemux_core/ADM_coreJobs/include -I/home/manuel/tmp/pkgbuild/avidemux-2.6/src/avidemux_2.6.12/buildCore/ffmpeg/source -I/home/manuel/tmp/pkgbuild/avidemux-2.6/src/avidemux_2.6.12/buildCore/ffmpeg/build -I/home/manuel/tmp/pkgbuild/avidemux-2.6/src/avidemux_2.6.12/avidemux_core/ADM_coreUtils/src/../include -I/home/manuel/tmp/pkgbuild/avidemux-2.6/src/avidemux_2.6.12/avidemux_core/ADM_coreUtils/src/Source  -march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong --param=ssp-buffer-size=4 -fmessage-length=0 -fvisibility=hidden -fvisibility-inlines-hidden -O3 -DNDEBUG -fPIC   -Werror=attributes -o CMakeFiles/ADM_coreUtils6.dir/prefs.cpp.o -c /home/manuel/tmp/pkgbuild/avidemux-2.6/src/avidemux_2.6.12/avidemux_core/ADM_coreUtils/src/prefs.cpp
In file included from /home/manuel/tmp/pkgbuild/avidemux-2.6/src/avidemux_2.6.12/avidemux_core/ADM_coreUtils/src/prefs.cpp:51:0:
/home/manuel/tmp/pkgbuild/avidemux-2.6/src/avidemux_2.6.12/avidemux_core/ADM_coreUtils/src/prefs2_pref.h:60:1: error: narrowing conversion of ââ,¬Ëœ4294967295lââ,¬â,,¢ from ââ,¬Ëœlong intââ,¬â,,¢ to ââ,¬Ëœfloatââ,¬â,,¢ inside { } [-Wnarrowing]
};
^
make[2]: *** [ADM_coreUtils/src/CMakeFiles/ADM_coreUtils6.dir/build.make:474: ADM_coreUtils/src/CMakeFiles/ADM_coreUtils6.dir/prefs.cpp.o] Error 1
make[2]: Leaving directory '/home/manuel/tmp/pkgbuild/avidemux-2.6/src/avidemux_2.6.12/buildCore'
make[1]: *** [CMakeFiles/Makefile2:1434: ADM_coreUtils/src/CMakeFiles/ADM_coreUtils6.dir/all] Error 2
make[1]: Leaving directory '/home/manuel/tmp/pkgbuild/avidemux-2.6/src/avidemux_2.6.12/buildCore'
make: *** [Makefile:131: all] Error 2


How to fix this?
Title: Re: How to cut DVB-S2 recording in TS format?
Post by: eumagga0x2a on July 31, 2016, 04:24:01 PM
What distribution are you using? You might want to look at the patches in https://pkgs.rpmfusion.org/cgit/free/avidemux.git/tree/ (https://pkgs.rpmfusion.org/cgit/free/avidemux.git/tree/). You will need at least avidemux-2.6.12-narrowing.patch and avidemux-2.6.12-gcc6.patch. Applying avidemux-2.6.12-qt.patch won't harm too.

If you want qt5 instead of qt4, go for the current git master.
Title: Re: How to cut DVB-S2 recording in TS format?
Post by: zakk on August 01, 2016, 07:49:00 AM
You can do it with Project X. It won't even need to index the file.
Title: Re: How to cut DVB-S2 recording in TS format?
Post by: eumagga0x2a on August 01, 2016, 08:07:21 AM
DVB-S2 comprises presumably h264 encoded HD video which Project-X doesn't support.
Title: Re: How to cut DVB-S2 recording in TS format?
Post by: M-Reimer on August 01, 2016, 08:37:20 AM
And the next problem...


#####################################
Plugins Configure Started
#####################################

CMake Error at CMakeLists.txt:24 (include):
  include could not find load file:

    /home/manuel/tmp/pkgbuild/avidemux-git/src/avidemux/avidemux/commonCmakeApplication.cmake


-- CMAKE_INSTALL_PREFIX: /usr
-- AVIDEMUX_INSTALL_DIR: /usr
-- FAKEROOT                   : /home/manuel/tmp/pkgbuild/avidemux-git/src/fakeroot/
-- AVIDEMUX_BIN_DIR           : /usr/bin
-- AVIDEMUX_LIB_DIR           : /usr/lib
-- AVIDEMUX_INCLUDE_DIR       : /usr/include
-- AVIDEMUX_SEARCH_INCLUDE_DIR: /home/manuel/tmp/pkgbuild/avidemux-git/src/fakeroot//usr/include
-- AVIDEMUX_SEARCH_LIB_DIR    : /home/manuel/tmp/pkgbuild/avidemux-git/src/fakeroot//usr/lib
-- Plugin UI : COMMON

CMake Error at CMakeLists.txt:116 (APPEND_SUMMARY_LIST):
  Unknown CMake command "APPEND_SUMMARY_LIST".


-- Configuring incomplete, errors occurred!
See also "/home/manuel/tmp/pkgbuild/avidemux-git/src/build_core_plugins/CMakeFiles/CMakeOutput.log".


GIT-Version this time.
Title: Re: How to cut DVB-S2 recording in TS format?
Post by: eumagga0x2a on August 01, 2016, 08:42:53 AM
Bad timing.

git checkout 918d05a77880543321bb92e03d58d762cf3a43e9

and you go.
Title: Re: How to cut DVB-S2 recording in TS format?
Post by: Jan Gruuthuse on August 01, 2016, 08:50:06 AM
Quote from: zakk on August 01, 2016, 07:49:00 AM
You can do it with Project X. It won't even need to index the file.
Quote from: eumagga0x2a on August 01, 2016, 08:07:21 AM
DVB-S2 comprises presumably h264 encoded HD video which Project-X doesn't support.
Avidemux Wiki: Out of dates / Do not use (http://www.avidemux.org/admWiki/doku.php?id=build:doctop)
Title: Re: How to cut DVB-S2 recording in TS format?
Post by: eumagga0x2a on August 01, 2016, 08:50:45 AM
Which cmake version do you have? Starting with 2.8.7 you don't need fakeroot, and 2.8.7 is ancient.
Title: Re: How to cut DVB-S2 recording in TS format?
Post by: M-Reimer on August 01, 2016, 08:55:39 AM

$ cmake --version
cmake version 3.6.1

CMake suite maintained and supported by Kitware (kitware.com/cmake).


I compile using this script: https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=avidemux-git
It is meant to create three packages.
Title: Re: How to cut DVB-S2 recording in TS format?
Post by: Jan Gruuthuse on August 01, 2016, 09:05:56 AM
Commit causes problems: bbd7d73    [build] modular (as indicated by eumagga0x2a)
Commit  should build 918d05a    [i18n] More german translation by eumagga0x2a  (as indicated) previous postings

from within source folder (downloaded by git):
switch git to previous commit:
git checkout   918d05a
git reset --hard  918d05a


when commits are fine again switch back to master:
git checkout master
git reset --hard master
Title: Re: How to cut DVB-S2 recording in TS format?
Post by: M-Reimer on August 01, 2016, 09:41:17 AM
Thank you. This helped a bit, but I still can't cut my DVB-S2 recording.

On console, I get:


  [getCompressedPicture]  Frame 363981978 DTS is going back in time :  [getCompressedPicture]  expected:353:08:30,319   [getCompressedPicture]  got:00:06:03,979
  [getCompressedPicture]  Frame 364001978 DTS is going back in time :  [getCompressedPicture]  expected:353:08:30,319   [getCompressedPicture]  got:00:06:03,999
  [getCompressedPicture]  Frame 364021978 DTS is going back in time :  [getCompressedPicture]  expected:353:08:30,319   [getCompressedPicture]  got:00:06:04,019
  [getCompressedPicture]  Frame 364041978 DTS is going back in time :  [getCompressedPicture]  expected:353:08:30,319   [getCompressedPicture]  got:00:06:04,039
  [getCompressedPicture]  Frame 364061978 DTS is going back in time :  [getCompressedPicture]  expected:353:08:30,319   [getCompressedPicture]  got:00:06:04,059
  [getCompressedPicture]  Frame 364081978 DTS is going back in time :  [getCompressedPicture]  expected:353:08:30,319   [getCompressedPicture]  got:00:06:04,079
  [getCompressedPicture]  Frame 364101978 DTS is going back in time :  [getCompressedPicture]  expected:353:08:30,319   [getCompressedPicture]  got:00:06:04,099
  [getCompressedPicture]  Frame 364121978 DTS is going back in time :  [getCompressedPicture]  expected:353:08:30,319   [getCompressedPicture]  got:00:06:04,119
  [getCompressedPicture]  Frame 364141978 DTS is going back in time :  [getCompressedPicture]  expected:353:08:30,319   [getCompressedPicture]  got:00:06:04,139
  [getCompressedPicture]  Frame 364161978 DTS is going back in time :  [getCompressedPicture]  expected:353:08:30,319   [getCompressedPicture]  got:00:06:04,159
  [getCompressedPicture]  Frame 364181978 DTS is going back in time :  [getCompressedPicture]  expected:353:08:30,319   [getCompressedPicture]  got:00:06:04,179
  [getCompressedPicture]  Frame 364201978 DTS is going back in time :  [getCompressedPicture]  expected:353:08:30,319   [getCompressedPicture]  got:00:06:04,199
  [getCompressedPicture]  Frame 364221978 DTS is going back in time :  [getCompressedPicture]  expected:353:08:30,319   [getCompressedPicture]  got:00:06:04,219
  [getCompressedPicture]  Frame 364241978 DTS is going back in time :  [getCompressedPicture]  expected:353:08:30,319   [getCompressedPicture]  got:00:06:04,239
  [getCompressedPicture]  Frame 364261978 DTS is going back in time :  [getCompressedPicture]  expected:353:08:30,319   [getCompressedPicture]  got:00:06:04,259
  [getCompressedPicture]  Frame 364281978 DTS is going back in time :  [getCompressedPicture]  expected:353:08:30,319   [getCompressedPicture]  got:00:06:04,279
  [getCompressedPicture]  Frame 364301978 DTS is going back in time :  [getCompressedPicture]  expected:353:08:30,319   [getCompressedPicture]  got:00:06:04,299
  [getCompressedPicture]  Frame 364321978 DTS is going back in time :  [getCompressedPicture]  expected:353:08:30,319   [getCompressedPicture]  got:00:06:04,319
  [getCompressedPicture]  Frame 364341978 DTS is going back in time :  [getCompressedPicture]  expected:353:08:30,319   [getCompressedPicture]  got:00:06:04,339
  [getCompressedPicture]  Frame 364361978 DTS is going back in time :  [getCompressedPicture]  expected:353:08:30,319   [getCompressedPicture]  got:00:06:04,359
  [getCompressedPicture]  Frame 364381978 DTS is going back in time :  [getCompressedPicture]  expected:353:08:30,319   [getCompressedPicture]  got:00:06:04,379
  [getCompressedPicture]  Frame 364401978 DTS is going back in time :  [getCompressedPicture]  expected:353:08:30,319   [getCompressedPicture]  got:00:06:04,399
  [getCompressedPicture]  Frame 364421978 DTS is going back in time :  [getCompressedPicture]  expected:353:08:30,319   [getCompressedPicture]  got:00:06:04,419
  [getCompressedPicture]  Frame 364441978 DTS is going back in time :  [getCompressedPicture]  expected:353:08:30,319   [getCompressedPicture]  got:00:06:04,439
  [getCompressedPicture]  Frame 364461978 DTS is going back in time :  [getCompressedPicture]  expected:353:08:30,319   [getCompressedPicture]  got:00:06:04,459
  [getCompressedPicture]  Frame 364481978 DTS is going back in time :  [getCompressedPicture]  expected:353:08:30,319   [getCompressedPicture]  got:00:06:04,479
  [getCompressedPicture]  Frame 364501978 DTS is going back in time :  [getCompressedPicture]  expected:353:08:30,319   [getCompressedPicture]  got:00:06:04,499
  [getCompressedPicture]  Frame 364521978 DTS is going back in time :  [getCompressedPicture]  expected:353:08:30,319   [getCompressedPicture]  got:00:06:04,519
  [getCompressedPicture]  Frame 364541978 DTS is going back in time :  [getCompressedPicture]  expected:353:08:30,319   [getCompressedPicture]  got:00:06:04,539
  [getCompressedPicture]  Frame 364561978 DTS is going back in time :  [getCompressedPicture]  expected:353:08:30,319   [getCompressedPicture]  got:00:06:04,559
  [getCompressedPicture]  Frame 364581978 DTS is going back in time :  [getCompressedPicture]  expected:353:08:30,319   [getCompressedPicture]  got:00:06:04,579
  [getCompressedPicture]  Frame 364601978 DTS is going back in time :  [getCompressedPicture]  expected:353:08:30,319   [getCompressedPicture]  got:00:06:04,599
  [getCompressedPicture]  Frame 364621978 DTS is going back in time :  [getCompressedPicture]  expected:353:08:30,319   [getCompressedPicture]  got:00:06:04,619
  [switchToNextSegment]  This is the last segment (0)
  [getCompressedPicture]  Cannot update to new segment
  [getPacket]   Get packet failed   [saveLoop]  [FF] Wrote 2 frames, nb audio streams 3
  [saveLoop]  [FF] Found 0 missing PTS / 2 total frames
  [close]  [Mkv] Closing
  [~ADM_videoStreamCopyFromAnnexB]  Destroying AnnexB to iso filtet
  [~DIA_encodingQt4]  Destroying encoding qt4
  [~DIA_encodingBase]  DiaEncodingBase: Destroying


Then a message pops up telling me that the resulting video is too short.
Title: Re: How to cut DVB-S2 recording in TS format?
Post by: M-Reimer on August 01, 2016, 09:48:01 AM
In another forum thread, I found out that using MP4v2 Muxer might help: http://avidemux.org/smif/index.php/topic,10853.15.html

I tried that but it only saves a 8.2K file which doesn't contain any video.
Title: Re: How to cut DVB-S2 recording in TS format?
Post by: eumagga0x2a on August 01, 2016, 09:59:13 AM
Does this issue affect all DVB-S2 recordings from your source or only one particular? You did allow Avidemux to index the stream, didn't you? When cutting the stream in chunks with split, dd, whatever, do different chunks exhibit the same pattern?

I'm of no help what concerns hard internal problems of Avidemux, unfortunately.
Title: Re: How to cut DVB-S2 recording in TS format?
Post by: Jan Gruuthuse on August 01, 2016, 10:03:23 AM
Multi audio track? Switch position of audio track: Avidemux menu: Audio: Select track:
move ac3 track away from Track 1, or disable that track, see if that helps.
Or re-mux that video with mkvtoolnixgui, sometimes this helps too.
Title: Re: How to cut DVB-S2 recording in TS format?
Post by: M-Reimer on August 03, 2016, 02:50:37 PM
I now even tried with all audio tracks disabled. Still impossible to cut.

I'll try another recording from the same TV channel as soon as possible.

Are there any developers here in this forum? Would it help if I split a small piece and upload this so a developer can debug this issue?
Title: Re: How to cut DVB-S2 recording in TS format?
Post by: Jan Gruuthuse on August 03, 2016, 03:02:12 PM
see if you can make a 10 seconds recording? 50 MB to 100 MB and upload. Dev(s) can look if there is an issue.
ps:- Use a free: dropbox account, mega, https://www.wetransfer.com/ or similar webservice (free public access, without registration to download your uploaded video) thank you.

http://www.avidemux.org/admWiki/doku.php?id=tutorial:cut_ts_sample
Title: Re: How to cut DVB-S2 recording in TS format?
Post by: eumagga0x2a on August 03, 2016, 05:41:03 PM
Quote from: M-Reimer on August 03, 2016, 02:50:37 PM
I now even tried with all audio tracks disabled. Still impossible to cut.

Please try it with a short (~100 MiB) sample cut out of the stream (not from the beginning, not from the end) like

dd if=/path/to/the/stream.ts of=/path/to/the/sample.ts bs=1M skip=500 count=100

(adjust the values for skip and count as you see fit) as well.

QuoteAre there any developers here in this forum?

Yes, mean (http://avidemux.org/smif/index.php?action=profile;u=3), the owner of the project and as it seems the only developer who currently works on the backend, and ajschult (http://avidemux.org/smif/index.php?action=profile;u=11625).
Title: Re: How to cut DVB-S2 recording in TS format?
Post by: M-Reimer on August 04, 2016, 09:17:15 AM
I've created a 40MB sample according to your instructions. This is now from a different recording from the same channel, so the problem is not limited to one recording.

https://we.tl/RiFtZoi2u2

I'm really looking forward to what the devs find out about this file. And I really hope the problem can be reproduced and is not limited to my system...
Title: Re: How to cut DVB-S2 recording in TS format?
Post by: Jan Gruuthuse on August 04, 2016, 10:12:14 AM
The video seems fine to me.
With copy for both Audio and Video
Setting marker [A ] @ 00:00:01.020
Setting marker [ B] @ 00:00:06.180
I can save with mp4v2 or mp4 Muxer this part (partSaved)
When I cut this marked piece out, I can still save the remaining video with both mp4v2 or mp4 Muxer (TestRemainingSaved)

tested with todays build ubuntu 14.04.5 64-bit QT4 6cd247a    [i18n] Sort language + remove bad russian i18n entry (eumagga0x2a)

git checkout master
git reset --hard master
git pull


https://www.dropbox.com/s/vwkob3ryhhpmz04/TestPartSaved.mp4?dl=0
https://www.dropbox.com/s/xi2ow3lb17xw4dn/TestRemainingSaved.mp4?dl=0
https://www.dropbox.com/s/uwczkzynxnh22yi/TestPartSavedv2.mp4?dl=0
https://www.dropbox.com/s/g6weeioe62iv8gs/TestRemainingSavedv2.mp4?dl=0

v2 is with mp4v2 muxer otherwise mp4 muxer.
Title: Re: How to cut DVB-S2 recording in TS format?
Post by: eumagga0x2a on August 04, 2016, 12:59:47 PM
WFM too, despite a couple of warnings

[AudioStream] Warning skew in dts =-633634,
[AudioStream] Warning skew lastDts=00:00:06,140
[AudioStream] Warning skew newDts=00:00:05,506 


in the console while saving. The resulting MKV

mplayer -identify -frames 0 test.mkv
MPlayer SVN-r37881-6.1.1 (C) 2000-2016 MPlayer Team

Playing test.mkv.
libavformat version 57.44.100 (internal)
libavformat file format detected.
[h264 @ 0x56379d2a76e0]Increasing reorder buffer to 1
[h264 @ 0x56379d2a76e0]Increasing reorder buffer to 2
ID_VIDEO_ID=0
[lavf] stream 0: video (h264), -vid 0
ID_AUDIO_ID=0
ID_AID_0_LANG=deu
[lavf] stream 1: audio (mp2), -aid 0, -alang deu
ID_AUDIO_ID=1
ID_AID_1_LANG=deu
[lavf] stream 2: audio (ac3), -aid 1, -alang deu
VIDEO:  [H264]  1280x720  0bpp  50.000 fps    0.0 kbps ( 0.0 kbyte/s)
==========================================================================
Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family
libavcodec version 57.51.100 (internal)
Selected video codec: [ffh264] vfm: ffmpeg (FFmpeg H.264)
==========================================================================
ID_VIDEO_CODEC=ffh264
Clip info:
ENCODER: Lavf57.25.100
ID_CLIP_INFO_NAME0=ENCODER
ID_CLIP_INFO_VALUE0=Lavf57.25.100
ID_CLIP_INFO_N=1
Load subtitles in ./
ID_FILENAME=test.mkv
ID_DEMUXER=lavfpref
ID_VIDEO_FORMAT=H264
ID_VIDEO_BITRATE=0
ID_VIDEO_WIDTH=1280
ID_VIDEO_HEIGHT=720
ID_VIDEO_FPS=50.000
ID_VIDEO_ASPECT=0.0000
ID_AUDIO_FORMAT=80
ID_AUDIO_BITRATE=256000
ID_AUDIO_RATE=48000
ID_AUDIO_NCH=2
ID_START_TIME=0.01
ID_LENGTH=13.86
ID_SEEKABLE=1
ID_CHAPTERS=0
==========================================================================
Opening audio decoder: [mpg123] MPEG 1.0/2.0/2.5 layers I, II, III
AUDIO: 48000 Hz, 2 ch, s16le, 256.0 kbit/16.67% (ratio: 32000->192000)
ID_AUDIO_BITRATE=256000
ID_AUDIO_RATE=48000
ID_AUDIO_NCH=2
Selected audio codec: [mpg123] afm: mpg123 (MPEG 1.0/2.0/2.5 layers I, II, III)
==========================================================================
AO: [pulse] 48000Hz 2ch s16le (2 bytes per sample)
ID_AUDIO_CODEC=mpg123
Starting playback...


Exiting... (End of file)
ID_EXIT=EOF


plays fine both with the ac3 and mp2 audio.
Title: Re: How to cut DVB-S2 recording in TS format?
Post by: M-Reimer on August 04, 2016, 01:35:42 PM
OK. If I try what you did, then this works for me, too.

What I did so far: I selected a part of the recording using "Mark A" and "Mark B" and killed these parts using "Entf".

After doing my cuts (I only want to have the stuff that is still left and everything else was killed using "Entf") I wanted to Save this result.

I don't know if this workflow should work the way I'm trying to do, but this is what I do:

- Open the test.ts file and go to 00:01.020
- Set a "B" mark here, hit "Entf" (cutted out leading part)
- Now go to 00:18.960
- Set a "A" mark here, hit "Entf" (cutted out trailing part)

The leftover part is what I want to save to MKV. Trying to do so fails always for me.
Even trying to set an "A" mark to the beginning and a "B" mark to the end fails.

Yes, in this simple example I could have set "A" to 00:01.020 and "B" to 00:18.960 but there are more difficult cases. Sometimes I want to cut out several commercial breaks and I don't know how I should do this without deleting parts.
Title: Re: How to cut DVB-S2 recording in TS format?
Post by: eumagga0x2a on August 04, 2016, 02:45:20 PM
Quote from: M-Reimer on August 04, 2016, 01:35:42 PM
OK. If I try what you did, then this works for me, too.

Well, this is the usual way to cut off the leading and the trailing part of a stream.

QuoteWhat I did so far: I selected a part of the recording using "Mark A" and "Mark B" and killed these parts using "Entf".

WFM as far as the cut doesn't begin at the start of a stream and doesn't end at the end.

QuoteAfter doing my cuts (I only want to have the stuff that is still left and everything else was killed using "Entf") I wanted to Save this result.

I don't know if this workflow should work the way I'm trying to do, but this is what I do:

- Open the test.ts file and go to 00:01.020
- Set a "B" mark here, hit "Entf" (cutted out leading part)

WFM if I save the MKV after this step and stop here.

Quote- Now go to 00:18.960
- Set a "A" mark here, hit "Entf" (cutted out trailing part)

The leftover part is what I want to save to MKV. Trying to do so fails always for me.

After this step Avidemux crashes:

Assert failed :_currentSegment==segNo
at line 461, file /home/eumagga/avidemux/git/avidemux2/avidemux/qt4/common/ADM_editor/src/ADM_edRender.cppADM_backTrack
ADM_Composer::samePicture(ADMImage*)
admPreview::samePicture()
GUI_GoToTime(unsigned long)
HandleAction(Action)
QMetaObject::activate(QObject*, int, int, void**)
MainWindow::actionSignal(Action)
MainWindow::searchMenu(QAction*, MenuEntry*, int)
QMetaObject::activate(QObject*, int, int, void**)
QMenu::triggered(QAction*)


QMetaObject::activate(QObject*, int, int, void**)
QAction::triggered(bool)
QAction::activate(QAction::ActionEvent)
QAction::event(QEvent*)
QApplicationPrivate::notify_helper(QObject*, QEvent*)
QApplication::notify(QObject*, QEvent*)
QCoreApplication::notifyInternal2(QObject*, QEvent*)
QShortcutMap::dispatchEvent(QKeyEvent*)
QShortcutMap::tryShortcut(QKeyEvent*)
QWindowSystemInterface::handleShortcutEvent(QWindow*, unsigned long, int, QFlags<Qt::KeyboardModifier>, unsigned int, unsigned int, unsigned int, QString const&, bool, unsigned short)
QGuiApplicationPrivate::processKeyEvent(QWindowSystemInterfacePrivate::KeyEvent*)
QGuiApplicationPrivate::processWindowSystemEvent(QWindowSystemInterfacePrivate::WindowSystemEvent*)
QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>)

g_main_context_dispatch

g_main_context_iteration
QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>)


Befor that it prints

[seektoTime]  seekToFrame failed for frame at PTS= 24590 ms, next image failed
  [goToTimeVideo]  Cannot seek to beginning of segment 41166416 at  24590 ms


in the console.

QuoteEven trying to set an "A" mark to the beginning and a "B" mark to the end fails.

WFM

QuoteYes, in this simple example I could have set "A" to 00:01.020 and "B" to 00:18.960 but there are more difficult cases. Sometimes I want to cut out several commercial breaks and I don't know how I should do this without deleting parts.

Actually deleting parts always worked for me, but I never had to do this with HD video.
Title: Re: How to cut DVB-S2 recording in TS format?
Post by: Jan Gruuthuse on August 04, 2016, 02:47:20 PM
Perhaps try other way around:
Quote- Now go to 00:18.960
- Set a "A" mark here, hit "Entf" (cutted out trailing part)
- set mark [A] @ 00:01.020
- cut  "Entf" (00:00:00.00 to 00:00:01.020) is gone now.
- go to 00:18.960
- mark [ B] (assuming you don't want anything beyond 18.960)
- save video (you should now have saved clean part 00:00:00.000 to 00:00:18.960)


see YouTube video demo: Fast Edit with Copy Mode (https://www.youtube.com/watch?v=avs5AvlSq4Y)
Title: Re: How to cut DVB-S2 recording in TS format?
Post by: Jan Gruuthuse on August 04, 2016, 02:55:52 PM
I Think by cutting this way at the end, the reference points no longer match @ the end (idx2 file)
mark [A ] @ 18.960 and cut to the end (the end is no longer defined correctly)

Title: Re: How to cut DVB-S2 recording in TS format?
Post by: eumagga0x2a on August 04, 2016, 02:59:02 PM
The question is how to handle multiple cuts. I'd test a two-phase strategy: set A where the output should start and B where it should end. Save this to a mkv container as an intermediary step. Now perform further cuts within this mkv.

I do hope that the project owner will look into this crash.
Title: Re: How to cut DVB-S2 recording in TS format?
Post by: Jan Gruuthuse on August 04, 2016, 03:05:07 PM
QuoteThe question is how to handle multiple cuts
I do these regularly and from the same source (astra 19.2Ã,°E German public broadcast)
Check the youtube video 'Fast Edit with Copy Mode' from previous post.

Quote from: eumagga0x2a on August 04, 2016, 12:59:47 PM
WFM too, despite a couple of warnings

[AudioStream] Warning skew in dts =-633634,
[AudioStream] Warning skew lastDts=00:00:06,140
[AudioStream] Warning skew newDts=00:00:05,506

You might try a rebuild from scratch:
Quote from: mean on August 03, 2016, 03:14:03 PM
1- I have that from time to time, just recompiling *everything* from scratch makes it go away
I suspect mismatched binaries

2- I think it is leaking VDPAU buffer at the moment. After a while, it will crash due to no more buffers

for skew: Delete downloaded avidemux git and download avidemux git new. (1)
Sometimes, power down the PC and start fresh (2)
Don't forget to delete matching .idx2 files.
Title: Re: How to cut DVB-S2 recording in TS format?
Post by: M-Reimer on August 04, 2016, 06:03:09 PM
I did a full recompile and still have the same problem... Maybe the reason is, that Arch Linux uses always the latest versions? From other projects I know that, for example, FFMPEG breaks their API every few releases...


  [getCompressedPicture]  Frame 19021978 DTS is going back in time :  [getCompressedPicture]  expected:353:08:30,319   [getCompressedPicture]  got:00:00:19,019
  [getCompressedPicture]  Frame 19041978 DTS is going back in time :  [getCompressedPicture]  expected:353:08:30,319   [getCompressedPicture]  got:00:00:19,039
  [getCompressedPicture]  Frame 19061978 DTS is going back in time :  [getCompressedPicture]  expected:353:08:30,319   [getCompressedPicture]  got:00:00:19,059
  [getCompressedPicture]  Frame 19081978 DTS is going back in time :  [getCompressedPicture]  expected:353:08:30,319   [getCompressedPicture]  got:00:00:19,079
  [getCompressedPicture]  Frame 19101978 DTS is going back in time :  [getCompressedPicture]  expected:353:08:30,319   [getCompressedPicture]  got:00:00:19,099
  [getCompressedPicture]  Frame 19121978 DTS is going back in time :  [getCompressedPicture]  expected:353:08:30,319   [getCompressedPicture]  got:00:00:19,119
  [getCompressedPicture]  Frame 19141978 DTS is going back in time :  [getCompressedPicture]  expected:353:08:30,319   [getCompressedPicture]  got:00:00:19,139
  [getCompressedPicture]  Frame 19161978 DTS is going back in time :  [getCompressedPicture]  expected:353:08:30,319   [getCompressedPicture]  got:00:00:19,159
  [switchToNextSegment]  This is the last segment (0)
  [getCompressedPicture]  Cannot update to new segment
  [getPacket]   Get packet failed   [saveLoop]  [FF] Wrote 5 frames, nb audio streams 3
  [saveLoop]  [FF] Found 0 missing PTS / 5 total frames
[ffTS] Closing
[~DIA_encodingQt4]  Destroying encoding qt4
  [~DIA_encodingBase]  DiaEncodingBase: Destroying


Edit: I tried to cut the way as described in the Youtube video. This doesn't work either. If I cut something from the start and then just set a "B-Mark" to the end, I still have exactly the same error. *BUT* the error is gone and the result is OK as soon as I move the start one I-Frame to the right. So something seems to be wrong with the start position... In other words: I should be able to do my cutting if I place my first cut one frame to the left, so I'm able to move the mark one to the right for saving. Clearly not the way it was intended, but the only way it works for me... :'(
Title: Re: How to cut DVB-S2 recording in TS format?
Post by: eumagga0x2a on August 04, 2016, 06:18:36 PM
Quote from: M-Reimer on August 04, 2016, 06:03:09 PM
I did a full recompile and still have the same problem...

This advice applied to me ;)

QuoteFrom other projects I know that, for example, FFMPEG breaks their API every few releases...

Avidemux uses a bundled, heavily patched version of FFmpeg.

Quote
  [getCompressedPicture]  Frame 19021978 DTS is going back in time :  [getCompressedPicture]  expected:353:08:30,319   [getCompressedPicture]  got:00:00:19,019
  [getCompressedPicture]  Frame 19041978 DTS is going back in time :  [getCompressedPicture]  expected:353:08:30,319   [getCompressedPicture]  got:00:00:19,039
  [getCompressedPicture]  Frame 19061978 DTS is going back in time :  [getCompressedPicture]  expected:353:08:30,319   [getCompressedPicture]  got:00:00:19,059
  [getCompressedPicture]  Frame 19081978 DTS is going back in time :  [getCompressedPicture]  expected:353:08:30,319   [getCompressedPicture]  got:00:00:19,079
  [getCompressedPicture]  Frame 19101978 DTS is going back in time :  [getCompressedPicture]  expected:353:08:30,319   [getCompressedPicture]  got:00:00:19,099
  [getCompressedPicture]  Frame 19121978 DTS is going back in time :  [getCompressedPicture]  expected:353:08:30,319   [getCompressedPicture]  got:00:00:19,119
  [getCompressedPicture]  Frame 19141978 DTS is going back in time :  [getCompressedPicture]  expected:353:08:30,319   [getCompressedPicture]  got:00:00:19,139
  [getCompressedPicture]  Frame 19161978 DTS is going back in time :  [getCompressedPicture]  expected:353:08:30,319   [getCompressedPicture]  got:00:00:19,159
  [switchToNextSegment]  This is the last segment (0)
  [getCompressedPicture]  Cannot update to new segment
  [getPacket]   Get packet failed   [saveLoop]  [FF] Wrote 5 frames, nb audio streams 3
  [saveLoop]  [FF] Found 0 missing PTS / 5 total frames
[ffTS] Closing
[~DIA_encodingQt4]  Destroying encoding qt4
  [~DIA_encodingBase]  DiaEncodingBase: Destroying


Did you try to cut the stream the other (not yours ;)) way?
Title: Re: How to cut DVB-S2 recording in TS format?
Post by: M-Reimer on August 04, 2016, 06:23:24 PM
Quote from: eumagga0x2a on August 04, 2016, 06:18:36 PM
Did you try to cut the stream the other (not yours ;)) way?

Yes (see my edit to my last post).

I can do a clean cut if the first position (A-Mark) is not the start of the stream. I have to go to the video start, move one I-Frame to the right and set an A-Mark there. If I do so, the error is gone.
Title: Re: How to cut DVB-S2 recording in TS format?
Post by: M-Reimer on August 04, 2016, 06:33:41 PM
If I just open the "test.ts" file, I've uploaded, and only set a "B-mark", then I can save this to disc. So I can directly cut something from the end.

If I cut something from the start, first (Set B-mark and hit "Del") and then set a B-Mark somewhere near the end to save from the new start to this B-mark, then I get the error.

If I cut something from within the video, then I get ugly artefacts as soon as this position is reached. Maybe something wrong at this cut-position, too?
Title: Re: How to cut DVB-S2 recording in TS format?
Post by: eumagga0x2a on August 04, 2016, 06:44:57 PM
I'm sorry, I didn't notice your edit prior to answering.

Well, it is as good as it gets for now :)

Quote from: M-Reimer on August 04, 2016, 06:33:41 PMIf I cut something from within the video, then I get ugly artefacts as soon as this position is reached. Maybe something wrong at this cut-position, too?

Do you cut at I-frames only? You could test if reverting https://github.com/mean00/avidemux2/commit/a1806d3a332c44def79e28a25b411104a13b19a9 (https://github.com/mean00/avidemux2/commit/a1806d3a332c44def79e28a25b411104a13b19a9) has any effect.
Title: Re: How to cut DVB-S2 recording in TS format?
Post by: Jan Gruuthuse on August 05, 2016, 04:33:58 AM
1)@M-Reimer
Upon loading the video into avidemux this passes along in the terminal window:
" [seektoTime]  Cannot decode up to intra 0 at 40 ms
  [switchToSegment]  Cannot seek to beginning of segment 0 at  40 ms
"
Do notice the time bottom left hand corner! see screenshot.

At the begin I nver set marker [A ] when I need to cut Lead-in of video.
Goto end of leadin video and only mark [ B] (end segment)
-----------------------------------------------------------------
2)@mean & @eumagga0x2a
Wow this is weird, the procedure now seems to work only with mp4v2. Is really not working, saves only 191.9 kB file.
No longer works with mp4 nor with .ts muxer
Seems I'm stretching the use of Ubuntu 14.04.5 amd64 to much (mesa - vdpau issues)
checking if the issue is there on 16.04.1 or not: issue exists on 16.04.1 too.
Title: Re: How to cut DVB-S2 recording in TS format?
Post by: Jan Gruuthuse on August 05, 2016, 04:57:03 AM
same issue on 16.04.1
both tested with: 6cd247a    [i18n] Sort language + remove bad russian i18n entry (eumagga0x2a)
I think, QT5 build is not showing build Info:

As for now, I have no clue why this is happening, you would say the video file is degraded somehow? Downloaded new, and they're the same.
Title: Re: How to cut DVB-S2 recording in TS format?
Post by: Jan Gruuthuse on August 05, 2016, 05:26:34 AM
@mean & @eumagga0x2a
Did a rebuild with commit: a1806d3    [editor] Try to not drop bframes that will be used later as reference
can not edit and save with ts-muxer? Don't understand what is going on, for now.
Title: Re: How to cut DVB-S2 recording in TS format?
Post by: mean on August 05, 2016, 06:01:36 AM
Thanks, i can reproduce the problem
Title: Re: How to cut DVB-S2 recording in TS format?
Post by: mean on August 06, 2016, 07:07:11 AM
Should be better now
Title: Re: How to cut DVB-S2 recording in TS format?
Post by: Jan Gruuthuse on August 06, 2016, 07:49:55 AM
Yes, working again as before with muxer: ts, mp4, mp4v2
Title: Re: How to cut DVB-S2 recording in TS format?
Post by: M-Reimer on August 08, 2016, 10:10:41 AM
Works for me, too. Still a bit artefacts at the cut position, but much better and now files are saved without error.

Is there any chance to get the subtitles in the resulting file? If my source is "TS" and the target is "TS", then it shouldn't be a too big deal, right?