-
Notifications
You must be signed in to change notification settings - Fork 500
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Feature request: provide a better info data #118
Comments
Sounds straightforward. A pull request could be useful. |
My C/C++ kung fu isn't strong enough for the task unfortunately :) If nobody else is able to take care of this, I might be able to put one of our guys on this down the road. By the way, if we could add another flag for JSON-output, it would make it even easier to parse and make it even more awesome. |
Johannes Baiter has done some decoding of the current information here if it helps: https://github.com/jbaiter/pyomxplayer/blob/master/pyomxplayer.py The decoding fails if the track content is not straightforward.. I use the status in Pi Presents and TBOplayer but am happy to modify them. I would welcome some better handshaking messages, for example messages when Omxplayer starts playing, when it finishes naturally and when it finishes due to a quit etc. |
+1. That would be very helpful for Screenly too. |
I can give it a stab. Do you have a desired output "mock up" maybe.. or will it be enough to print out the current information split into several lines instead of just one? |
@hinxx ffmpeg/ffprobe output looks like
Not sure the creation_time lines are useful, but the duration and Stream#n seem useful. |
I have crafted something like this, ideas taken from ffprobe, a teaser:
|
Looks good to me. I assume the duration is in seconds? Anyways, either way works for me when I parse it, but I think the ffmpeg one is more useful. |
Yes, I think duration is in seconds, same as length in old info output. You mean like hh:mm:ss time display instead of just seconds? I output of the ffprobe I looked at shows only this:
|
@hinxx |
👍 Here's the unclean diff (I can clean it up and add the hh:mm:ss output after the weekend) for the impatient: https://docs.google.com/file/d/0B6ER6ItJU4ePZG1pdFNCRXoxT28/edit?usp=sharing Binary built ton the RPI: https://docs.google.com/file/d/0B6ER6ItJU4ePd3ZxcjdXbGpJOGs/edit?usp=sharing Enjoy the weekend! |
If the track format is non-standard omxplayer outputs a text narrative, example here: and here: This tends to break parsers. Just wondered whether you had taken this into account. Maybe just precede and non-standard text with text : |
I've put together some ideas about improving handshaking for discusion and also in the hope that Hinko might implement them for us :) My C++ is non-existent but I will help with testing. Aims:
It appears that omxplayer can be in one of three states:
Note: The pause control can be sent immediately after the omxplayer command.
suggested protocol: An embellishment of this might be to return the reason for the finishing -
SYNTAX
|
@KenT2 Anyhow, I already had an idea for adding more generic interface for controlling omxplayer - maybe through Unix domain socket or TCP/IP socket. IMHO this approach would solve the issue of controlling and retrieving various information from the omxplayer process - IOW no more expect and tedious parsing of the ever-changing textual information by the "client" applications.. |
Here's is a cleaned up version of the diff that implements desired info output.
PS.: hope the format is appropriate. |
@hinxx |
Hi guys,
I just wanted to throw in a feature request. I know there's already an option for dumping information from a stream using the i / --info option.
However, it's not very readable nor conveniently parseable.
Currently, it looks something like this:
Now, it does dump all information that I would like, with the exception of the duration and the audio codec. My request however is to dump it in a more pretty fashion that would enable easier parsing, much like ffprobe.
I'm thinking more something along the lines of a colon separated list:
The reason I want this is to be able to utilize the output in Screenly.
The text was updated successfully, but these errors were encountered: