Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
V
vlc-2-2
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Redmine
Redmine
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Metrics
Environments
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
videolan
vlc-2-2
Commits
ebb944ae
Commit
ebb944ae
authored
Mar 03, 2006
by
Felix Paul Kühne
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
* added a NSTimer to update the statistics every second
parent
35db12d0
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
54 additions
and
44 deletions
+54
-44
modules/gui/macosx/playlistinfo.h
modules/gui/macosx/playlistinfo.h
+2
-4
modules/gui/macosx/playlistinfo.m
modules/gui/macosx/playlistinfo.m
+52
-40
No files found.
modules/gui/macosx/playlistinfo.h
View file @
ebb944ae
...
...
@@ -97,6 +97,7 @@
IBOutlet
id
o_video_decoded_txt
;
playlist_item_t
*
p_item
;
NSTimer
*
o_statUpdateTimer
;
}
-
(
IBAction
)
togglePlaylistInfoPanel
:(
id
)
sender
;
...
...
@@ -108,10 +109,7 @@
-
(
BOOL
)
isItemInPlaylist
:(
playlist_item_t
*
)
p_item
;
-
(
void
)
setMeta
:
(
char
*
)
meta
forLabel
:
(
id
)
theItem
;
-
(
void
)
updateStatistics
;
/*- (void)setIntStat: (int)value forLabel: (id)theItem withFormat: (NSString *)format;
- (void)setFloatStat: (float)value forLabel: (id)theItem withFormat: (NSString *)format;
*/
-
(
void
)
updateStatistics
:
(
NSTimer
*
)
theTimer
;
@end
@interface
VLCInfoTreeItem
:
NSObject
...
...
modules/gui/macosx/playlistinfo.m
View file @
ebb944ae
...
...
@@ -115,6 +115,7 @@
{
if
(
[
o_info_window
isVisible
]
)
{
[
o_statUpdateTimer
invalidate
];
[
o_info_window
orderOut
:
sender
];
}
else
...
...
@@ -128,6 +129,12 @@
p_item
=
p_playlist
->
status
.
p_item
;
vlc_object_release
(
p_playlist
);
}
o_statUpdateTimer
=
[
NSTimer
scheduledTimerWithTimeInterval
:
1
\
target
:
self
selector
:
@selector
(
updateStatistics
:
)
\
userInfo
:
nil
repeats
:
YES
];
[
o_statUpdateTimer
fire
];
[
o_statUpdateTimer
retain
];
[
self
initPanel
:
sender
];
}
}
...
...
@@ -137,7 +144,7 @@
char
*
psz_temp
;
vlc_mutex_lock
(
&
p_item
->
input
.
lock
);
/*fill uri / title / author info */
/*
fill uri / title / author info */
if
(
p_item
->
input
.
psz_uri
)
{
[
o_uri_txt
setStringValue
:
...
...
@@ -179,7 +186,7 @@
[[
VLCInfoTreeItem
rootItem
]
refresh
];
[
o_outline_view
reloadData
];
[
self
updateStatistics
];
[
self
updateStatistics
:
nil
];
[
o_info_window
makeKeyAndOrderFront
:
sender
];
}
...
...
@@ -194,45 +201,50 @@
[
theItem
setStringValue
:
@"-"
];
}
-
(
void
)
updateStatistics
-
(
void
)
updateStatistics
:(
NSTimer
*
)
theTimer
{
vlc_mutex_lock
(
&
p_item
->
input
.
p_stats
->
lock
);
/* input */
[
o_read_bytes_txt
setStringValue
:
[
NSString
stringWithFormat
:
@"%8.0f kB"
,
\
(
float
)(
p_item
->
input
.
p_stats
->
i_read_bytes
)
/
1000
]];
[
o_input_bitrate_txt
setStringValue
:
[
NSString
stringWithFormat
:
@"%6.0f kb/s"
,
\
(
float
)(
p_item
->
input
.
p_stats
->
f_input_bitrate
)
/
1000
]];
[
o_demux_bytes_txt
setStringValue
:
[
NSString
stringWithFormat
:
@"%8.0f kB"
,
\
(
float
)(
p_item
->
input
.
p_stats
->
i_demux_read_bytes
)
/
1000
]];
[
o_demux_bitrate_txt
setStringValue
:
[
NSString
stringWithFormat
:
@"%6.0f kb/s"
,
\
(
float
)(
p_item
->
input
.
p_stats
->
f_demux_bitrate
)
/
1000
]];
/* Video */
[
o_video_decoded_txt
setStringValue
:
[
NSString
stringWithFormat
:
@"%8.0f kB"
,
\
p_item
->
input
.
p_stats
->
i_decoded_video
]];
[
o_displayed_txt
setStringValue
:
[
NSString
stringWithFormat
:
@"%5i"
,
\
p_item
->
input
.
p_stats
->
i_displayed_pictures
]];
[
o_lost_frames_txt
setStringValue
:
[
NSString
stringWithFormat
:
@"%5i"
,
\
p_item
->
input
.
p_stats
->
i_lost_pictures
]];
/* Sout */
[
o_sent_packets_txt
setStringValue
:
[
NSString
stringWithFormat
:
@"%5i"
,
\
p_item
->
input
.
p_stats
->
i_sent_packets
]];
[
o_sent_bytes_txt
setStringValue
:
[
NSString
stringWithFormat
:
@"%6.0f kB"
,
\
(
float
)(
p_item
->
input
.
p_stats
->
i_sent_bytes
)
/
1000
]];
[
o_sent_bitrate_txt
setStringValue
:
[
NSString
stringWithFormat
:
@"%6.0f kb/s"
,
\
(
float
)(
p_item
->
input
.
p_stats
->
f_send_bitrate
*
8
)
*
1000
]];
/* Audio */
[
o_audio_decoded_txt
setStringValue
:
[
NSString
stringWithFormat
:
@"%5i"
,
\
p_item
->
input
.
p_stats
->
i_decoded_audio
]];
[
o_played_abuffers_txt
setStringValue
:
[
NSString
stringWithFormat
:
@"%5i"
,
\
p_item
->
input
.
p_stats
->
i_played_abuffers
]];
[
o_lost_abuffers_txt
setStringValue
:
[
NSString
stringWithFormat
:
@"%5i"
,
\
p_item
->
input
.
p_stats
->
i_lost_abuffers
]];
vlc_mutex_unlock
(
&
p_item
->
input
.
p_stats
->
lock
);
if
(
[
self
isItemInPlaylist
:
p_item
]
)
{
/* we can only do that if there's a valid input around */
vlc_mutex_lock
(
&
p_item
->
input
.
p_stats
->
lock
);
/* input */
[
o_read_bytes_txt
setStringValue
:
[
NSString
stringWithFormat
:
\
@"%8.0f kB"
,
(
float
)(
p_item
->
input
.
p_stats
->
i_read_bytes
)
/
1000
]];
[
o_input_bitrate_txt
setStringValue
:
[
NSString
stringWithFormat
:
\
@"%6.0f kb/s"
,
(
float
)(
p_item
->
input
.
p_stats
->
f_input_bitrate
)
*
8000
]];
[
o_demux_bytes_txt
setStringValue
:
[
NSString
stringWithFormat
:
\
@"%8.0f kB"
,
(
float
)(
p_item
->
input
.
p_stats
->
i_demux_read_bytes
)
/
1000
]];
[
o_demux_bitrate_txt
setStringValue
:
[
NSString
stringWithFormat
:
\
@"%6.0f kb/s"
,
(
float
)(
p_item
->
input
.
p_stats
->
f_demux_bitrate
)
*
8000
]];
/* Video */
[
o_video_decoded_txt
setStringValue
:
[
NSString
stringWithFormat
:
@"%5i"
,
\
p_item
->
input
.
p_stats
->
i_decoded_video
]];
[
o_displayed_txt
setStringValue
:
[
NSString
stringWithFormat
:
@"%5i"
,
\
p_item
->
input
.
p_stats
->
i_displayed_pictures
]];
[
o_lost_frames_txt
setStringValue
:
[
NSString
stringWithFormat
:
@"%5i"
,
\
p_item
->
input
.
p_stats
->
i_lost_pictures
]];
/* Sout */
[
o_sent_packets_txt
setStringValue
:
[
NSString
stringWithFormat
:
@"%5i"
,
\
p_item
->
input
.
p_stats
->
i_sent_packets
]];
[
o_sent_bytes_txt
setStringValue
:
[
NSString
stringWithFormat
:
@"%8.0f kB"
,
\
(
float
)(
p_item
->
input
.
p_stats
->
i_sent_bytes
)
/
1000
]];
[
o_sent_bitrate_txt
setStringValue
:
[
NSString
stringWithFormat
:
\
@"%6.0f kb/s"
,
(
float
)(
p_item
->
input
.
p_stats
->
f_send_bitrate
*
8
)
*
1000
]];
/* Audio */
[
o_audio_decoded_txt
setStringValue
:
[
NSString
stringWithFormat
:
@"%5i"
,
\
p_item
->
input
.
p_stats
->
i_decoded_audio
]];
[
o_played_abuffers_txt
setStringValue
:
[
NSString
stringWithFormat
:
@"%5i"
,
\
p_item
->
input
.
p_stats
->
i_played_abuffers
]];
[
o_lost_abuffers_txt
setStringValue
:
[
NSString
stringWithFormat
:
@"%5i"
,
\
p_item
->
input
.
p_stats
->
i_lost_abuffers
]];
vlc_mutex_unlock
(
&
p_item
->
input
.
p_stats
->
lock
);
}
}
-
(
IBAction
)
infoCancel
:(
id
)
sender
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment