KyleKun / one_second_diary

Minimalist video diary app.
MIT License
289 stars 59 forks source link

Testing for v1.5 #55

Closed KyleKun closed 1 year ago

KyleKun commented 1 year ago

Hi @alexanderadam!

Could you help us testing the new version, please? Please let us know any issues you face or suggestions you may have. Thanks so much!

https://github.com/KyleKun/one_second_diary/releases/tag/v1.5

alexanderadam commented 1 year ago

Hi @KyleKun, before I install this APK manually: should I backup the videos? Do I keep something in mind before I uninstall the old version? I really don't want to lose anything!

KyleKun commented 1 year ago

Hi @KyleKun, before I install this APK manually: should I backup the videos? Do I keep something in mind before I uninstall the old version? I really don't want to lose anything!

Yes, it's highly recommended you backup your entire videos folder.

No need to unninstall the app, this beta build has a different package name, so it will show as a separate app.

The backup is recommended because every video recorded before this version will be processed to add empty audio and subtitles stream, in other words, the videos will be directly modified. That's needed for compatibility with new recording options.

Let me know if you have any questions and thanks for taking the time to help with testing!

KyleKun commented 1 year ago

As a side note, I created a movie with around 600 videos, it worked fine but took ~20 or 30 minutes.

This is only in the first movie creation run, after the streams were added it gets fast like it was before.

Also, I edited some videos adding subtitles, and not all video players support it completely, I recommend using VLC for smooth playback.

alexanderadam commented 1 year ago

So I readded some clips and now I'm running into an issue with both versions. I can't create a movie because it says that no clips were found (Clips Found: 0 in the Create movie view). But in the calendar view all movies are visible and when I tap on the x days button it refreshes and says 227 videos found!.

So I guess it's checked differently for videos? Any idea what it could be? And I really love the calendar view already! :heart:

KyleKun commented 1 year ago

Hey @alexanderadam , could you attach the logs here pls? They're txt files inside OneSecondDiary/Logs folder

alexanderadam commented 1 year ago

I don't have this directory

alexanderadam commented 1 year ago

I found the issue. One clip was called 2022-10-10 (2).mp4 and caused the issue. Hence this error message is very misleading and this error shouldn't exist in the first place — clips with different names could be ignored, right?

KyleKun commented 1 year ago

I found the issue. One clip was called 2022-10-10 (2).mp4 and caused the issue. Hence this error message is very misleading and this error shouldn't exist in the first place — clips with different names could be ignored, right?

Nice, you're right, I'll add this check! About the logs folder, please close and open the app again. If it's not created and you've given all storage permissions requested, it's a problem too.

alexanderadam commented 1 year ago

Restarting the app helped. It created the directory with an empty log file.

Btw it's difficult to distinguish between the beta and the stable release. Maybe another icon for the next beta would help.

I tried a few things including creating the movie and everything worked perfectly fine so far. 👍

KyleKun commented 1 year ago

I found the issue. One clip was called 2022-10-10 (2).mp4 and caused the issue. Hence this error message is very misleading and this error shouldn't exist in the first place — clips with different names could be ignored, right?

Fixed. Everything ready for F-Droid release too! Next up is the add videos from gallery feature and some slide screens introducing what's new and that should be it for this version :)

alexanderadam commented 1 year ago

Just a tiny update: I love this release so much and can't wait for it to be published regularly.

KyleKun commented 1 year ago

Quick update: gallery feature was integrated but there are a few more improvements I want to make in other parts. Beta 2 should be available this weekend.

KyleKun commented 1 year ago

Hey @alexanderadam , when you can, please help us test the new beta: https://github.com/KyleKun/one_second_diary/releases/tag/v1.5.beta.2 Thanks!!

KyleKun commented 1 year ago

Hi @alexanderadam , did you experience any issues? From my side, I think we should be ready to release :)

alexanderadam commented 1 year ago

@KyleKun, it runs perfect for me 👍 Let's go! 😆

alexanderadam commented 1 year ago

@KyleKun just a detail: it would be nice to be able to play the clip at the calendar view instead of just showing a thumbnail

KyleKun commented 1 year ago

@KyleKun just a detail: it would be nice to be able to play the clip at the calendar view instead of just showing a thumbnail

I'll take a look if this is possible, might possibly run into some issues for creating multiple videoplayer instances but I'll see how it goes.

Btw I think today I will also implement a "fix resolution" routine before releasing, that should allow vertical videos and others (i.e from whatsapp) to be accepted too, automatically adding borders to them to keep aspect ratio.

KyleKun commented 1 year ago

@KyleKun just a detail: it would be nice to be able to play the clip at the calendar view instead of just showing a thumbnail

Hey, just implemented it here.

Portrait is now also supported, along with any other aspect ratios for landscape videos. There's just some extra loading time in recording page I'll try to address, but anyway, I'm uploading the beta 3 today (probably the last one now lol)

KyleKun commented 1 year ago

@alexanderadam please help me test it again if you can 😊 https://github.com/KyleKun/one_second_diary/releases/tag/v1.5.beta.3

alexanderadam commented 1 year ago

I cannot record with beta 3 🫣

KyleKun commented 1 year ago

I cannot record with beta 3 🫣

Can you describe what happens? Also, please send the logs inside OneSecondDiary/Logs

alexanderadam commented 1 year ago

The record button turns grey but other than that, nothing happens.

[INFO] 2023-01-12 21:47:02.531739: [App Started] - Log file created
[INFO] 2023-01-12 21:47:03.480975: [Utils.requestPermission()] - Permission Permission.camera was already granted
[ERROR] 2023-01-12 21:47:03.497808: [CAMERA] - CameraException(error, Attempt to invoke virtual method 'int android.media.EncoderProfiles$VideoProfile.getWidth()' on a null object reference)
Stacktrace: package:one_second_diary_beta_one_point_five/utils/utils.dart 53 in Utils.logError
[INFO] 2023-01-12 21:47:04.586747: [CAMERA] - Started recording video
[WARNING] 2023-01-12 21:47:04.586837: [CAMERA] - Controller is not initialized
[INFO] 2023-01-12 21:47:07.016943: [Utils.requestPermission()] - Permission Permission.camera was already granted
[ERROR] 2023-01-12 21:47:07.024250: [CAMERA] - CameraException(error, Attempt to invoke virtual method 'int android.media.EncoderProfiles$VideoProfile.getWidth()' on a null object reference)
Stacktrace: package:one_second_diary_beta_one_point_five/utils/utils.dart 53 in Utils.logError
[INFO] 2023-01-12 21:47:10.492434: [CAMERA] - Started recording video
[WARNING] 2023-01-12 21:47:10.492842: [CAMERA] - Controller is not initialized
KyleKun commented 1 year ago

The record button turns grey but other than that, nothing happens.

[INFO] 2023-01-12 21:47:02.531739: [App Started] - Log file created
[INFO] 2023-01-12 21:47:03.480975: [Utils.requestPermission()] - Permission Permission.camera was already granted
[ERROR] 2023-01-12 21:47:03.497808: [CAMERA] - CameraException(error, Attempt to invoke virtual method 'int android.media.EncoderProfiles$VideoProfile.getWidth()' on a null object reference)
Stacktrace: package:one_second_diary_beta_one_point_five/utils/utils.dart 53 in Utils.logError
[INFO] 2023-01-12 21:47:04.586747: [CAMERA] - Started recording video
[WARNING] 2023-01-12 21:47:04.586837: [CAMERA] - Controller is not initialized
[INFO] 2023-01-12 21:47:07.016943: [Utils.requestPermission()] - Permission Permission.camera was already granted
[ERROR] 2023-01-12 21:47:07.024250: [CAMERA] - CameraException(error, Attempt to invoke virtual method 'int android.media.EncoderProfiles$VideoProfile.getWidth()' on a null object reference)
Stacktrace: package:one_second_diary_beta_one_point_five/utils/utils.dart 53 in Utils.logError
[INFO] 2023-01-12 21:47:10.492434: [CAMERA] - Started recording video
[WARNING] 2023-01-12 21:47:10.492842: [CAMERA] - Controller is not initialized

Investigating right now... Just to complement if needed, what's the device model and android version?

KyleKun commented 1 year ago

Found the reason -> https://github.com/flutter/flutter/issues/109769 Will use the workaround mentioned in the comments and send you an apk. Edit: @alexanderadam , here it is :) https://github.com/KyleKun/one_second_diary/releases/download/v1.5.beta.3/OneSecondDiary-v1.5.beta.3.apk

alexanderadam commented 1 year ago

Found the reason -> https://github.com/flutter/flutter/issues/109769 Will use the workaround mentioned in the comments and send you an apk. Edit: @alexanderadam , here it is :) https://github.com/KyleKun/one_second_diary/releases/download/v1.5.beta.3/OneSecondDiary-v1.5.beta.3.apk

Thank you for the fast fix. Wouldn't that be beta 4 then? 😄

KyleKun commented 1 year ago

Found the reason -> flutter/flutter#109769 Will use the workaround mentioned in the comments and send you an apk. Edit: @alexanderadam , here it is :) https://github.com/KyleKun/one_second_diary/releases/download/v1.5.beta.3/OneSecondDiary-v1.5.beta.3.apk

Thank you for the fast fix. Wouldn't that be beta 4 then? 😄

Since it was just a small fix I updated beta 3 to avoid a new release on here :)

KyleKun commented 1 year ago

Just caught another issue with profiles, seems like the release won't be today 😂

alexanderadam commented 1 year ago

Now it seems to be the same error but it suggests me now writing you in email about the error.

[INFO] 2023-01-12 23:10:19.750701: [App Started] - Log file created
[INFO] 2023-01-12 23:10:21.100179: [Utils.requestPermission()] - Permission Permission.camera was already granted
[ERROR] 2023-01-12 23:10:21.113430: [CAMERA] - failed to initialize camera: CameraException(error, Attempt to invoke virtual method 'int android.media.EncoderProfiles$VideoProfile.getWidth()' on a null object reference)
Stacktrace: package:one_second_diary_beta_one_point_five/utils/utils.dart 53 in Utils.logError
[INFO] 2023-01-12 23:10:22.661100: [CustomDialog] - sending logs to developer...
[INFO] 2023-01-12 23:10:22.662290: [CustomDialog] - logsDirectory: /storage/emulated/0/OneSecondDiary/Logs/
[INFO] 2023-01-12 23:10:22.673459: [CustomDialog] - Zip file created: /data/user/0/com.kylekun.one_second_diary_beta_one_point_five/app_flutter/logs.zip
KyleKun commented 1 year ago

oh crap, guess I'll have to target android 12 API in manifest then.

alexanderadam commented 1 year ago

@KyleKun what changed from beta 2 to beta 3 in this regards?

KyleKun commented 1 year ago

@KyleKun what changed from beta 2 to beta 3 in this regards?

Camera package dependency. I updated my custom fork to the latest stable version, since it was needed to fix orientation and zoom handling.

That issue happens only for Android 13, where a value they request for recording returns null. I tried applying the PR with fix that is open in Flutter repo, but since it didn't work, targeting Android 12 in manifest should force that method to use the older version of grabbing that value and should fix the issue.

I think I also managed to fix the problem with profiles and another one I found about subtitles, will upload a new version later today!

KyleKun commented 1 year ago

Hi @alexanderadam , I updated it, could you please check? https://github.com/KyleKun/one_second_diary/releases/download/v1.5.beta.3/oldOneSecondDiary-v1.5.beta.3.apk

If it works, can you please check if added subtitles are saved correctly? And also uploading from gallery, if subtitles inputted are saved and displayed on the calendar view as edit subtitles.

alexanderadam commented 1 year ago

@KyleKun it seems to be working 🥳

alexanderadam commented 1 year ago

Sorry, the ratio of the video seems to be wrong 🫣

KyleKun commented 1 year ago

Sorry, the ratio of the video seems to be wrong 🫣

Hey, good thing I didn't publish the update yet then xD Could you explain a bit more? Ratio = Aspect Ratio? Is it recording, uploading from gallery or creating a movie?

alexanderadam commented 1 year ago

Sorry, the ratio of the video seems to be wrong 🫣

Hey, good thing I didn't publish the update yet then xD Could you explain a bit more? Ratio = Aspect Ratio? Is it recording, uploading from gallery or creating a movie?

Sorry, it's the aspect ratio when recording.

The record video looks okay I guess. It's just what you see while recording.

KyleKun commented 1 year ago

Sorry, the ratio of the video seems to be wrong 🫣

Hey, good thing I didn't publish the update yet then xD Could you explain a bit more? Ratio = Aspect Ratio? Is it recording, uploading from gallery or creating a movie?

Sorry, it's the aspect ratio when recording.

The record video looks okay I guess. It's just what you see while recording.

Oh, it's the camera preview then. Is it just in portrait or landscape or both? Also, how weird does it look? It's normal over here so I presume it must be related to that Android 13 problem.

alexanderadam commented 1 year ago

It definitely is the case in landscape mode. I cannot test right now, I think. Because I recorded a clip today already. Or will it only be deleted afterwards?

KyleKun commented 1 year ago

It definitely is the case in landscape mode. I cannot test right now, I think. Because I recorded a clip today already. Or will it only be deleted afterwards?

It's only deleted if you save the new recording in the save video page, you can test it without saving 😊. Alternatively, you can switch profiles too.

alexanderadam commented 1 year ago

Of course, I forgot about the profiles. :laughing: I just tested it again and it doesn't matter whether it's portrait or landscape.

KyleKun commented 1 year ago

Of course, I forgot about the profiles. :laughing: I just tested it again and it doesn't matter whether it's portrait or landscape.

Could you provide a short screen recording or a screenshot?

alexanderadam commented 1 year ago

Apparently I can't do a screenshot in this mode?

But in portrait it's simply to long/narrow and in landscape mode it's too wide.

KyleKun commented 1 year ago

Apparently I can't do a screenshot in this mode?

But in portrait it's simply to long/narrow and in landscape mode it's too wide.

What's your screen dimensions or device model?

alexanderadam commented 1 year ago

It's the Samsung S20FE 5G (2400x1080px / 407 ppi)

KyleKun commented 1 year ago

It's the Samsung S20FE 5G (2400x1080px / 407 ppi)

I really can't reproduce it on Samsung's S10 and S22. Does it start wrong right when you enter the recording screen or it's just after you press the recording button? Also, does the behavior change if enable/disable device auto orientation setting?

Edit: I think I got it, is it a subtle increase in the size? For example, when I use front camera my face does seem a little longer in the preview when compared to the default camera app.

KyleKun commented 1 year ago

@alexanderadam if that was the case, I just pushed a commit that should fix it, it does not expand the preview to the entire screen anymore, being equal the aspect ratio of v1.1.

alexanderadam commented 1 year ago

Is this commit in a release that I could test?

KyleKun commented 1 year ago

Is this commit in a release that I could test?

Will (probably) be later today!

alexanderadam commented 1 year ago

@KyleKun you wrote

Increased video recording quality to 1080p

So does that mean that the resulting video will always be 1080p regardless what the source clips have? So that the source files will be upscaled a bit of they were lower before?

KyleKun commented 1 year ago

@KyleKun you wrote

Increased video recording quality to 1080p

So does that mean that the resulting video will always be 1080p regardless what the source clips have? So that the source files will be upscaled a bit of they were lower before?

Yes, they were 720p before (HD), the videos and movies are now 1080p. From my tests, I saw no difference in quality upscaling it just this little bit.