Skip to content

Commit 72dcbe1

Browse files
authored
Version 5.7.4 (#583)
* Fixing #578 Missing code signing to FastFlix exec inside of the installer (thanks to Sam Katakouzinos) * Fixing #579 Missing Infos and no Mouse-Over info in Subs-Panel since 5.7 (thanks to GeZorTenPlotZ) * Fixing #580 No Downmix key error on profile save (thanks to Hankuu) * Fixing #581 Fastflix could not recognize hevc video containing hdr10plus metadata with recent ffmpeg build (thanks to alpha-0)
1 parent 5c47d8d commit 72dcbe1

File tree

11 files changed

+36
-12
lines changed

11 files changed

+36
-12
lines changed

.github/workflows/build.yaml

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -107,6 +107,16 @@ jobs:
107107
shell: cmd
108108
run: pyinstaller FastFlix_Windows_Installer.spec
109109

110+
- uses: skymatic/code-sign-action@v1
111+
with:
112+
certificate: '${{ secrets.CODE_CERT_B64 }}'
113+
password: '${{ secrets.CODE_CERT_PASS }}'
114+
certificatesha1: '${{ secrets.CODE_CERT_THUMB }}'
115+
description: 'FastFlix'
116+
timestampUrl: 'http://timestamp.sectigo.com'
117+
folder: 'dist\FastFlix'
118+
recursive: false
119+
110120
- name: Package installer
111121
shell: cmd
112122
run: |

CHANGES

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,12 @@
11
# Changelog
22

3+
## Version 5.7.4
4+
5+
* Fixing #579 Missing Infos and no Mouse-Over info in Subs-Panel since 5.7 (thanks to GeZorTenPlotZ)
6+
* Fixing #578 Missing code signing to FastFlix exec inside of the installer (thanks to Sam Katakouzinos)
7+
* Fixing #580 No Downmix key error on profile save (thanks to Hankuu)
8+
* Fixing #581 Fastflix could not recognize hevc video containing hdr10plus metadata with recent ffmpeg build (thanks to alpha-0)
9+
310
## Version 5.7.3
411

512
* Fixing #574 Downmix audio channels not working (thanks to eikixsh)

fastflix/encoders/common/audio.py

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -64,15 +64,16 @@ def build_audio(audio_tracks, audio_file_index=0):
6464
command_list.append(f"-c:{track.outdex} copy")
6565
elif track.conversion_codec:
6666
try:
67-
cl = track.downmix if track.downmix else track.raw_info.channel_layout
68-
except AssertionError:
67+
cl = track.downmix if track.downmix and track.downmix != "No Downmix" else track.raw_info.channel_layout
68+
except (AssertionError, KeyError):
6969
cl = "stereo"
70+
7071
downmix = (
7172
f"-ac:{track.outdex} {channel_list[cl]} -filter:{track.outdex} aformat=channel_layouts={cl}"
72-
if track.downmix
73+
if track.downmix and track.downmix != "No Downmix"
7374
else ""
7475
)
75-
channel_layout = f'-filter:{track.outdex} aformat=channel_layouts="{track.raw_info.channel_layout}"'
76+
channel_layout = f'-filter:{track.outdex} aformat=channel_layouts="{channel_list[cl]}"'
7677

7778
bitrate = ""
7879
if track.conversion_codec not in lossless:

fastflix/encoders/common/encc_helpers.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -117,7 +117,9 @@ def build_audio(audio_tracks: list[AudioTrack], audio_streams):
117117
if not track.conversion_codec or track.conversion_codec == "none":
118118
copies.append(str(audio_id))
119119
elif track.conversion_codec:
120-
downmix = f"--audio-stream {audio_id}?:{track.downmix}" if track.downmix else ""
120+
downmix = (
121+
f"--audio-stream {audio_id}?:{track.downmix}" if track.downmix and track.downmix != "No Downmix" else ""
122+
)
121123
bitrate = ""
122124
if track.conversion_codec not in lossless:
123125
if track.conversion_bitrate:

fastflix/flix.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -603,7 +603,7 @@ def detect_hdr10_plus(app: FastFlixApp, config: Config, **_):
603603
"panic",
604604
"-c:v",
605605
"copy",
606-
"-vbsf",
606+
"-bsf:v",
607607
"hevc_mp4toannexb",
608608
"-f",
609609
"hevc",

fastflix/models/encode.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ class SubtitleTrack(BaseModel):
3636
dispositions: dict = Field(default_factory=dict)
3737
enabled: bool = True
3838
long_name: str = ""
39+
raw_info: Optional[Union[dict, Box]] = None
3940

4041

4142
class AttachmentTrack(BaseModel):

fastflix/version.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
#!/usr/bin/env python
22
# -*- coding: utf-8 -*-
3-
__version__ = "5.7.3"
3+
__version__ = "5.7.4"
44
__author__ = "Chris Griffith"

fastflix/widgets/background_tasks.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -129,7 +129,7 @@ def run(self):
129129
f"0:{track}",
130130
"-c:v",
131131
"copy",
132-
"-vbsf",
132+
"-bsf:v",
133133
"hevc_mp4toannexb",
134134
"-f",
135135
"hevc",

fastflix/widgets/panels/subtitle_panel.py

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -100,7 +100,7 @@ def __init__(self, app, parent, index, enabled=True, first=False):
100100
# self.widgets.disposition.setCurrentIndex(dispositions.index("forced"))
101101

102102
self.setFixedHeight(60)
103-
# self.widgets.title.setToolTip(self.subtitle.to_yaml())
103+
self.widgets.title.setToolTip(sub_track.raw_info.to_yaml())
104104
self.widgets.burn_in.setToolTip(
105105
f"""{t("Overlay this subtitle track onto the video during conversion.")}\n
106106
{t("Please make sure seek method is set to exact")}.\n
@@ -308,15 +308,18 @@ def new_source(self):
308308
audio_end = len(self.app.fastflix.current_video.audio_tracks)
309309
for index, track in enumerate(self.app.fastflix.current_video.streams.subtitle):
310310
enabled = self.lang_match(track)
311+
subtitle_type = subtitle_types.get(track.get("codec_name", "text"), "text")
311312
self.app.fastflix.current_video.subtitle_tracks.append(
312313
SubtitleTrack(
313314
index=track.index,
314315
outdex=audio_end + index + 1,
315316
dispositions={k: bool(v) for k, v in track.disposition.items()},
316317
burn_in=False,
317318
language=track.get("tags", {}).get("language", ""),
318-
subtitle_type=subtitle_types.get(track.get("codec_name", "text"), "text"),
319+
subtitle_type=subtitle_type,
319320
enabled=enabled,
321+
long_name=track.get("codec_long_name", f"{t('Subtitle Type')}:{subtitle_type}"),
322+
raw_info=track,
320323
)
321324
)
322325

fastflix/widgets/windows/hdr10plus_inject.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -135,7 +135,7 @@ def prep_command(self):
135135

136136
command = (
137137
f'{self.app.fastflix.config.ffmpeg} -loglevel panic -i "{self.movie_file.text()}" '
138-
f'-map 0:{self.selected_stream["index"]} -c:v copy -vbsf hevc_mp4toannexb -f hevc - | '
138+
f'-map 0:{self.selected_stream["index"]} -c:v copy -bsf:v hevc_mp4toannexb -f hevc - | '
139139
f"{self.app.fastflix.config.hdr10plus_parser} inject -i - -j {self.hdr10p_file.text()} -o - | "
140140
f'{self.app.fastflix.config.ffmpeg} -loglevel panic -i - -i {self.movie_file.text()} -map 0:0 -c:0 copy -map 1:a -map 1:s -map 1:d -c:1 copy "{self.output_file.text()}"'
141141
)

0 commit comments

Comments
 (0)