Commit Graph

467 Commits

Author SHA1 Message Date
Dan Bryant 865390552a swap out OBS_USER -n OBS trigger script 2021-05-10 21:33:53 +01:00
jcdr428 f6ab2a2a89 Limit number of pos or neg pics (#413)
Early abort when num_negative_pics or nb_positive_pics > 64 (max number of ref. frames).

Fixes #411
nightly-2021-04-30-02-13-20
2021-04-29 11:48:28 +02:00
jcdr428 0a86fc4dc6 Avoid memory overflow when m_bufEnd not set (#412)
Fixes #409
2021-04-29 11:43:28 +02:00
Daniel Kamil Kozar a50c2c5a16 README.md now points to GitHub's nightly releases nightly-2021-02-13-01-46-27 2021-02-12 18:22:40 +01:00
Daniel Kamil Kozar 72965ae819 OBS_USER is no longer a secret 2021-02-12 18:15:02 +01:00
Daniel Kamil Kozar de28c9e694 Use fetch-depth 0 for the nightly-check checkout
actions/checkout doesn't fetch tags by default, so we have no way of knowing if HEAD points at the latest 'nightly' tag.
nightly-2021-02-11-19-43-56
2021-02-10 08:52:18 +01:00
Daniel Kamil Kozar 4098d03067 Nightlies on GitHub (#399)
Rework the nightly actions workflow in order to store nightlies in GitHub.

Fixes #397.
2021-02-08 18:12:01 +01:00
jcdr428 7c7662f253 Gitignore for Visual Studio (#400) 2021-02-07 21:50:40 +01:00
Daniel Kamil Kozar 16a9c2885d Fix another non-array delete on an array
Arrays should generally be deleted with delete[]. Also, this operator's behaviour (as well as the normal delete's) is well defined on null pointers (it's a no-op), so the if is totally needless.
nightly-2021-02-04-01-46-17
2021-02-04 00:49:50 +01:00
Daniel Kamil Kozar 0821aa6315 Fix an invalid delete error in vc1Parser.h (#396)
The m_nalBuffer member was incremented in the loop while copying, which naturally led to the pointer being invalid when the destructor is executed in order to delete the array. The code was replaced with an equivalent std::copy call.
Also, replaced the invalid delete with delete[].
Fixes #395.
2021-02-03 20:29:05 +01:00
Daniel Kamil Kozar c515350d00 Bring back the timestamp to the nightly version nightly-2021-01-24-02-52-22 2021-01-23 19:28:31 +01:00
Daniel Kamil Kozar e9cd9f33c4 Use GitHub Actions syntax to skip nightly builds 2021-01-23 18:07:59 +01:00
nu774 444613d2a2 tsMuxerGUI CMakeLists fixes (#394) 2021-01-23 15:55:23 +01:00
Daniel Kamil Kozar cb1e0bfe67 vcs_tag is returned only for publishers 2021-01-22 16:46:58 +01:00
Daniel Kamil Kozar 5a9adef339 Use the version's 'vcs_tag' attribute to determine its commit SHA 2021-01-22 16:44:16 +01:00
Daniel Kamil Kozar 0edd5c2d28 Hopefully fix commit.txt not being updated on Bintray (#393)
Bintray builds have been created every night since the 5th of December. Not only
is this caused by a runaway "0" at the end of the line responsible for updating
the commit.txt file (oh, those long lines!), but Bintray has been returning the
200 OK code when attempting an update of the file despite also returning an
error and the file not actually being updated :

{"message":"Version 'latest' has been published for more than 365 days. Files can only be uploaded to a version within 365 days from its publish date."}

Hopefully, creating a version in the "commit" package with the same version as
the nightlies will solve this problem.
2021-01-22 16:11:41 +01:00
jcdr428 542c1c7085 Fix signed/unsigned mismatch in FFMAX (#392) 2021-01-22 15:13:39 +01:00
jcdr428 0076a071f1 Fix signed/unsigned mismatch warning messages (#385) nightly-2021-01-15 2021-01-14 18:59:58 +01:00
jcdr428 00caad02ea Fix max value of log2_max_mv_length (#391)
H264 standard states "log2_max_mv_length_horizontal and log2_max_mv_length_vertical indicate the maximum absolute value of a decoded horizontal and vertical motion vector component, respectively, in ¼ luma sample units, for all pictures in the coded video sequence. [ ] The value of log2_max_mv_length_horizontal shall be in the range of 0 to 15, inclusive. The value of log2_max_mv_length_vertical shall be in the range of 0 to 15, inclusive".

However some hardware decoders seem to produce log2_max_mv_length with values of 16.
nightly-2021-01-11
2021-01-10 23:13:19 +01:00
Richard e6b1ed8ebe CMake tweaks to make the project more linux packager friendly (#384)
* CMake tweaks to make the project more linux packager friendly

- Add install target for tsMuxerGUI
- Add install for contributed desktop file
- Install icon for desktop file
- Don't check for C when all sources are C++.
nightly-2020-12-28
2020-12-27 20:53:53 +01:00
jcdr428 e40278e163 Fix HevcHdrUnit declaration (#387) 2020-12-27 20:43:22 +01:00
Daniel Kamil Kozar 4f21320a68 Fix warnings in file_unix.cpp (#383)
Long overdue fixes to the warnings in file_unix.cpp. Also, move the POSIX-exclusive fcntl.h include from file.h to file_unix.cpp and remove MSVC warning suppression related to exception specifications, which were also removed as they have been deprecated since C++11.
nightly-2020-12-22
2020-12-21 00:22:24 +01:00
jcdr428 c1a1328560 Avoid bitstream exceptions in AVC deserializer (#382)
* When parsing a stream other than AVC with the AVC deserializer, allow early return and avoid false AVC detection.

* Solve signed/unsigned mismatch in comparisons
2020-12-20 23:02:56 +01:00
jcdr428 88628558da Avoid false detection of HEVC part 2 (#381) nightly-2020-12-20 2020-12-19 00:15:54 +01:00
jcdr428 d114b772e5 Avoid false detection of HEVC (#380) nightly-2020-12-17 2020-12-16 20:16:36 +01:00
Daniel Kamil Kozar 943a73548e Prefer the currently entered file name when opening the browse dialog (#378)
Previous versions used the "last output directory" when opening the "Browse"
dialog in the main window, using the current "File name" only if the "last
output directory " is not yet defined. This change reverses this, which means
that the folder of the path currently entered as the "File name" will be used
as the folder to display. The file name will be carried over to the dialog.

Fixes #372 .
nightly-2020-12-09
2020-12-08 22:56:27 +01:00
i6henl bfeee07d6d Add Chinese translation (#376) 2020-12-05 19:59:33 +01:00
Daniel Kamil Kozar c6fe17b4f0 Make bintray_nightly_check.sh executable 2020-12-05 02:36:54 +01:00
Daniel Kamil Kozar 0911fe7002 Mixed up cron syntax in the Mac nightly workflow 2020-12-05 02:33:57 +01:00
Daniel Kamil Kozar 5a96e94cfe Use the native MacOS build as the nightly build uploaded to Bintray (#375) 2020-12-05 01:22:20 +01:00
Daniel Kamil Kozar 999c47238d Update README.md nightly-2020-11-17--01-21-46 2020-11-16 18:07:44 +01:00
Daniel Kamil Kozar 5e7ca8ac25 Update COMPILING.md nightly-2020-11-05--01-21-49 2020-11-04 19:12:31 +01:00
Daniel Kamil Kozar 2d378f2603 Rework conditions based on object names of UI components (#362)
Pointers to widgets can be simply compared directly against the pointers in the
UI struct, which is admittedly less fragile than relying on object names for the
same purpose.
nightly-2020-10-07--02-32-42
2020-10-06 20:21:18 +02:00
Daniel Kamil Kozar 9cb0246445 Update track order in metafile when moving up and down (#361) 2020-10-06 19:23:26 +02:00
Daniel Kamil Kozar 03ecfba796 Store the window size when closing the program (#359) nightly-2020-10-06--02-30-59 2020-10-05 03:49:44 +02:00
jcdr428 32db2aa826 Revert to DV version 1 (#355)
Commit #351 corrects the Mediainfo "8 compatible" to "Blu-ray compatible", however the Blu-ray players (eg Sony x700) do not detect anymore Dolby Vision after the change:
see https://forum.doom9.net/showthread.php?p=1924124#post1924124

So this patch reverts DV version to previous v1 -we have to live with the Mediainfo "8 compatible" until we can have more info on the v2 descriptor structure and players compatibility.
nightly-2020-09-25--02-25-44
2020-09-24 22:47:13 +02:00
Daniel Kamil Kozar 35b4f58725 Make SEIUnit::m_processedMessages an unordered_set (#353)
m_processedMessages is never used in a context where the ordering of the elements matter, so it makes it a perfect candidate for converting to std::unordered_set.
nightly-2020-09-23--02-23-55
2020-09-22 22:16:28 +02:00
jcdr428 0440dc0f0f Keep non timing SEIs (#352)
With the H264 option 'Insert SEI and VUI data if absent' or 'Always rebuild SEI and VUI data':
In case timing SEIs are not found, all SEIs (timing and non timing) are currently removed nd replaced with timing SEIs.

This patch corrects this: only the timing SEIs are removed, the non-timing SEIs (such as private date e.g. x264 decoding parameters) are kept.
2020-09-22 22:04:08 +02:00
jcdr428 5ad13c99f2 Correct DV descriptor (#351)
See https://forum.doom9.net/showthread.php?p=1924053#post1924053 : from the ffmpeg and mediainfo codes, the Dolby spec version 1 seems to be incorrect: the compatibility id should be before the dependency_pid, and this has been corrected in version 2.
2020-09-22 07:55:43 +02:00
jcdr428 e7133f9551 Fix various compiler warnings (#348) nightly-2020-09-20--02-24-10 2020-09-19 22:36:11 +02:00
jcdr428 6fb457b961 [bug] delay in audio tracks (#347)
Audio delay bug introduced by #337 patch.

Fixes issue #346 .
2020-09-19 22:35:08 +02:00
jcdr428 2881c01eb4 Initialize VUI variables (#345)
I declared these variables in patch #344, better to initialize them.
nightly-2020-09-19--02-23-22
2020-09-18 20:18:12 +02:00
jcdr428 b9763ea5d8 Changes to Dolby Vision profiles (#344)
As per Dolby whitebook, VUI parameters in the stream are compulsory for profiles 5, 8.1 and 8.4 but are optional for the other profiles.
Detection of profiles is re-written to account for the cases where there VUI parameters are unspecified.
2020-09-18 16:58:25 +02:00
jcdr428 0a74c08529 [bug] Detection of coded fields (#343)
In case coded field is detected (i.e. the picture is composed of a top field and a bottom field), the incrementation of the poc (coded picture order count) must be done every two frames.
However the detection of the coded filed in tsMuxer is wrong: 
frame_mbs_only_flag = 1 means that the picture is coded frame.
frame_mbs_only_flag = 0 means that the picture can be either coded frame (m_field_pic_flag = 0) or coded field (m_field_pic_flag = 1).

This patch corrects the bug, and solves issue #306 .
2020-09-18 12:28:25 +02:00
Daniel Kamil Kozar 1d35df5b08 Try to fix default audio/subtitle track combo boxes' track descriptions (#342)
updateTracksComboBox() was called after the indices are updated, but before the
row being removed is actually removed from the trackLV structure. This caused
the new generated track descriptions to refer to invalid tracks.
nightly-2020-09-18--02-23-09
2020-09-18 01:23:23 +02:00
Daniel Kamil Kozar 304cb687f1 Allow selecting multiple files also when clicking "join" (#341) 2020-09-18 00:19:53 +02:00
Daniel Kamil Kozar 92eac0434a Make it possible to add multiple files when clicking "add" (#339) nightly-2020-09-17--02-22-29 2020-09-17 01:41:31 +02:00
Daniel Kamil Kozar 2a4489d060 Fix crashes when removing audio/subtitle tracks from the main window (#340)
Indices in both combo boxes must be updated, since an audio track index might
have changed when a subtitle track is removed and vice versa : there is only one
array which holds information about tracks that these combo boxes reference via
the data contained in their items' UserRoles.
2020-09-17 01:36:56 +02:00
jcdr428 c73fb1ef86 Precheck frame depth with multi-slice frames (#338)
The pre-check shall be done on the first slice of pictures only.
Plus the picture counter m_totalFrameNum is set back to zero after pre-check.
nightly-2020-09-16--02-22-48
2020-09-15 22:59:11 +02:00
jcdr428 78cfc4c149 Precheck Frame Depth (#337)
tsMuxer currently sets back the DTS (Decoding Time Stamp) during the muxing if the frame depth (i.e. difference between encoded picture number and decoded picture number) is found >1.
This is wrong: the frame depth should be checked -and the DTS set back- before the muxing commences.

This commits solves this.
nightly-2020-09-13--02-21-33
2020-09-12 22:43:57 +02:00