AudioInfo.smali

.class public abstract Lim/tpelyyftgw/messenger/audioinfo/AudioInfo;
.super Ljava/lang/Object;
.source "AudioInfo.java"


# instance fields
.field protected album:Ljava/lang/String;

.field protected albumArtist:Ljava/lang/String;

.field protected artist:Ljava/lang/String;

.field protected brand:Ljava/lang/String;

.field protected comment:Ljava/lang/String;

.field protected compilation:Z

.field protected composer:Ljava/lang/String;

.field protected copyright:Ljava/lang/String;

.field protected cover:Landroid/graphics/Bitmap;

.field protected disc:S

.field protected discs:S

.field protected duration:J

.field protected genre:Ljava/lang/String;

.field protected grouping:Ljava/lang/String;

.field protected lyrics:Ljava/lang/String;

.field protected smallCover:Landroid/graphics/Bitmap;

.field protected title:Ljava/lang/String;

.field protected track:S

.field protected tracks:S

.field protected version:Ljava/lang/String;

.field protected year:S


# direct methods
.method static constructor <clinit>()V
    .registers 1

    return-void
.end method

.method public constructor <init>()V
    .registers 1

    .line 29
    invoke-direct {p0}, Ljava/lang/Object;-><init>()V

    return-void
.end method

.method public static getAudioInfo(Ljava/io/File;)Lim/tpelyyftgw/messenger/audioinfo/AudioInfo;
    .registers 8
    .param p0, "file"    # Ljava/io/File;

    .line 140
    const/16 v0, 0xc

    const/4 v1, 0x0

    :try_start_3
    new-array v0, v0, [B

    .line 141
    .local v0, "header":[B
    new-instance v2, Ljava/io/RandomAccessFile;

    const-string/jumbo v3, "r"

    invoke-direct {v2, p0, v3}, Ljava/io/RandomAccessFile;-><init>(Ljava/io/File;Ljava/lang/String;)V

    .line 142
    .local v2, "randomAccessFile":Ljava/io/RandomAccessFile;
    const/4 v3, 0x0

    const/16 v4, 0x8

    invoke-virtual {v2, v0, v3, v4}, Ljava/io/RandomAccessFile;->readFully([BII)V

    .line 143
    invoke-virtual {v2}, Ljava/io/RandomAccessFile;->close()V

    .line 144
    new-instance v3, Ljava/io/BufferedInputStream;

    new-instance v4, Ljava/io/FileInputStream;

    invoke-direct {v4, p0}, Ljava/io/FileInputStream;-><init>(Ljava/io/File;)V

    invoke-direct {v3, v4}, Ljava/io/BufferedInputStream;-><init>(Ljava/io/InputStream;)V

    .line 145
    .local v3, "input":Ljava/io/InputStream;
    const/4 v4, 0x4

    aget-byte v4, v0, v4

    const/16 v5, 0x66

    if-ne v4, v5, :cond_42

    const/4 v4, 0x5

    aget-byte v4, v0, v4

    const/16 v5, 0x74

    if-ne v4, v5, :cond_42

    const/4 v4, 0x6

    aget-byte v4, v0, v4

    const/16 v5, 0x79

    if-ne v4, v5, :cond_42

    const/4 v4, 0x7

    aget-byte v4, v0, v4

    const/16 v5, 0x70

    if-ne v4, v5, :cond_42

    .line 146
    new-instance v4, Lim/tpelyyftgw/messenger/audioinfo/m4a/M4AInfo;

    invoke-direct {v4, v3}, Lim/tpelyyftgw/messenger/audioinfo/m4a/M4AInfo;-><init>(Ljava/io/InputStream;)V

    return-object v4

    .line 147
    :cond_42
    invoke-virtual {p0}, Ljava/io/File;->getAbsolutePath()Ljava/lang/String;

    move-result-object v4

    const-string v5, "mp3"

    invoke-virtual {v4, v5}, Ljava/lang/String;->endsWith(Ljava/lang/String;)Z

    move-result v4

    if-eqz v4, :cond_58

    .line 148
    new-instance v4, Lim/tpelyyftgw/messenger/audioinfo/mp3/MP3Info;

    invoke-virtual {p0}, Ljava/io/File;->length()J

    move-result-wide v5

    invoke-direct {v4, v3, v5, v6}, Lim/tpelyyftgw/messenger/audioinfo/mp3/MP3Info;-><init>(Ljava/io/InputStream;J)V
    :try_end_57
    .catch Ljava/lang/Exception; {:try_start_3 .. :try_end_57} :catch_59

    return-object v4

    .line 150
    :cond_58
    return-object v1

    .line 152
    .end local v0    # "header":[B
    .end local v2    # "randomAccessFile":Ljava/io/RandomAccessFile;
    .end local v3    # "input":Ljava/io/InputStream;
    :catch_59
    move-exception v0

    .line 153
    .local v0, "e":Ljava/lang/Exception;
    return-object v1
.end method


# virtual methods
.method public getAlbum()Ljava/lang/String;
    .registers 2

    .line 79
    iget-object v0, p0, Lim/tpelyyftgw/messenger/audioinfo/AudioInfo;->album:Ljava/lang/String;

    return-object v0
.end method

.method public getAlbumArtist()Ljava/lang/String;
    .registers 2

    .line 75
    iget-object v0, p0, Lim/tpelyyftgw/messenger/audioinfo/AudioInfo;->albumArtist:Ljava/lang/String;

    return-object v0
.end method

.method public getArtist()Ljava/lang/String;
    .registers 2

    .line 71
    iget-object v0, p0, Lim/tpelyyftgw/messenger/audioinfo/AudioInfo;->artist:Ljava/lang/String;

    return-object v0
.end method

.method public getBrand()Ljava/lang/String;
    .registers 2

    .line 55
    iget-object v0, p0, Lim/tpelyyftgw/messenger/audioinfo/AudioInfo;->brand:Ljava/lang/String;

    return-object v0
.end method

.method public getComment()Ljava/lang/String;
    .registers 2

    .line 91
    iget-object v0, p0, Lim/tpelyyftgw/messenger/audioinfo/AudioInfo;->comment:Ljava/lang/String;

    return-object v0
.end method

.method public getComposer()Ljava/lang/String;
    .registers 2

    .line 115
    iget-object v0, p0, Lim/tpelyyftgw/messenger/audioinfo/AudioInfo;->composer:Ljava/lang/String;

    return-object v0
.end method

.method public getCopyright()Ljava/lang/String;
    .registers 2

    .line 111
    iget-object v0, p0, Lim/tpelyyftgw/messenger/audioinfo/AudioInfo;->copyright:Ljava/lang/String;

    return-object v0
.end method

.method public getCover()Landroid/graphics/Bitmap;
    .registers 2

    .line 131
    iget-object v0, p0, Lim/tpelyyftgw/messenger/audioinfo/AudioInfo;->cover:Landroid/graphics/Bitmap;

    return-object v0
.end method

.method public getDisc()S
    .registers 2

    .line 103
    iget-short v0, p0, Lim/tpelyyftgw/messenger/audioinfo/AudioInfo;->disc:S

    return v0
.end method

.method public getDiscs()S
    .registers 2

    .line 107
    iget-short v0, p0, Lim/tpelyyftgw/messenger/audioinfo/AudioInfo;->discs:S

    return v0
.end method

.method public getDuration()J
    .registers 3

    .line 63
    iget-wide v0, p0, Lim/tpelyyftgw/messenger/audioinfo/AudioInfo;->duration:J

    return-wide v0
.end method

.method public getGenre()Ljava/lang/String;
    .registers 2

    .line 87
    iget-object v0, p0, Lim/tpelyyftgw/messenger/audioinfo/AudioInfo;->genre:Ljava/lang/String;

    return-object v0
.end method

.method public getGrouping()Ljava/lang/String;
    .registers 2

    .line 119
    iget-object v0, p0, Lim/tpelyyftgw/messenger/audioinfo/AudioInfo;->grouping:Ljava/lang/String;

    return-object v0
.end method

.method public getLyrics()Ljava/lang/String;
    .registers 2

    .line 127
    iget-object v0, p0, Lim/tpelyyftgw/messenger/audioinfo/AudioInfo;->lyrics:Ljava/lang/String;

    return-object v0
.end method

.method public getSmallCover()Landroid/graphics/Bitmap;
    .registers 2

    .line 135
    iget-object v0, p0, Lim/tpelyyftgw/messenger/audioinfo/AudioInfo;->smallCover:Landroid/graphics/Bitmap;

    return-object v0
.end method

.method public getTitle()Ljava/lang/String;
    .registers 2

    .line 67
    iget-object v0, p0, Lim/tpelyyftgw/messenger/audioinfo/AudioInfo;->title:Ljava/lang/String;

    return-object v0
.end method

.method public getTrack()S
    .registers 2

    .line 95
    iget-short v0, p0, Lim/tpelyyftgw/messenger/audioinfo/AudioInfo;->track:S

    return v0
.end method

.method public getTracks()S
    .registers 2

    .line 99
    iget-short v0, p0, Lim/tpelyyftgw/messenger/audioinfo/AudioInfo;->tracks:S

    return v0
.end method

.method public getVersion()Ljava/lang/String;
    .registers 2

    .line 59
    iget-object v0, p0, Lim/tpelyyftgw/messenger/audioinfo/AudioInfo;->version:Ljava/lang/String;

    return-object v0
.end method

.method public getYear()S
    .registers 2

    .line 83
    iget-short v0, p0, Lim/tpelyyftgw/messenger/audioinfo/AudioInfo;->year:S

    return v0
.end method

.method public isCompilation()Z
    .registers 2

    .line 123
    iget-boolean v0, p0, Lim/tpelyyftgw/messenger/audioinfo/AudioInfo;->compilation:Z

    return v0
.end method