Commit graph

3938 commits

Author SHA1 Message Date
yausername
cad812c1b7 fix empty author endpoint 2019-03-23 00:22:59 +05:30
Tobias Groza
9c377fba25 Merge branch 'dev' into directOnBackground 2019-03-12 13:36:14 +01:00
Robin
76cfb80335 Merge remote-tracking branch 'upstream/dev' into directOnBackground 2019-03-08 23:02:47 +01:00
Robin
11fd9eafd7 Directplay on Background 2019-03-08 22:52:17 +01:00
Robin
eaa692801e Merge remote-tracking branch 'upstream/dev' into exoplayerupdate 2019-03-07 16:06:02 +01:00
Tobias Groza
2fdf22b26b Merge branch 'dev' into dev 2019-03-07 15:20:42 +01:00
Robin
b2d3879610 Merge branch 'exoplayerupdate' of https://github.com/Redirion/NewPipe into exoplayerupdate 2019-03-06 09:38:17 +01:00
Robin
924b16c9ef Fix for wrong case after language normalization 2019-03-06 09:37:55 +01:00
Redirion
72a82a31f2 Merge branch 'dev' into exoplayerupdate 2019-03-05 21:44:27 +01:00
Tobias Groza
bd8f7566a0 Merge branch 'dev' into Cleanup 2019-03-05 21:30:48 +01:00
Tobias Groza
c8ed67f8be Update app/src/main/java/org/schabi/newpipe/player/BackgroundPlayer.java
Co-Authored-By: Redirion <redirion@web.de>
2019-03-05 20:57:05 +01:00
Robin
b84c243445 Removed unused import 2019-03-05 19:54:37 +01:00
Robin
86c1328adf NOTE for legacy version: Removed Lint markers and completely dropped Jelly Bean workarounds 2019-03-05 19:48:39 +01:00
Robin
63e02fae7a Update ExoPlayer to 2.9.6, including httook dependency and deprecations 2019-03-05 18:05:44 +01:00
Robin
ed1746c9f8 delete unused files 2019-03-05 18:01:11 +01:00
Redirion
694688cd85 Merge branch 'dev' into patch-1 2019-03-05 17:57:52 +01:00
Redirion
38d7dc7140 Improved performance of getTimeString
This pull requests complements pull request  #2178 by reducing general computational time for the method getTimeString.

On my local machine (Desktop PC with Java) my tests with a sample size of 10000 calls to the method with param 86400001 showed a performance improvement of about 50%.

See sample code below to reproduce:

    private static final StringBuilder stringBuilder = new StringBuilder();
    private static final Formatter stringFormatter = new Formatter(stringBuilder, Locale.getDefault());
    
    public static String getTimeString(int milliSeconds) {
        int seconds = (milliSeconds % 60000) / 1000;
        int minutes = (milliSeconds % 3600000) / 60000;
        int hours = (milliSeconds % 86400000) / 3600000;
        int days = (milliSeconds % (86400000 * 7)) / 86400000;

        stringBuilder.setLength(0);
        return days > 0 ? stringFormatter.format("%d:%02d:%02d:%02d", days, hours, minutes, seconds).toString()
                : hours > 0 ? stringFormatter.format("%d:%02d:%02d", hours, minutes, seconds).toString()
                : stringFormatter.format("%02d:%02d", minutes, seconds).toString();
    }
    
    public static String getTimeStringL(int milliSeconds) {
        long seconds = (milliSeconds % 60000L) / 1000L;
        long minutes = (milliSeconds % 3600000L) / 60000L;
        long hours = (milliSeconds % 86400000L) / 3600000L;
        long days = (milliSeconds % (86400000L * 7L)) / 86400000L;

        stringBuilder.setLength(0);
        return days > 0 ? stringFormatter.format("%d:%02d:%02d:%02d", days, hours, minutes, seconds).toString()
                : hours > 0 ? stringFormatter.format("%d:%02d:%02d", hours, minutes, seconds).toString()
                : stringFormatter.format("%02d:%02d", minutes, seconds).toString();
    }
    
	public static void main(String[] args) throws Exception {
		final int SAMPLE_SIZE = 25000;
		long[] results = new long[SAMPLE_SIZE];
		for(int i = 0; i < SAMPLE_SIZE; i++) {
			long now = System.nanoTime();
			getTimeString(86400001);
			results[i] = System.nanoTime() - now;
		}
		long sum = 0;
		for(int i = 0; i < SAMPLE_SIZE; i++) {
			sum += results[i];
		}
		System.out.println("Average execution time: " + (sum/SAMPLE_SIZE));
		results = new long[SAMPLE_SIZE];
		for(int i = 0; i < SAMPLE_SIZE; i++) {
			long now = System.nanoTime();
			getTimeStringL(86400001);
			results[i] = System.nanoTime() - now;
		}
		sum = 0;
		for(int i = 0; i < SAMPLE_SIZE; i++) {
			sum += results[i];
		}
		System.out.println("Average execution time: " + (sum/SAMPLE_SIZE));
2019-03-04 15:45:59 +01:00
Redirion
100197d1a9 Cache duration String to improve performance
In VideoPlayer the Duration String is cached effectively by setting it to the playbackSeekBar. As the playbackSeekBar doesn't exist in BackgroundPlayer, using two addition variables will reduce performance impact of notification updates by almost 50% and thus perform similar to VideoPlayer.

This addresses issue #2170
2019-03-04 10:24:08 +01:00
Christian Schabesberger
34e0188f7e Merge branch 'dev' into enqueue-playlist 2019-03-03 20:53:17 +01:00
Christian Schabesberger
b6234dd9d2 Merge branch 'dev' into enqueue-playlist 2019-03-03 20:50:00 +01:00
Christian Schabesberger
7d7b18ec5d Merge branch 'dev' into commentSizeAndLinks 2019-03-03 20:46:03 +01:00
Ritvik Saraf
a00cc3370d fixed scroll w/ comments and related streams disabled 2019-03-03 18:20:15 +05:30
Ritvik Saraf
7b66f33a3d updated extractor 2019-03-03 04:34:50 +05:30
Ritvik Saraf
fe76b4db21 Merge remote-tracking branch 'upstream/dev' into commentSizeAndLinks 2019-03-03 04:32:19 +05:30
Ritvik Saraf
094d06524f handling timestamp links in comments 2019-03-02 05:12:06 +05:30
Christian Schabesberger
29cffcd716 Merge branch 'master' into dev 2019-03-01 09:53:43 +01:00
Ritvik Saraf
878891bcef make links in comments clickable, increase text size 2019-03-01 13:28:32 +05:30
Redirion
eb99da971c Update CheckForNewAppVersionTask.java 2019-02-26 19:33:01 +01:00
Redirion
4138f94bb3 Fixed Asynctask being executed when it shouldn't
#1 check if cancel was called in onPrepare
#2 if we currently don't have a Connection, don't show crash report dialogue to user
2019-02-26 19:23:54 +01:00
Christian Schabesberger
c8b909b56b fix brake when selecting a mediaccc channel form subscription page 2019-02-25 12:24:48 +01:00
Christian Schabesberger
abcb34fb13 move on to version 0.16.0 2019-02-24 22:52:07 +01:00
Christian Schabesberger
5a1ace2e07 merge weblate 2019-02-24 22:51:08 +01:00
Christian Schabesberger
d55c2c91ce Merge branch 'dev' into patch1_ui 2019-02-24 22:27:06 +01:00
Christian Schabesberger
538f636dbd Merge branch 'dev' into commentsAndRelatedUx 2019-02-24 22:19:47 +01:00
Christian Schabesberger
febfd7cc35 Merge branch 'dev' into patch1_ui 2019-02-24 22:18:06 +01:00
Christian Schabesberger
c5c67c3da3 Merge branch 'dev' into commentsAndRelatedUx 2019-02-24 22:17:24 +01:00
Christian Schabesberger
090934b00f Merge branch 'dev' into fix_leak 2019-02-24 22:12:46 +01:00
Christian Schabesberger
0adb9bb330 fix invalid channel url for commends 2019-02-24 22:10:16 +01:00
Vasiliy
c174bc77f0 Fix AudioManager memory leak 2019-02-24 10:51:30 +02:00
Nathan Follens
16bf315e2a Translated using Weblate (Flemish)
Currently translated at 100.0% (443 of 443 strings)
2019-02-24 06:18:27 +01:00
Nathan Follens
6716d8eff4 Translated using Weblate (Dutch)
Currently translated at 100.0% (443 of 443 strings)
2019-02-24 06:18:27 +01:00
Ritvik Saraf
bde735dddc added top padding for comments and related videos 2019-02-24 02:21:11 +05:30
Vasiliy
b5c4db7edd Merge branch 'dev' into patch1_ui 2019-02-23 13:18:14 +02:00
Ritvik Saraf
2234d8c289 Merge remote-tracking branch 'origin/dev' into dev 2019-02-20 05:29:34 +05:30
Ritvik Saraf
12464874a3 updated extractor, fixed settings padding 2019-02-20 05:24:33 +05:30
Hosted Weblate
75ee04e371 Merge branch 'origin/dev' into Weblate. 2019-02-19 19:18:29 +01:00
84436
031547907f Translated using Weblate (Vietnamese)
Currently translated at 99.3% (440 of 443 strings)
2019-02-19 19:18:26 +01:00
Ali Demirtas
36c2f4dcaf Translated using Weblate (Turkish)
Currently translated at 100.0% (443 of 443 strings)
2019-02-19 19:18:12 +01:00
srkrishna
c02d65958a Translated using Weblate (Tamil)
Currently translated at 34.5% (153 of 443 strings)
2019-02-19 19:18:12 +01:00
Christian Schabesberger
5f5c7575d0 Merge branch 'dev' into dev 2019-02-19 17:35:49 +01:00